Closed dinakaranr closed 2 days ago
The issue is that the picker-triggering longhold is triggered by Android code, and the picker triggers an Android-side change that pushes a new View / Activity to the front... interrupting the standard event flow. We don't get the "key up" event.
Things pass through here:
Android-side gesture detector method: https://github.com/keymanapp/keyman/blob/d6992097fda7daf9846286436d657c6e65c63e86/android/KMEA/app/src/main/java/com/keyman/engine/KMKeyboard.java#L312-L317
On the way to here, eventually:
As things are, Web will naturally recover and cancel the globe-key highlighting on the next keypress regardless, even without a fix. It's not the prettiest situation, though. The best and cleanest way to "fix" this is to add a new call into JS to clear active highlighting whenever the picker is activated, given the moving parts involved.
Describe the bug
The globe key shows an enabled state after selecting a default keyboard from the "Keyboard Picker." This problem appears only if Keyman has more than one keyboard.
Reproduce the bug
Steps to reproduce:
Expected behavior
No response
Related issues
No response
Keyman apps
Keyman version
Keyman-17.0.325 stable
Operating system
No response
Device
No response
Target application
No response
Browser
No response
Keyboard name
english_eurolatin_sil
Keyboard version
No response
Language name
English
Additional context
No response