Fixed in https://github.com/badbundle/vault-app/pull/631 (merged as 3e1e45a4).
What changed:
- Every text input now declares a
SecretTextInputwith.secretTextInput(_:), using the.proseor.verbatimpreset or custom traits. It turns off autocorrection, which also stops predictive text and the keyboard's learned words, and turns off Writing Tools. It sets capitalization, and the ASCII keyboard where the text can only be ASCII. LabeledTextFieldapplies the declaration to its own input. A contrary modifier around a field can't turn learning back on, and a field without a declaration falls back to.verbatim.- No field kept learning on. Even tag names say what the vault holds.
- No
UITextContentTypewas added, so nothing invites AutoFill or iCloud Keychain. Password fields stay secure entry.
Tests:
SecretTextInputDeclarationTestsscans every source file and fails, withpath:line, for anyTextField,SecureField,TextEditororLabeledTextFieldwithout a declaration.SecretTextInputTraitsTestschecks the UIKit traits the keyboard actually sees.
The PR has the field-by-field table.