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

Typing cursor stuck in previous input field after different input field is focused [touchscreen, weston-keyboard] #413

Open
c-b5r opened this issue Mar 17, 2022 · 5 comments
Labels
bug Something isn't working

Comments

@c-b5r
Copy link

c-b5r commented Mar 17, 2022

Versions:

  • cog-0.8.1-r0.armv7at2hf_neon
  • libwpe-1.0-1-1.10.0-r0.armv7at2hf_neon
  • wpewebkit-2.32.1-r0.armv7at2hf_neon
  • libwpebackend-fdo-1.0-1-1.8.3-r0.armv7at2hf_neon
  • wpewebkit-web-inspector-plugin-2.32.1-r0.armv7at2hf_neon

Expected behavior:

Given are 2 HTML input fields INPUT-1 and INPUT-2

  1. Tap on INPUT-1
    → The input cursor "|" now blinks inside INPUT-1
  2. Input "ABC"
    INPUT-1 = "ABC"
  3. Tap on INPUT-2
    → The input cursor now blinks inside INPUT-2
  4. Input "XZY"
    INPUT-2 = "XZY"

Actual behavior:

Let's look at two ways this can go:

Steps 1.-2. are identical.

Variant A:

  1. Tap on INPUT-2
    → The input cursor now blinks inside INPUT-2
  2. Input "XZY"
    → The input cursor jumps back into INPUT-1
    INPUT-1 = "ABCXZY" (the text inside the previous input field gets APPENDED)
    → INPUT-2 = "" (just focused input field is not edited)

Variant B:

  1. Tap somewhere empty to blur and close the keyboard first
  2. Tap on INPUT-2
    → The input cursor now blinks inside INPUT-2
  3. Input "XZY"
    → The input cursor jumps back into INPUT-1
    INPUT-1 = "XZY" (the text inside the previous input field gets OVERWRITTEN)
    → INPUT-2 = "" (just focused input field is not edited)

Further Information:

  • The expected behavior can be achieved by explicitly pressing after the input to INPUT-1 is finished BEFORE blurring
  • If INPUT-1 already had text in it in the above scenario then only the freshly input text will be overwritten. A visual indicator of this is that the newly input text will always be underlined for some reason not know to me. I suspect that it is some kind of "input method feature"
  • When vigorously switching between multiple input fields and going somewhat crazy it sometimes happens that the keyboard stays open and kind of freezes - no input possible anymore and no way to close it by blurring (cannot tell how to reproduce this one)
@aperezdc aperezdc added the bug Something isn't working label May 20, 2022
@aperezdc
Copy link
Member

I suspect this is something related to input handling in the platform/wayland/cog-platform-wl.c, because the WebKit layout tests sure include many with input fields; but there input events are simulated instead of coming from real devices.

@woodreamz
Copy link

woodreamz commented Nov 16, 2022

I am facing the exact same issue with cog 0.16.1, it's reproductible with many websites.

@CharlieBra7o Did you find a solution?

@aperezdc Do you have an idea?

Thanks!

@c-b5r
Copy link
Author

c-b5r commented Nov 18, 2022

@woodreamz: Unfortunately, I did not find a solution with weston-keyboard. I ended up compiling maliit-keyboard (2.0.0) into my yocto (dunfell) build, which works very well with WPE. With yocto kirkstone, however, I'm still having trouble with this combination getting the keyboard to work - still searching for the issue...

EDIT: Sorry for accidentally closing this

@c-b5r c-b5r closed this as completed Nov 18, 2022
@c-b5r c-b5r reopened this Nov 18, 2022
@woodreamz
Copy link

@CharlieBra7o Thanks for the update! We have the same issue and we are also trying to find a solution. This issue seems to be the same as this one.

@micdini
Copy link

micdini commented Feb 8, 2024

Hello, same issue with cog 0.17.90 and wpewebkit 2.40.x

Could not find a solution still.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants