Commit Graph

249 Commits

Author SHA1 Message Date
Thibault Malbranche 2843237e07
chore(docs): Updated readme.md (#368)
* chore(docs): Updated readme.md

* Update README.md

* Update README.md
2019-03-01 01:18:58 +01:00
Thibault Malbranche b150f987ea
Update Getting-Started.md 2019-03-01 00:26:28 +01:00
semantic-release-bot 440e7c8527 chore(release): 5.2.3 [skip ci]
## [5.2.3](https://github.com/react-native-community/react-native-webview/compare/v5.2.2...v5.2.3) (2019-02-28)

### Bug Fixes

* **Android <input />:** Support file extensions in file input accept attributes ([#357](https://github.com/react-native-community/react-native-webview/issues/357)) ([803a3b0](https://github.com/react-native-community/react-native-webview/commit/803a3b0))
2019-02-28 21:14:14 +00:00
Ryan Linton 803a3b095b fix(Android <input />): Support file extensions in file input accept attributes (#357)
The current implementation doesn't support a list of file extensions in the accept attribute (e.g. `<input type="file" accept=".jpg, .png">`) while that is a valid value per the HTML spec. I've updated the implementation to convert any file extensions to mime types before we set the type(s) on the intent to rectify the issue. In addition I've updated the `acceptsImages` and `acceptsVideo` methods to handle file extensions as well.
2019-02-28 22:12:27 +01:00
Andrei Pfeiffer 8217cb5503 chore(docs): Update Reference.md (#359)
I was able to fix a bug with videos loaded from Azure that wouldn't start unless I set that prop to `false`
2019-02-28 22:10:47 +01:00
semantic-release-bot 7dc875e056 chore(release): 5.2.2 [skip ci]
## [5.2.2](https://github.com/react-native-community/react-native-webview/compare/v5.2.1...v5.2.2) (2019-02-28)

### Bug Fixes

* **android:scalesPageToFit:** scalesPageToFit does not work as intended , especially for large jpg and png images. ([#275](https://github.com/react-native-community/react-native-webview/issues/275)) ([a661df1](https://github.com/react-native-community/react-native-webview/commit/a661df1)), closes [#113](https://github.com/react-native-community/react-native-webview/issues/113)
* **WKWebview Scroll:** Don't allow the scrollView to scroll when `scrollEnabled={false}`. ([#158](https://github.com/react-native-community/react-native-webview/issues/158)) ([0e6e92a](https://github.com/react-native-community/react-native-webview/commit/0e6e92a))
2019-02-28 21:04:32 +00:00
Benjos Antony a661df1ffc fix(android:scalesPageToFit): scalesPageToFit does not work as intended , especially for large jpg and png images. (#275)
fixes #113

- One can verify that this for jpg images loaded on the webview (eg: https://www.ecda.gov.sg/growatbeanstalk/PublishingImages/READ%20Publications%20and%20Research/Parent%20Infographic%20Series/Infographic%204.jpg)
- This is a replication of the pull request that was originally made in the react-native repo (https://github.com/facebook/react-native/pull/17195), but was not merged in due to no reviews.
2019-02-28 22:02:44 +01:00
Chet Corcos 0e6e92a7f1 fix(WKWebview Scroll): Don't allow the scrollView to scroll when `scrollEnabled={false}`. (#158)
* Don't allow the scrollview to scroll the WebView body.

* Readme comment

* Remove duplicate protocol def
2019-02-28 22:01:42 +01:00
allcontributors[bot] bef06e63f7 chore(docs): add jeluard as a contributor (#348)
Adds @jeluard as a contributor for doc.

This was requested by Titozzz [in this comment](https://github.com/react-native-community/react-native-webview/pull/347#issuecomment-463999246)
2019-02-15 11:57:41 +01:00
Julien Eluard b1cbf077e0 chore(docs): Custom Android: Reflect migration to react-native-webview project (#347)
Doc is now up-to-date with latest `react-native-webview` changes
2019-02-15 11:56:55 +01:00
semantic-release-bot 3b85a07d68 chore(release): 5.2.1 [skip ci]
## [5.2.1](https://github.com/react-native-community/react-native-webview/compare/v5.2.0...v5.2.1) (2019-02-14)

### Bug Fixes

* **WKWebView:** resolved crash with WebKit on iOS 9.x. ([#342](https://github.com/react-native-community/react-native-webview/issues/342)) ([f27f13e](https://github.com/react-native-community/react-native-webview/commit/f27f13e)), closes [#150](https://github.com/react-native-community/react-native-webview/issues/150) [#213](https://github.com/react-native-community/react-native-webview/issues/213) [jerolimov/react-native-webview#fix-ios9](https://github.com/jerolimov/react-native-webview/issues/fix-ios9) [jerolimov/react-native-webview#fix-ios9](https://github.com/jerolimov/react-native-webview/issues/fix-ios9)
2019-02-14 14:19:47 +00:00
Christoph Jerolimov f27f13e931 fix(WKWebView): resolved crash with WebKit on iOS 9.x. (#342)
This PR fixes two crashes when enableWebKit is true (which was the default) on iOS 9.x. The first one when the WebView component was mounted (fixes issue #150) and the second one, when the component was unmounted (fixes issue #213).

The first problem happen when the RNCWKWebView.m was loaded:

The programming guide for WebKit (version 2006) ([pdf](http://mirror.informatimago.com/next/developer.apple.com/documentation/Cocoa/Conceptual/DisplayWebContent/WebKit_DisplayWebContent.pdf)) from Apple said, that it is (was) required to check if the 'new' WebKit Framework was available. This was required when the WebKit framework was only available on Mac OS X (10.2) when the Safari was installed. 😆

Because WebKit is (currently..) a fix part of iOS we didn't need this check this anymore to determinate if WebKit is available. I also see no other reference that this is required in iOS so I just remove this code. Without this code the WebView works also on iOS 9.x.

The second issue happen when the WKWebView was removed from the native view hierarchy. Its required (only on iOS 9) to remove the UIScrollView delegate before cleaning up the webview.

Its possible to try this PR with:

```
npm install --save "react-native-webview@jerolimov/react-native-webview#fix-ios9-crash"
# or
yarn add "react-native-webview@jerolimov/react-native-webview#fix-ios9-crash"
```

If you use CocoaPods, you should also update your Pods with

```
cd ios && pod update && cd ..
```
2019-02-14 15:18:15 +01:00
semantic-release-bot 833d4d6c62 chore(release): 5.2.0 [skip ci]
# [5.2.0](https://github.com/react-native-community/react-native-webview/compare/v5.1.0...v5.2.0) (2019-02-12)

### Features

* **toggle scroll bar:** added new props showsVerticalScrollIndicator / showsHorizontalScrollIndicator ([#250](https://github.com/react-native-community/react-native-webview/issues/250)) ([92c2058](https://github.com/react-native-community/react-native-webview/commit/92c2058))
2019-02-12 13:48:58 +00:00
Jordan Sexton 92c20581ae feat(toggle scroll bar): added new props showsVerticalScrollIndicator / showsHorizontalScrollIndicator (#250) 2019-02-12 14:47:24 +01:00
allcontributors[bot] 405421dece chore(docs): add marconett as a contributor (#338)
* docs: update README.md

* docs: update .all-contributorsrc
2019-02-12 14:39:34 +01:00
Marco 4947358a0a chore(readme): update in regards to #101 (#336) 2019-02-12 14:18:39 +01:00
semantic-release-bot 0761f6f105 chore(release): 5.1.0 [skip ci]
# [5.1.0](https://github.com/react-native-community/react-native-webview/compare/v5.0.8...v5.1.0) (2019-02-12)

### Features

* **wkwebview:** create api to allow clients to present a client credential for authentication ([#141](https://github.com/react-native-community/react-native-webview/issues/141)) ([fc5fd24](https://github.com/react-native-community/react-native-webview/commit/fc5fd24))
2019-02-12 09:37:15 +00:00
Maosen Jason Hu fc5fd242e2 feat(wkwebview): create api to allow clients to present a client credential for authentication (#141)
* In order for TLS Mutual Auth to work for webviews, the caller must present a credential. Expose a setter that can be called to set a credential.
2019-02-12 10:35:14 +01:00
semantic-release-bot f0e36338ab chore(release): 5.0.8 [skip ci]
## [5.0.8](https://github.com/react-native-community/react-native-webview/compare/v5.0.7...v5.0.8) (2019-02-11)

### Bug Fixes

* **types:** Add new cacheEnabled prop to typescript prop type declarations ([#335](https://github.com/react-native-community/react-native-webview/issues/335)) ([ff62c95](https://github.com/react-native-community/react-native-webview/commit/ff62c95))
2019-02-11 21:53:21 +00:00
Thea Lanherne ff62c956e3 fix(types): Add new cacheEnabled prop to typescript prop type declarations (#335) 2019-02-11 22:51:44 +01:00
Momazo7u7 80efc3155c chore(docs): Deleted onShouldStartLoadWithRequest platform reference (#317)
* Deleted onShouldStartLoadWithRequest platform reference

according to b1b662628e it's supported on android and Ios so  no platfor reference is needed

* Deleted onShouldStartLoadWithRequest platform reference 

Now with added note
2019-02-08 12:31:17 +01:00
allcontributors[bot] 38663758f7 chore(docs): add Momazo7u7 as a contributor (#328)
* docs: update README.md

* docs: update .all-contributorsrc
2019-02-08 12:31:02 +01:00
semantic-release-bot ddd6efd77b chore(release): 5.0.7 [skip ci]
## [5.0.7](https://github.com/react-native-community/react-native-webview/compare/v5.0.6...v5.0.7) (2019-02-08)

### Bug Fixes

* **package.json:** Warning because peerDependencies >=0.57 <0.59 ([#279](https://github.com/react-native-community/react-native-webview/issues/279)) ([#327](https://github.com/react-native-community/react-native-webview/issues/327)) ([46286b2](https://github.com/react-native-community/react-native-webview/commit/46286b2))
2019-02-08 11:28:56 +00:00
Kou 46286b2723 fix(package.json): Warning because peerDependencies >=0.57 <0.59 (#279) (#327) 2019-02-08 12:27:07 +01:00
semantic-release-bot 3497ae9411 chore(release): 5.0.6 [skip ci]
## [5.0.6](https://github.com/react-native-community/react-native-webview/compare/v5.0.5...v5.0.6) (2019-02-06)

### Bug Fixes

* **WKWebView.m:** Reapplied [#134](https://github.com/react-native-community/react-native-webview/issues/134) with additional checks to tackle unintentional scrolls ([#296](https://github.com/react-native-community/react-native-webview/issues/296)) ([3f58b0e](https://github.com/react-native-community/react-native-webview/commit/3f58b0e))
2019-02-06 14:32:01 +00:00
Alexander Stammbach 3f58b0e597 fix(WKWebView.m): Reapplied #134 with additional checks to tackle unintentional scrolls (#296) 2019-02-06 15:29:59 +01:00
semantic-release-bot a76e0ae811 chore(release): 5.0.5 [skip ci]
## [5.0.5](https://github.com/react-native-community/react-native-webview/compare/v5.0.4...v5.0.5) (2019-02-05)

### Bug Fixes

* **iOS/android getViewManagerConfig:** Fix crash with react-native < 0.58 ([263fc5e](https://github.com/react-native-community/react-native-webview/commit/263fc5e))
2019-02-05 14:59:05 +00:00
Thibault Malbranche 54848de8f5 Merge branch 'master' of https://github.com/react-native-community/react-native-webview 2019-02-05 15:57:13 +01:00
Thibault Malbranche 6c26a892b4 updated type for ViewManagerName 2019-02-05 15:56:34 +01:00
Thibault Malbranche 5000bde5fd
Update README.md 2019-02-05 15:51:16 +01:00
Thibault Malbranche 263fc5ec3c fix(iOS/android getViewManagerConfig): Fix crash with react-native < 0.58 2019-02-05 15:50:40 +01:00
Thibault Malbranche a4c6f210cf
Update README.md 2019-02-05 15:15:02 +01:00
semantic-release-bot 0fe45de879 chore(release): 5.0.4 [skip ci]
## [5.0.4](https://github.com/react-native-community/react-native-webview/compare/v5.0.3...v5.0.4) (2019-02-04)

### Bug Fixes

* **UIWebview:** Deprecate UIWebView and add link to issue ([#313](https://github.com/react-native-community/react-native-webview/issues/313)) ([4c80240](https://github.com/react-native-community/react-native-webview/commit/4c80240))
2019-02-04 18:00:23 +00:00
Thibault Malbranche 4c8024047b
fix(UIWebview): Deprecate UIWebView and add link to issue (#313)
* Update WebView.ios.js

* Update WebView.ios.js
2019-02-04 18:58:48 +01:00
semantic-release-bot 0535c04c11 chore(release): 5.0.3 [skip ci]
## [5.0.3](https://github.com/react-native-community/react-native-webview/compare/v5.0.2...v5.0.3) (2019-02-04)

### Bug Fixes

* **android/iOS:** Fixed react-native 0.58 warnings ([#311](https://github.com/react-native-community/react-native-webview/issues/311)) ([4a4ccd8](https://github.com/react-native-community/react-native-webview/commit/4a4ccd8))
2019-02-04 13:14:47 +00:00
Thibault Malbranche 4a4ccd8141
fix(android/iOS): Fixed react-native 0.58 warnings (#311) 2019-02-04 14:13:14 +01:00
allcontributors[bot] 305172764b chore(docs): add MalcolmScruggs as a contributor (#308)
Adds @MalcolmScruggs as a contributor for code, tool, test.

This was requested by Titozzz [in this comment](https://github.com/react-native-community/react-native-webview/pull/293#issuecomment-460077647)
2019-02-03 19:52:18 +01:00
semantic-release-bot 49b44284ce chore(release): 5.0.2 [skip ci]
## [5.0.2](https://github.com/react-native-community/react-native-webview/compare/v5.0.1...v5.0.2) (2019-02-03)

### Bug Fixes

* **webviewShared.js:** Support all valid URI schemes and add testing ([#293](https://github.com/react-native-community/react-native-webview/issues/293)) ([fb78d13](https://github.com/react-native-community/react-native-webview/commit/fb78d13)), closes [/tools.ietf.org/html/rfc3986#section-3](https://github.com//tools.ietf.org/html/rfc3986/issues/section-3)
2019-02-03 18:47:33 +00:00
Malcolm Scruggs fb78d13120 fix(webviewShared.js): Support all valid URI schemes and add testing (#293)
* Change origin whitelist to allow for all valid URIs

- Now supports +, -, and .
- Prevent whitelist from matching when preceded by unwanted characters
- URI must begin with letter
- URI Scheme syntax: https://tools.ietf.org/html/rfc3986#section-3.1

* Add jest testing framework and run it on CI

* Add tests for WebViewShared's createOnShouldStartLoadWithRequest
2019-02-03 19:45:58 +01:00
allcontributors[bot] 20d5cf06a8 chore(docs): add jordansexton as a contributor (#305)
* docs: update README.md

* docs: update .all-contributorsrc
2019-02-02 07:24:29 +01:00
semantic-release-bot b3a07b22b3 chore(release): 5.0.1 [skip ci]
## [5.0.1](https://github.com/react-native-community/react-native-webview/compare/v5.0.0...v5.0.1) (2019-02-01)

### Bug Fixes

* **PostMessage:** Renamed ReactNativeWebview to ReactNativeWebView ([d5fc028](https://github.com/react-native-community/react-native-webview/commit/d5fc028)), closes [#304](https://github.com/react-native-community/react-native-webview/issues/304)
2019-02-01 21:05:40 +00:00
Thibault Malbranche d5fc028383 fix(PostMessage): Renamed ReactNativeWebview to ReactNativeWebView
fixes #304
2019-02-01 22:04:11 +01:00
Thibault Malbranche e4b851e01a
Update Reference.md 2019-02-01 19:14:07 +01:00
semantic-release-bot 2d80402d9f chore(release): 5.0.0 [skip ci]
# [5.0.0](https://github.com/react-native-community/react-native-webview/compare/v4.1.0...v5.0.0) (2019-02-01)

### Features

* **Android/iOS postMessage:** refactoring the old postMessage implementation ([#303](https://github.com/react-native-community/react-native-webview/issues/303)) ([f3bdab5](https://github.com/react-native-community/react-native-webview/commit/f3bdab5)), closes [#29](https://github.com/react-native-community/react-native-webview/issues/29) [#272](https://github.com/react-native-community/react-native-webview/issues/272) [#221](https://github.com/react-native-community/react-native-webview/issues/221) [#105](https://github.com/react-native-community/react-native-webview/issues/105) [#66](https://github.com/react-native-community/react-native-webview/issues/66)

### BREAKING CHANGES

* **Android/iOS postMessage:** Communication from webview to react-native has been completely rewritten. React-native-webview will not use or override window.postMessage anymore. Reasons behind these changes can be found throughout so many issues that it made sense to go that way.

Instead of using window.postMessage(data, *), please now use window.ReactNativeWebView.postMessage(data).

Side note: if you wish to keep compatibility with the old version when you upgrade, you can use the injectedJavascript prop to do that:

const injectedJavascript = `(function() {
  window.postMessage = function(data) {
    window.ReactNativeWebView.postMessage(data);
  };
})()`;

Huge thanks to @jordansexton and @KoenLav!
2019-02-01 17:38:54 +00:00
Thibault Malbranche f3bdab5a22
feat(Android/iOS postMessage): refactoring the old postMessage implementation (#303)
fixes #29
fixes #272
fixes #221
fixes #105
fixes #66

BREAKING CHANGE: Communication from webview to react-native has been completely rewritten. React-native-webview will not use or override window.postMessage anymore. Reasons behind these changes can be found throughout so many issues that it made sense to go that way.

Instead of using window.postMessage(data, *), please now use window.ReactNativeWebView.postMessage(data).

Side note: if you wish to keep compatibility with the old version when you upgrade, you can use the injectedJavascript prop to do that:

const injectedJavascript = `(function() {
  window.postMessage = function(data) {
    window.ReactNativeWebView.postMessage(data);
  };
})()`;

Huge thanks to @jordansexton and @KoenLav!
2019-02-01 18:37:28 +01:00
semantic-release-bot 79afbd697d chore(release): 4.1.0 [skip ci]
# [4.1.0](https://github.com/react-native-community/react-native-webview/compare/v4.0.0...v4.1.0) (2019-02-01)

### Features

* **WKwebview:** Allow _target links to be opened up in the same way as UIWebView. ([#270](https://github.com/react-native-community/react-native-webview/issues/270)) ([6643a8e](https://github.com/react-native-community/react-native-webview/commit/6643a8e)), closes [#139](https://github.com/react-native-community/react-native-webview/issues/139)
2019-02-01 01:19:38 +00:00
Benjos Antony 6643a8e38d feat(WKwebview): Allow _target links to be opened up in the same way as UIWebView. (#270)
Fixes #139
2019-02-01 02:18:02 +01:00
Thibault Malbranche bf3f790358
chore(readme): Updated linking steps 2019-01-31 16:32:14 +01:00
semantic-release-bot 27b6804ee7 chore(release): 4.0.0 [skip ci]
# [4.0.0](https://github.com/react-native-community/react-native-webview/compare/v3.2.2...v4.0.0) (2019-01-30)

### Features

* **iOS/Android:** Add `cacheEnabled` prop ([#152](https://github.com/react-native-community/react-native-webview/issues/152)) ([83ce79f](https://github.com/react-native-community/react-native-webview/commit/83ce79f))

### BREAKING CHANGES

* **iOS/Android:** This change makes caching enabled by default when previously there was no caching behavior which may cause unexpected behaviour changes in your existing implementations.
2019-01-30 09:34:23 +00:00
Michael Diarmid 83ce79ff89 feat(iOS/Android): Add `cacheEnabled` prop (#152)
Added a new cacheEnabled prop to toggle Android & iOS webview caching behavior.

BREAKING CHANGE:  This change makes caching enabled by default when previously there was no caching behavior which may cause unexpected behaviour changes in your existing implementations.
2019-01-30 10:32:46 +01:00