Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[web] "ctrl-alt" and "shift-ctrl-alt" layers on longpress keys do not output the expected on Android 10 device #3569

Closed
MakaraSok opened this issue Sep 5, 2020 · 1 comment · Fixed by #3659

Comments

@MakaraSok
Copy link
Collaborator

Describe the bug
Longpress keys with references to "ctrl-alt" and "shift-ctrl-alt" do not produce the expected output on Anndroid 10. The output could be a beep or an unexpected character.

To Reproduce
Steps to reproduce the behavior:

  1. Download this keyboard
  2. Add it to Keyman for Android on Android 10 Emulator
  3. Go to Numeric layer and then longpress on [ and then pick {.
  4. See error, a beep was output instead of {.

You can also try other longpress on Numeric layer to see similar behavior.

Expected behavior
When given correct references on longpress keys to the existing key sequences (i.e. ctrl-alt and shift-ctrl-alt), the longpress keys should output the character being referred to.


(Delete the irrelevant sections)

Android:

  • Device: Pixel 2
  • OS: Android 10
  • Keyman version: 13.0.6218
  • Target application: Keyman for Android

Keyman Developer:

  • OS: Windows 10 1909
  • Keyman Developer version: 13.0.111

Keyboard
https://community.software.sil.org/t/longpress-key-gives-invalid-key-beep-on-phones-but-works-correctly-on-test-keyboard-on-web/3823/3?u=makara

Additional context
A work around: changing the key Modifier to "current layer" and Code to "K_4" for the longpress key fix the issue for now.

This issue may occur on iOS as well, but I do not have a device to test.

@MakaraSok MakaraSok added bug developer/ compatibility Issues in interactions between Keyman and a specific app or group of apps, e.g. incorrect output android/app/ labels Sep 5, 2020
@jahorton jahorton added the web/ label Sep 9, 2020
@jahorton jahorton added this to the 14.0 milestone Sep 9, 2020
@darcywong00 darcywong00 changed the title [developer] "ctrl-alt" and "shift-ctrl-alt" on longpress keys does not output the expected on Android 10 [web] "ctrl-alt" and "shift-ctrl-alt" layers on longpress keys do not output the expected on Android 10 device Oct 6, 2020
@darcywong00 darcywong00 removed compatibility Issues in interactions between Keyman and a specific app or group of apps, e.g. incorrect output developer/ labels Oct 6, 2020
@darcywong00
Copy link
Contributor

darcywong00 commented Oct 6, 2020

Upon investigation, this defect has existed in KMW kmwembedded.ts since at least stable-10.0. That's why the keyboards still work in mobile viewport of KMW.

var t=keyName.split('-') fails to account for layers that contain - (e.g. ctrl-alt or shift-ctrl-alt-shift).

Only affects Keyman for Android.
Keyman for iPhone and iPad disconnected this path in #2968 for a separate issue.

@darcywong00 darcywong00 modified the milestones: 14.0, P10S17 Oct 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants