Tapping shift might call `Utils.capitalize_string` on some symbols
(notably custom keys), which crashes on empty string.
This also happens on builtin layouts with `key1="\"`.
Bring a popup for choosing the voice IME when the voice key is pressed
for the first time or the list of voice IMEs installed on the device
change.
A preference stores the last selected IME and the last seen list of
IMEs.