Skip to content

Commit 233fdfc

Browse files
safaiyehfacebook-github-bot
authored andcommitted
Fix setting keyboardType from breaking autoCapitalize (#27523)
Summary: Fix for #27510. Setting the `InputType.TYPE_CLASS_TEXT` flag when `keyboardType` is null or default breaks autoCapitalize. Handle the case when `keyboardType` is null, default, or invalid type. ## Changelog [Android] [Fixed] - Fix setting keyboardType from breaking autoCapitalize Pull Request resolved: #27523 Test Plan: Added keyboardType prop to RNTester as so ``` <TextInput autoCapitalize="words" keyboardType="default" style={styles.default} /> ``` ![fixedKeyboardType](https://user-images.githubusercontent.com/8675043/70872892-c96dec80-1f5f-11ea-8e33-714a67eff581.gif) Reviewed By: makovkastar Differential Revision: D19132261 Pulled By: JoshuaGross fbshipit-source-id: be66f0317ed305425ebcff32046ad4bff06d367f
1 parent e8f577e commit 233fdfc

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java

+4
Original file line numberDiff line numberDiff line change
@@ -733,6 +733,10 @@ public void setKeyboardType(ReactEditText view, @Nullable String keyboardType) {
733733
// This will supercede secureTextEntry={false}. If it doesn't, due to the way
734734
// the flags work out, the underlying field will end up a URI-type field.
735735
flagsToSet = InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD;
736+
} else {
737+
// This prevents KEYBOARD_TYPE_FLAGS from being set when the keyboardType is
738+
// default, unsupported or null. Setting of this flag breaks the autoCapitalize functionality.
739+
return;
736740
}
737741
updateStagedInputTypeFlag(view, KEYBOARD_TYPE_FLAGS, flagsToSet);
738742
checkPasswordType(view);

0 commit comments

Comments
 (0)