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

bug(web): Web and Android keyboards appear simultaneously when a physical keyboard is connected to an Android mobile. #12848

Open
1 of 8 tasks
dinakaranr opened this issue Dec 26, 2024 · 7 comments
Assignees
Milestone

Comments

@dinakaranr
Copy link

Describe the bug

the SIL_IPA keyboard and Android keyboard appeared on the browser at the same time.

Reproduce the bug

Steps to reproduce:

  1. Open the Chrome browser on the Android Mobile
  2. Connect the physical keyboard to Android Mobile.
  3. Open the *.index.html from the "build artifacts".(keyman-18.0.162-alpha build)
  4. Click the 'View Keymanweb use samples' link button.
  5. Click the 'Example1 - Toggle UI, all resources in the same folder as page' link button.
  6. Add "sil_ipa" in the ‘Add a keyboard by keyboard name’ box.
  7. Click in the "text area" box.
  8. Type n letter from a physical keyboard.
  9. Type > symbol from a physical keyboard.
    Actual Results: Here, the SIL_IPA keyboard and Android keyboard appeared on the browser at the same time.
    SIL_IPA keyboard appeared behind the Android keyboard. if I type letters on the physical keyboard and the Android keyboard letters do not give output.

Three test cases failed for the same problem.
Test case for Baseline_Add_SIL_IPA (Touch / Hardware Platforms)
Test case for Baseline_Add_Khmer_Angkor (Touch / Hardware Platforms)
Test case for Baseline_Swedish (Touch / Hardware Platforms)
Please refer to the attached screenshots

Expected behavior

Related issues

No response

Keyman apps

  • Keyman for Android
  • Keyman for iPhone and iPad
  • Keyman for Linux
  • Keyman for macOS
  • Keyman for Windows
  • Keyman Developer
  • KeymanWeb
  • Other - give details at bottom of form

Keyman version

keyman-18.0.162-alpha build

Operating system

Android 14

Device

Samsung Mobile

Target application

No response

Browser

Chrome

Keyboard name

No response

Keyboard version

No response

Language name

No response

Additional context

No response

@dinakaranr dinakaranr added the bug label Dec 26, 2024
@ermshiperete ermshiperete added this to the A18S19 milestone Jan 6, 2025
@ermshiperete ermshiperete self-assigned this Jan 6, 2025
@darcywong00
Copy link
Contributor

The physical keyboard is tied to the system (Android keyboard).

Even though you have the "IPA" keyboard above, the Android system keyboard characters are what is output.

@darcywong00 darcywong00 closed this as not planned Won't fix, can't repro, duplicate, stale Jan 15, 2025
@github-project-automation github-project-automation bot moved this to Done in Keyman Jan 15, 2025
@mcdurdin mcdurdin reopened this Jan 15, 2025
@jahorton
Copy link
Contributor

This PR from a while back should help point in the right direction; the bug sounds like something went "off" with its code.

#7343

@jahorton jahorton assigned ermshiperete and jahorton and unassigned darcywong00 Jan 15, 2025
@darcywong00
Copy link
Contributor

From meet-after discussion, I'll investigate by making a new test page (with no KeymanWeb elements), with inputMode="none" and observing how the external keyboard behaves.

@darcywong00
Copy link
Contributor

So I copied the web test page
/web/src/test/auto/resources/fixtures/inputs-numeric-none-disabled_email.html

and tested the 3 input fields with the external keyboard.

I could type in each of the 3 input fields with the external keyboard.
For inputMode=none and inputMode=email, the device displayed a mini US keyboard:

Image

@ermshiperete
Copy link
Contributor

ermshiperete commented Jan 15, 2025

Darcy's test page: https://darcywong00.github.io/examples/input/

I get slightly different results with the test page when the "Show virtual keyboard" setting is disabled:

Gboard keyboard

Numeric inputmode: no keyboard, but a bar with symbols passwords/payment methods/address (but I think that's Chrome's); typing with hardware keyboard is possible
None inputmode: no keyboard; typing with hardware keyboard is possible
Email inputmode: mini US keyboard (like Darcy's screenshot), plus the bar with pw/payment/address; typing with hardware keyboard is possible

Image

Microsoft Swiftkey keyboard

Numeric inputmode: numeric keyboard, plus pw/... bar; typing with hardware keyboard is possible and makes the keyboard disappear
None inputmode: no keyboard; typing with hardware keyboard is possible, a bar with suggestions might pop up
Email inputmode: email keyboard with suggestion bar, plus the bar with pw/payment/address; typing with hardware keyboard is possible

Keepass2Android keyboard

Numeric inputmode: no keyboard, pw bar, typing with hardware keyboard is possible
None inputmode: no keyboard, no bar, typing with hardware keyboard is possible
Email inputmode: no keyboard, pw bar, typing with hardware keyboard is possible

Keyman Alpha keyboard

Numeric inputmode: no keyboard, pw bar, typing with hardware keyboard is NOT possible
None inputmode: no keyboard, no bar, typing with hardware keyboard is NOT possible
Email inputmode: no keyboard, pw bar, typing with hardware keyboard is NOT possible

@ermshiperete
Copy link
Contributor

ermshiperete commented Jan 15, 2025

Looks like we discovered this problem already when testing/reviewing #7343. The suggested workaround was to disable the "Show virtual keyboard" setting (which appears in the (OS) keyboard selection pop up when a physical keyboard is connected).

However, given the findings in the previous comment that show that you can't type on the hardware keyboard when the Keyman keyboard is enabled, I don't think that is a good option.

@ermshiperete
Copy link
Contributor

ermshiperete commented Jan 15, 2025

Strange - the control-by-control example doesn't show two keyboards.

It does show the behavior if I reconnect the keyboard.

@darcywong00 darcywong00 modified the milestones: A18S19, A18S20 Jan 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

5 participants