mirror of
https://github.com/status-im/react-native-webview.git
synced 2026-08-31 11:41:08 +00:00
BREAKING CHANGE: This release introduces the `setSupportMultipleWindows` prop for Android. This sets the underlying Android WebView setting `setSupportMultipleWindows`. This prop defaults to `true` (previously `false`), and serves to mitigate the security advisory [CVE-2020-6506](https://github.com/react-native-webview/react-native-webview/security/advisories/GHSA-36j3-xxf7-4pqg). The primary way this new behavior changes existing React Native WebView implementations on Android is that links that open in new tabs/windows (such as `<a target="_blank">`) will now prompt to open in the system browser, rather than re-using the current WebView. If this behavior is not desirable, you can set this new prop to `false`, but be aware that this exposes your app to the security vulnerability listed above. Make sure you have read and understand the whole advisory and relevant links. iOS & Windows are unaffected. ```jsx <WebView // ... setSupportMultipleWindows={true} // default: true /> ``` Thanks to @mrcoinbase, @kelset, and @Titozzz for their work on this.
24 lines
502 B
TypeScript
24 lines
502 B
TypeScript
import React, {Component} from 'react';
|
|
import {View} from 'react-native';
|
|
|
|
import WebView from 'react-native-webview';
|
|
|
|
type Props = {};
|
|
type State = {};
|
|
|
|
export default class NativeWebpage extends Component<Props, State> {
|
|
state = {};
|
|
|
|
render() {
|
|
return (
|
|
<View style={{height: 400}}>
|
|
<WebView
|
|
source={{uri: 'https://infinite.red'}}
|
|
style={{width: '100%', height: '100%'}}
|
|
// setSupportMultipleWindows={false}
|
|
/>
|
|
</View>
|
|
);
|
|
}
|
|
}
|