We have been receiving more and more strange bug reports regarding
the initial IME visibility on CryptKeeper (Bug 31915865, Bug 35198715,
and Bug 36148078). Most likely we have introduced more bugs before
fixing previous bugs.
As the first step to disentangle multiple problems, this CL addresses
a long standing issue that CryptKeeper relies on @hide internal API
InputMethodManager#showSoftInputUnchecked(). As explained in
Bug 36015425, IMM#showSoftInputUnchecked() is considered harmful in
terms of bypassing standard IME focus handling flows, which prevents
us from taking advantage of historical debugging mechanism that we
have added recently in Bug 35079353.
Test: Manually verified that Bug 31915865 is still broken but this CL
does not make it worse.
1. Flash an image into a non direct-boot device.
2. Set up a device boot password.
3. adb reboot
After the step 3, the software keyboard shows up automatically
then suddenly disappears (Bug 35198715).
Bug: 36015425
Change-Id: I3cffeec286d9372ff05e85a49b82287cb1add8a2
Move duplicate code for switching input method from crypt_keeper_*_field.xml to an include.
Bug: 16375532
Change-Id: I0f9000d4a8c4bc8751b8cefd98fe429cbb02c37a
White on black material theme
Center text
Remove fade to black task
Fix emergency call button
Note - does not implement all requirements of frames in the defect. More
to follow.
Bug: 15328359
Change-Id: I878e59dccffff366ba2484bb77482e168cbd2b81
- use standard IME, but force it into ASCII if it's the default IME
- provide an IME switcher if there are multiple IME's, in case the
ASCII-capable one is a different one
- make the IME shown by default
Bug: 5004456
Bug: 4698473
Change-Id: Id40a164cfe599bfdb67b81f60d4ab8a52208de88