491 Commits

Author SHA1 Message Date
semantic-release-bot
a466c0f62d chore(release): 8.0.4 [skip ci]
## [8.0.4](https://github.com/react-native-community/react-native-webview/compare/v8.0.3...v8.0.4) (2020-01-20)

### Bug Fixes

* **iOS:** Meta method 'UIScrollViewContentInsetAdjustmentBehavior:' conflict warning ([e6edc6d](https://github.com/react-native-community/react-native-webview/commit/e6edc6d)), closes [/github.com/facebook/react-native/blob/master/React/Views/ScrollView/RCTScrollViewManager.m#L40](https://github.com//github.com/facebook/react-native/blob/master/React/Views/ScrollView/RCTScrollViewManager.m/issues/L40)
2020-01-20 04:10:24 +00:00
Tommy Nguyen
e6edc6dc73 fix(iOS): Meta method 'UIScrollViewContentInsetAdjustmentBehavior:' conflict warning
This converter is already defined in
[RCTScrollViewManager.m](https://github.com/facebook/react-native/blob/master/React/Views/ScrollView/RCTScrollViewManager.m#L40).

Redefining it in react-native-webview can cause undefined behaviour when
used. Since ScrollView is unlikely to go away, we can take a dependency on it.

All current tests should pass.

When building a React Native app with `react-native-webview`, the following
warning can be seen in the build logs:

```
Meta method 'UIScrollViewContentInsetAdjustmentBehavior:' in category from /~/Library/Developer/Xcode/DerivedData/App-geojljebaazfrrgvxfkjjpiwmdlg/Build/Products/Debug-iphonesimulator/React-Core/libReact-Core.a(RCTScrollViewManager.o) conflicts with same method from another category
```

The warning should go away after removing the offending function.

Co-authored-by: Jason Safaiyeh <safaiyeh@protonmail.com>
2020-01-19 20:07:35 -08:00
Jesse Katsumata
3a9218031f chore(example): Added example app 2020-01-16 14:49:10 -08:00
Jamie Birch
5e8b4d5c2b chore(iOS): Extract wkWebViewConfig setup to setUpWkWebViewConfig function 2020-01-07 22:27:53 -08:00
semantic-release-bot
f0cb28ff9a chore(release): 8.0.3 [skip ci]
## [8.0.3](https://github.com/react-native-community/react-native-webview/compare/v8.0.2...v8.0.3) (2020-01-08)

### Bug Fixes

* **whitelisted origins:** Prevent handling of un-whitelisted URLs ([0442126](https://github.com/react-native-community/react-native-webview/commit/0442126))
2020-01-08 01:21:14 +00:00
aarondail
0442126595 fix(whitelisted origins): Prevent handling of un-whitelisted URLs
* Preventing an unhandled promise rejection when: a URL is loaded by the WebView, but the URL isn't in the origin whitelist, so it is handed off to the OS to handle by calling Linking.openURL(), but Linking.openURL has an error.  The code wasn't catching the error, so this would result in an unhandled promise rejection. Now the error is being caught.

* Fixing a problem where a URL is handled to the OS to deal with, via Linking.openURL, and also loaded in the WebView by making those cases mutually exclusive (they weren't previously).  In more detail: when a URL is loaded by the WebView that isn't in the origin whitelist it is handled off to the OS to handle by calling Linking.openURL.  But, if the onShouldStartLoadWithRequest prop is set, then that function would also be called, and then that would determine whether the URL should be loaded.  This can result in a situation where the URL is passed to Linking.openURL and onShouldStartLoadWithRequest returns true so it is also loaded in the WebView.  The client can fix this by duplicating the origin whitelist logic in their onShouldStartLoadWithRequest of course, but this change makes it so they don't have to.

Co-authored-by: Jason Safaiyeh <safaiyeh@protonmail.com>
2020-01-07 17:18:43 -08:00
Jesse Katsumata
13ae8c9661 chore(README): Lean Core badge
* docs: add Lean core badge

* docs: adjust badge style
2020-01-06 17:34:15 -08:00
dependabot[bot]
07a87131dc chore(deps): bump npm from 6.11.3 to 6.13.4 (#1079)
Bumps [npm](https://github.com/npm/cli) from 6.11.3 to 6.13.4.
- [Release notes](https://github.com/npm/cli/releases)
- [Changelog](https://github.com/npm/cli/blob/latest/CHANGELOG.md)
- [Commits](https://github.com/npm/cli/compare/v6.11.3...v6.13.4)

Signed-off-by: dependabot[bot] <support@github.com>
2019-12-27 11:54:35 +01:00
semantic-release-bot
c4f8a74763 chore(release): 8.0.2 [skip ci]
## [8.0.2](https://github.com/react-native-community/react-native-webview/compare/v8.0.1...v8.0.2) (2019-12-27)

### Bug Fixes

* **iOS:** WKWebView RetainCycle ([#1096](https://github.com/react-native-community/react-native-webview/issues/1096)) ([4f4644f](https://github.com/react-native-community/react-native-webview/commit/4f4644f))
2019-12-27 10:42:43 +00:00
Jason Safaiyeh
8a9836c703 chore(docs): Add 8.0.0 to Breaking History on README (#1085) 2019-12-27 11:40:37 +01:00
sunzhongliang
4f4644ffd8 fix(iOS): WKWebView RetainCycle (#1096) 2019-12-27 11:39:53 +01:00
semantic-release-bot
7ba1bc5129 chore(release): 8.0.1 [skip ci]
## [8.0.1](https://github.com/react-native-community/react-native-webview/compare/v8.0.0...v8.0.1) (2019-12-17)

### Bug Fixes

* **iOS:** Ignore WebKitDomainError 101 ([#961](https://github.com/react-native-community/react-native-webview/issues/961)) ([adb5608](https://github.com/react-native-community/react-native-webview/commit/adb5608))
2019-12-17 09:57:33 +00:00
Ben Wildeman
adb5608116 fix(iOS): Ignore WebKitDomainError 101 (#961) 2019-12-17 10:55:26 +01:00
semantic-release-bot
ce565f4832 chore(release): 8.0.0 [skip ci]
# [8.0.0](https://github.com/react-native-community/react-native-webview/compare/v7.6.0...v8.0.0) (2019-12-16)

### Features

* **ios:** Generate history API events on iOS ([#1082](https://github.com/react-native-community/react-native-webview/issues/1082)) ([3615296](https://github.com/react-native-community/react-native-webview/commit/3615296))

### BREAKING CHANGES

* **ios:** if you use onNavigationStateChange on iOS it will now trigger on # changes to the url.

* Hook the `window.history` API on iOS to generate events

The underlying WKWebView doesn't seem to generate any events in response to the `window.history` API - none of the `WKNavigationDelegate` methods fire.

Given this limitation, the only way to know when the location changes via this API is to inject Javascript into the page and have it notify the native code directly when any of these functions are called.

The `setTimeout` call gives up the current tick, allowing the location to change before firing the event.

* Remove the outdated section about hash changes

Now that this bug is fixed, the workaround is no longer required.
2019-12-16 16:55:26 +00:00
Jason Safaiyeh
361529630f feat(ios): Generate history API events on iOS (#1082)
BREAKING CHANGE: if you use onNavigationStateChange on iOS it will now trigger on # changes to the url.

* Hook the `window.history` API on iOS to generate events

The underlying WKWebView doesn't seem to generate any events in response to the `window.history` API - none of the `WKNavigationDelegate` methods fire.

Given this limitation, the only way to know when the location changes via this API is to inject Javascript into the page and have it notify the native code directly when any of these functions are called.

The `setTimeout` call gives up the current tick, allowing the location to change before firing the event.

* Remove the outdated section about hash changes

Now that this bug is fixed, the workaround is no longer required.
2019-12-16 17:52:54 +01:00
semantic-release-bot
c4001338c1 chore(release): 7.6.0 [skip ci]
# [7.6.0](https://github.com/react-native-community/react-native-webview/compare/v7.5.2...v7.6.0) (2019-12-06)

### Bug Fixes

* **ios:** Make allowFileAccessFromFileURLs work in iOS. ([#1061](https://github.com/react-native-community/react-native-webview/issues/1061)) ([88b6498](https://github.com/react-native-community/react-native-webview/commit/88b6498))

### Features

* **iOS:** new prop injectedJavaScriptBeforeContentLoaded ([#1038](https://github.com/react-native-community/react-native-webview/issues/1038)) ([604495e](https://github.com/react-native-community/react-native-webview/commit/604495e))
2019-12-06 10:19:05 +00:00
StasD
88b64981f4 fix(ios): Make allowFileAccessFromFileURLs work in iOS. (#1061) 2019-12-06 11:16:56 +01:00
Salvatore Randazzo
604495e399 feat(iOS): new prop injectedJavaScriptBeforeContentLoaded (#1038)
* Run the injectedJavaScript on DocumentStart for iOS

* Add new prop injectedJavaScriptBeforeContentLoaded
Update types
Update docs

* Self review
2019-12-06 11:15:02 +01:00
semantic-release-bot
5ddd6c6fc2 chore(release): 7.5.2 [skip ci]
## [7.5.2](https://github.com/react-native-community/react-native-webview/compare/v7.5.1...v7.5.2) (2019-11-26)

### Bug Fixes

* **android:** Added fallback poster image to prevent crashes ([#1036](https://github.com/react-native-community/react-native-webview/issues/1036)) ([d8acd90](https://github.com/react-native-community/react-native-webview/commit/d8acd90))
* **build:** Android build errors when using Gradle 6.0 ([#1037](https://github.com/react-native-community/react-native-webview/issues/1037)) ([5b0c634](https://github.com/react-native-community/react-native-webview/commit/5b0c634))
2019-11-26 09:44:12 +00:00
Conner Owen
5b0c634f15 fix(build): Android build errors when using Gradle 6.0 (#1037)
* Fix Android build errors when using Gradle 6.0

* Update gradle.properties

* Remove newline at end of file

* newline
2019-11-26 10:41:16 +01:00
Vladimir
d8acd9086c fix(android): Added fallback poster image to prevent crashes (#1036) 2019-11-26 10:40:38 +01:00
Andrei Pfeiffer
71a375f898 chore(cleaning): Remove old comments (#1019) 2019-11-14 10:48:58 +01:00
Stanislav Shakirov
351adba284 chore(buildtools): enable --frozen-lockfile yarn flag (#1005)
that is required for reproducible dependencies which is usually common on CI
2019-11-13 10:58:27 +01:00
Stanislav Shakirov
30d63a1773 chore(buildtools): Use fixed version of cocoapods gem on ci (#1006)
install exact version instead of latest one
2019-11-13 10:57:52 +01:00
Thibault Malbranche
ef5c36c88e
chore(docs): Document request focus method 2019-11-13 10:43:25 +01:00
semantic-release-bot
4c2feefbcc chore(release): 7.5.1 [skip ci]
## [7.5.1](https://github.com/react-native-community/react-native-webview/compare/v7.5.0...v7.5.1) (2019-11-13)

### Bug Fixes

* **android:** Fix ClassCastException when doing native things([#987](https://github.com/react-native-community/react-native-webview/issues/987)) ([7e68da4](https://github.com/react-native-community/react-native-webview/commit/7e68da4))
2019-11-13 09:38:56 +00:00
Nikhil Chitlur Navakiran
7e68da4ffe fix(android): Fix ClassCastException when doing native things(#987) 2019-11-13 10:36:08 +01:00
semantic-release-bot
9dff31258d chore(release): 7.5.0 [skip ci]
# [7.5.0](https://github.com/react-native-community/react-native-webview/compare/v7.4.4...v7.5.0) (2019-11-12)

### Features

* **android:** add clearHistory, clearCache and clearFormData ([#450](https://github.com/react-native-community/react-native-webview/issues/450)) ([4a4f4a2](https://github.com/react-native-community/react-native-webview/commit/4a4f4a2))
2019-11-12 09:11:34 +00:00
Stanislav Shakirov
4a4f4a2c45 feat(android): add clearHistory, clearCache and clearFormData (#450)
* add clearHistory, clearCache and clearFormData android webview api.

* remove pointless `async`

* add docs for new android webview methods

* Update Reference.md

* update commands types

* add more strict type for RNCWebViewUIManager `Commands` property
2019-11-12 10:09:16 +01:00
semantic-release-bot
5d6128909c chore(release): 7.4.4 [skip ci]
## [7.4.4](https://github.com/react-native-community/react-native-webview/compare/v7.4.3...v7.4.4) (2019-11-12)

### Bug Fixes

* **android:** crash problem while loading local html resource ([#1010](https://github.com/react-native-community/react-native-webview/issues/1010)) ([05c286f](https://github.com/react-native-community/react-native-webview/commit/05c286f))
2019-11-12 09:08:48 +00:00
Dani Akash
6088dd9f06 chore(docs): Steps to load local HTML files into the webview (#1008)
Fixes #746 

These steps are based on my other project React native draftjs which requires loading a local HTML file. The code can be found in the following line - bc51410117/index.js (L113)
2019-11-12 10:06:35 +01:00
小米-余乐
05c286fc23 fix(android): crash problem while loading local html resource (#1010) 2019-11-12 10:05:29 +01:00
Rubensmp
b92d6ae014 chore(docs): README.md translated into Brazilian portugues (#980)
I was using this solution a lot, so I decided to translate it into my language.
2019-11-12 09:48:24 +01:00
Jamon Holmgren
82af9559ef
chore(docs): Add in-page link to new guide
[skip ci]
2019-11-04 08:34:54 -08:00
Jamon Holmgren
8c9f986df0 chore(docs): Added guide for working with custom headers and cookies (#994)
* Added guide for working with custom headers and cookies

* Remove extraneous files
2019-11-04 17:30:51 +01:00
Jean Augusto de Caastro Costa
c1b3696e01 chore(docs): Added missing word (#948) 2019-10-22 09:59:36 +02:00
semantic-release-bot
75ee940e89 chore(release): 7.4.3 [skip ci]
## [7.4.3](https://github.com/react-native-community/react-native-webview/compare/v7.4.2...v7.4.3) (2019-10-22)

### Bug Fixes

* **android:** possible NullPointerException ([#965](https://github.com/react-native-community/react-native-webview/issues/965)) ([fab77dc](https://github.com/react-native-community/react-native-webview/commit/fab77dc))
2019-10-22 07:58:43 +00:00
thanakij
fab77dc82f fix(android): possible NullPointerException (#965) 2019-10-22 09:56:50 +02:00
semantic-release-bot
f1479ee26a chore(release): 7.4.2 [skip ci]
## [7.4.2](https://github.com/react-native-community/react-native-webview/compare/v7.4.1...v7.4.2) (2019-10-11)

### Bug Fixes

* **lint android:** Add TargetAPI to onPermissionRequest ([#940](https://github.com/react-native-community/react-native-webview/issues/940)) ([0b783da](https://github.com/react-native-community/react-native-webview/commit/0b783da))
v7.4.2
2019-10-11 08:47:46 +00:00
Tom Targosz
0b783da0a4 fix(lint android): Add TargetAPI to onPermissionRequest (#940) 2019-10-11 10:45:22 +02:00
semantic-release-bot
9d42878704 chore(release): 7.4.1 [skip ci]
## [7.4.1](https://github.com/react-native-community/react-native-webview/compare/v7.4.0...v7.4.1) (2019-10-03)

### Bug Fixes

* **deps:** Fix RNCWebViewUIManager interface typescript error (#… ([#928](https://github.com/react-native-community/react-native-webview/issues/928)) ([e529fa9](https://github.com/react-native-community/react-native-webview/commit/e529fa9)), closes [#901](https://github.com/react-native-community/react-native-webview/issues/901)
v7.4.1
2019-10-03 08:12:40 +00:00
Jonathan Bones
e529fa9006 fix(deps): Fix RNCWebViewUIManager interface typescript error (#… (#928)
* fix(deps): Fix RNCWebViewUIManager interface typescript error (#901)

* fix: Revert indentation changes
2019-10-03 10:10:20 +02:00
semantic-release-bot
1302a37408 chore(release): 7.4.0 [skip ci]
# [7.4.0](https://github.com/react-native-community/react-native-webview/compare/v7.3.0...v7.4.0) (2019-09-29)

### Features

* **android:** allowFileAccessFromFileURLs prop added ([#831](https://github.com/react-native-community/react-native-webview/issues/831)) ([4db3d84](https://github.com/react-native-community/react-native-webview/commit/4db3d84))
v7.4.0
2019-09-29 13:52:10 +00:00
Borut Balazek
4db3d84dda feat(android): allowFileAccessFromFileURLs prop added (#831)
* add allowFileAccessFromFileURLs propery to do the expected on android

* Added types

* Update WebViewTypes.ts
2019-09-29 15:50:39 +02:00
semantic-release-bot
089ca67c6e chore(release): 7.3.0 [skip ci]
# [7.3.0](https://github.com/react-native-community/react-native-webview/compare/v7.2.8...v7.3.0) (2019-09-29)

### Features

* **android:** Expose cacheMode property ([#895](https://github.com/react-native-community/react-native-webview/issues/895)) ([5da5925](https://github.com/react-native-community/react-native-webview/commit/5da5925))
* **new prop:** containerStyle ([#912](https://github.com/react-native-community/react-native-webview/issues/912)) ([902d3d1](https://github.com/react-native-community/react-native-webview/commit/902d3d1))
v7.3.0
2019-09-29 13:47:21 +00:00
Andres Castano
5da59251ce feat(android): Expose cacheMode property (#895) 2019-09-29 15:45:20 +02:00
Marco Marinangeli
902d3d1e7f feat(new prop): containerStyle (#912)
* feat(new prop): containerStyle

* chore(docs): Add documentation for `containerStyle`
2019-09-29 15:43:48 +02:00
semantic-release-bot
7f41de1bcb chore(release): 7.2.8 [skip ci]
## [7.2.8](https://github.com/react-native-community/react-native-webview/compare/v7.2.7...v7.2.8) (2019-09-29)

### Bug Fixes

* **android:** renderError - the error status might be overwritte… ([#915](https://github.com/react-native-community/react-native-webview/issues/915)) ([01de9e5](https://github.com/react-native-community/react-native-webview/commit/01de9e5))
v7.2.8
2019-09-29 13:41:55 +00:00
Roc
01de9e5fa0 fix(android): renderError - the error status might be overwritte… (#915) 2019-09-29 15:40:12 +02:00
semantic-release-bot
f958f8a493 chore(release): 7.2.7 [skip ci]
## [7.2.7](https://github.com/react-native-community/react-native-webview/compare/v7.2.6...v7.2.7) (2019-09-26)

### Bug Fixes

* **iOS:** hideKeyboardAccessoryView on iPads ([#661](https://github.com/react-native-community/react-native-webview/issues/661)) ([09372c9](https://github.com/react-native-community/react-native-webview/commit/09372c9))
v7.2.7
2019-09-26 23:29:29 +00:00