Remove support for password property and only use secureTextEntry

Summary:
Reduce the public surface area of TextInput.  It only exposes a secureTextEntry property, but on Android was also accepting password as a prop.
This removes that.

Reviewed By: javache

Differential Revision: D3392223

fbshipit-source-id: 67c36fbe16fe493e2841d5d9deb78e3be2209ebd
This commit is contained in:
Dave Miller 2016-06-06 10:07:28 -07:00 committed by Facebook Github Bot 8
parent 61046c3195
commit f3507f99f1
4 changed files with 8 additions and 8 deletions

View File

@ -557,9 +557,9 @@ var TextInput = React.createClass({
onSubmitEditing={this.props.onSubmitEditing} onSubmitEditing={this.props.onSubmitEditing}
blurOnSubmit={this.props.blurOnSubmit} blurOnSubmit={this.props.blurOnSubmit}
onLayout={this.props.onLayout} onLayout={this.props.onLayout}
password={this.props.password || this.props.secureTextEntry}
placeholder={this.props.placeholder} placeholder={this.props.placeholder}
placeholderTextColor={this.props.placeholderTextColor} placeholderTextColor={this.props.placeholderTextColor}
secureTextEntry={this.props.secureTextEntry}
selectionColor={this.props.selectionColor} selectionColor={this.props.selectionColor}
text={this._getText()} text={this._getText()}
underlineColorAndroid={this.props.underlineColorAndroid} underlineColorAndroid={this.props.underlineColorAndroid}

View File

@ -90,7 +90,7 @@ var TextInputTestApp = React.createClass({
autoFocus={true} autoFocus={true}
keyboardType='numeric' keyboardType='numeric'
multiline={true} multiline={true}
password={true} secureTextEntry={true}
defaultValue="This is text" defaultValue="This is text"
testID="textInput1" testID="textInput1"
/> />
@ -101,7 +101,7 @@ var TextInputTestApp = React.createClass({
autoFocus={false} autoFocus={false}
keyboardType='default' keyboardType='default'
multiline={false} multiline={false}
password={false} secureTextEntry={false}
placeholder='1234' placeholder='1234'
testID="textInput2" testID="textInput2"
/> />

View File

@ -394,8 +394,8 @@ public class ReactTextInputManager extends BaseViewManager<ReactEditText, Layout
multiline ? InputType.TYPE_TEXT_FLAG_MULTI_LINE : 0); multiline ? InputType.TYPE_TEXT_FLAG_MULTI_LINE : 0);
} }
@ReactProp(name = "password", defaultBoolean = false) @ReactProp(name = "secureTextEntry", defaultBoolean = false)
public void setPassword(ReactEditText view, boolean password) { public void setSecureTextEntry(ReactEditText view, boolean password) {
updateStagedInputTypeFlag( updateStagedInputTypeFlag(
view, view,
password ? 0 : password ? 0 :

View File

@ -242,13 +242,13 @@ public class ReactTextInputPropertyTest {
mManager.updateProperties(view, buildStyles()); mManager.updateProperties(view, buildStyles());
assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero(); assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero();
mManager.updateProperties(view, buildStyles("password", false)); mManager.updateProperties(view, buildStyles("secureTextEntry", false));
assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero(); assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero();
mManager.updateProperties(view, buildStyles("password", true)); mManager.updateProperties(view, buildStyles("secureTextEntry", true));
assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isNotZero(); assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isNotZero();
mManager.updateProperties(view, buildStyles("password", null)); mManager.updateProperties(view, buildStyles("secureTextEntry", null));
assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero(); assertThat(view.getInputType() & InputType.TYPE_TEXT_VARIATION_PASSWORD).isZero();
} }