Skip to content

Commit 6edcebe

Browse files
odinofacebook-github-bot-0
authored andcommitted
Stop using platform-specific names for props
Summary: Follows up on [this comment](facebook/react-native#5065 (comment)) by nicklockwood in #5065. Rely on using the platform annotation and keep the API / naming less redundant. Closes facebook/react-native#5081 Reviewed By: svcscm Differential Revision: D2803143 Pulled By: nicklockwood fb-gh-sync-id: 9bdf028f5022ef46fcb63aa6c3fc931fdcc46f2b
1 parent af24619 commit 6edcebe

4 files changed

Lines changed: 30 additions & 10 deletions

File tree

Examples/UIExplorer/WebViewExample.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,8 @@ var WebViewExample = React.createClass({
9494
automaticallyAdjustContentInsets={false}
9595
style={styles.webView}
9696
url={this.state.url}
97-
javaScriptEnabledAndroid={true}
98-
domStorageEnabledAndroid={true}
97+
javaScriptEnabled={true}
98+
domStorageEnabled={true}
9999
onNavigationStateChange={this.onNavigationStateChange}
100100
onShouldStartLoadWithRequest={this.onShouldStartLoadWithRequest}
101101
startInLoadingState={true}

Libraries/Components/WebView/WebView.android.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,13 @@ var WebView = React.createClass({
5252
* Used on Android only, JS is enabled by default for WebView on iOS
5353
* @platform android
5454
*/
55-
javaScriptEnabledAndroid: PropTypes.bool,
55+
javaScriptEnabled: PropTypes.bool,
5656

5757
/**
5858
* Used on Android only, controls whether DOM Storage is enabled or not
5959
* @platform android
6060
*/
61-
domStorageEnabledAndroid: PropTypes.bool,
61+
domStorageEnabled: PropTypes.bool,
6262

6363
/**
6464
* Sets the JS to be injected when the webpage loads.
@@ -113,6 +113,16 @@ var WebView = React.createClass({
113113
webViewStyles.push(styles.hidden);
114114
}
115115

116+
var {javaScriptEnabled, domStorageEnabled} = this.props;
117+
if (this.props.javaScriptEnabledAndroid) {
118+
console.warn('javaScriptEnabledAndroid is deprecated. Use javaScriptEnabled instead');
119+
javaScriptEnabled = this.props.javaScriptEnabledAndroid;
120+
}
121+
if (this.props.domStorageEnabledAndroid) {
122+
console.warn('domStorageEnabledAndroid is deprecated. Use domStorageEnabled instead');
123+
domStorageEnabled = this.props.domStorageEnabledAndroid;
124+
}
125+
116126
var webView =
117127
<RCTWebView
118128
ref={RCT_WEBVIEW_REF}
@@ -122,8 +132,8 @@ var WebView = React.createClass({
122132
html={this.props.html}
123133
injectedJavaScript={this.props.injectedJavaScript}
124134
userAgent={this.props.userAgent}
125-
javaScriptEnabledAndroid={this.props.javaScriptEnabledAndroid}
126-
domStorageEnabledAndroid={this.props.domStorageEnabledAndroid}
135+
javaScriptEnabled={javaScriptEnabled}
136+
domStorageEnabled={domStorageEnabled}
127137
contentInset={this.props.contentInset}
128138
automaticallyAdjustContentInsets={this.props.automaticallyAdjustContentInsets}
129139
onLoadingStart={this.onLoadingStart}

Libraries/Components/WebView/WebView.ios.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,13 +114,13 @@ var WebView = React.createClass({
114114
* Used on Android only, JS is enabled by default for WebView on iOS
115115
* @platform android
116116
*/
117-
javaScriptEnabledAndroid: PropTypes.bool,
117+
javaScriptEnabled: PropTypes.bool,
118118

119119
/**
120120
* Used on Android only, controls whether DOM Storage is enabled or not
121121
* @platform android
122122
*/
123-
domStorageEnabledAndroid: PropTypes.bool,
123+
domStorageEnabled: PropTypes.bool,
124124

125125
/**
126126
* Sets the JS to be injected when the webpage loads.
@@ -201,6 +201,16 @@ var WebView = React.createClass({
201201
RCTWebViewManager.startLoadWithResult(!!shouldStart, event.nativeEvent.lockIdentifier);
202202
});
203203

204+
var {javaScriptEnabled, domStorageEnabled} = this.props;
205+
if (this.props.javaScriptEnabledAndroid) {
206+
console.warn('javaScriptEnabledAndroid is deprecated. Use javaScriptEnabled instead');
207+
javaScriptEnabled = this.props.javaScriptEnabledAndroid;
208+
}
209+
if (this.props.domStorageEnabledAndroid) {
210+
console.warn('domStorageEnabledAndroid is deprecated. Use domStorageEnabled instead');
211+
domStorageEnabled = this.props.domStorageEnabledAndroid;
212+
}
213+
204214
var webView =
205215
<RCTWebView
206216
ref={RCT_WEBVIEW_REF}

ReactAndroid/src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -251,12 +251,12 @@ protected WebView createViewInstance(ThemedReactContext reactContext) {
251251
return webView;
252252
}
253253

254-
@ReactProp(name = "javaScriptEnabledAndroid")
254+
@ReactProp(name = "javaScriptEnabled")
255255
public void setJavaScriptEnabled(WebView view, boolean enabled) {
256256
view.getSettings().setJavaScriptEnabled(enabled);
257257
}
258258

259-
@ReactProp(name = "domStorageEnabledAndroid")
259+
@ReactProp(name = "domStorageEnabled")
260260
public void setDomStorageEnabled(WebView view, boolean enabled) {
261261
view.getSettings().setDomStorageEnabled(enabled);
262262
}

0 commit comments

Comments
 (0)