diff --git a/apps/tests/ui/text-field/text-field-tests-native.android.ts b/apps/tests/ui/text-field/text-field-tests-native.android.ts index f4d1c623e..b64141f63 100644 --- a/apps/tests/ui/text-field/text-field-tests-native.android.ts +++ b/apps/tests/ui/text-field/text-field-tests-native.android.ts @@ -13,16 +13,7 @@ export function getNativeHint(textField: textFieldModule.TextField): string { export function getNativeSecure(textField: textFieldModule.TextField): boolean { var inputType = textField.android.getInputType(); - - if (inputType === (android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_VARIATION_PASSWORD)) { - return true; - } - else if (inputType === (android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_VARIATION_NORMAL)) { - return false; - } - else { - throw new Error("Unsupported input type: " + inputType); - } + return (((inputType & android.text.InputType.TYPE_TEXT_VARIATION_PASSWORD) === android.text.InputType.TYPE_TEXT_VARIATION_PASSWORD) || ((inputType & android.text.InputType.TYPE_NUMBER_VARIATION_PASSWORD) === android.text.InputType.TYPE_NUMBER_VARIATION_PASSWORD)); } export function getNativeFontSize(textField: textFieldModule.TextField): number { diff --git a/ui/text-field/text-field.android.ts b/ui/text-field/text-field.android.ts index 9aa2959fb..926443421 100644 --- a/ui/text-field/text-field.android.ts +++ b/ui/text-field/text-field.android.ts @@ -33,6 +33,9 @@ function onSecurePropertyChanged(data: dependencyObservable.PropertyChangeData) else if (currentClass === android.text.InputType.TYPE_CLASS_NUMBER) { newInputType = currentClass | currentFlags | android.text.InputType.TYPE_NUMBER_VARIATION_PASSWORD; } + + // Lower all autocapitalization bits, because password bits don't like them and we will receive "Unsupported input type: 16513" error for example. + newInputType = newInputType & ~28762; //28762 (0x00007000) 13,14,15bits } else { if (currentClass === android.text.InputType.TYPE_CLASS_TEXT) {