-
-
Notifications
You must be signed in to change notification settings - Fork 5k
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
Compendium of Android keyboard input bugs (new lines, backspaces, phantom caret, duplicated lines, etc.) with videos #6145
Comments
Thanks for documenting these. As you mention, they may not get fixed in 5.x, but I'll make sure to go over this list and see if these cases work in version 6. |
Completely understandable - I'm keenly looking forward to version 6 stabilizing. Thanks so much for all your work on this project! I've used codemirror across many of my projects - you've created something that seems to be part of the essential "infrastructure" of the internet at this point. |
Reproduced Backspacing Problem on Android 9, Firefox 68.8, Google keyboard, CodeMirror 5.52.0. Seen in https://github.com/dbis-uibk/relax Typing multiple "words" and holding backspace afterwards will change cursor position to the word before. This behavior gets worse when working with multiple lines. Additionally, according to dbis-uibk/relax#100 the capital letter gets moved to the end of a word in some cases. |
On Android 10, I noticed that when I type a space using an onscreen keyboard, the space is deleted. When I type a second space, it finally "sticks". When I use a bluetooth keyboard, this issue does NOT occur. |
This error seems to persist, and it also happens with other Android browsers. It would be just great to see it fixed; it’s the main reason why we are sometimes avoiding CodeMirror, or adding plaintext fallbacks for mobile Android devices. |
There are quite a few open and closed issues on Android keyboard related bugs already (#5924, #3508, #4637, #4927, #5514, #4129, #4307, #3653, #4011, #331, #5245, #4043), but many have gone stale or the OP didn't provide enough details for marijnh and contributors to debug. So here's a fresh issue with demos tested on the latest versions of different browsers and keyboards on Android.
As mentioned by @adrianheine here and elsewhere, these problems may not ever be solved in CodeMirror 5 due to architectural problems, but I figured I'd document them anyway in case there is a desire by some contributor(s) to take a look.
For all of the following demos/examples Android 8.0.0 was used. I've tested iPhone 8+ and it doesn't seem to have any of these problems.
Browser: Firefox 68.5.0 (latest)
Keyboard: Latest version of SwiftKey (7.4.7.6, released 30th January 2020)
Problem: Cannot backspace an empty line to remove it. Notice that SwiftKey's autocomplete does think that we're backspacing the text (it suggests "hello" and eventually "script" when the phantom caret gets to the script tag).
Video: https://i.imgur.com/rxAFAeg.mp4
Browser: Chrome Mobile 79.0 (latest)
Keyboard: Latest version of SwiftKey (7.4.7.6, released 30th January 2020)
Problem: Backspacing an empty line causes keyboard to disappear momentarily. If one backspaces too fast and thus taps the screen while the keyboard is momentarily hidden, codemirror focus is lost and the user has to click into the codemirror textarea again.
Video: https://i.imgur.com/3Kfz5CY.mp4
Browser: Firefox Mobile 68.5.0 (latest)
Keyboard: Latest version of Gboard (8.9.14, released 16th Dec 2019)
Problem: Can't backspace empty line.
Video: https://i.imgur.com/0lwQaPL.mp4
Browser: Firefox Mobile 68.5.0 (latest)
Keyboard: Latest version of Gboard (8.9.14, released 16th Dec 2019)
Problem: When at indentation level 0 (no indentation), things get very weird. Pressing
enter
/return
moves the current line down, and the caret to the start of it. After creating a few lines, if you tap one of the lines, they seem to duplicate, and then when you type, the text seemingly appears backward, but at the start of the line.Video: https://i.imgur.com/jBsLVGK.mp4
Browser: Chrome Mobile 79.0 (latest)
Keyboard: Latest version of Gboard (8.9.14, released 16th Dec 2019)
Problem: When at indentation level 0 (no indentation), things also get very weird with Chrome. Similar problems to Firefox, except tapping the lines seems to instantaneously separate them so there's a new line between each.
Video: https://i.imgur.com/HKrgBDe.mp4
Browser: Chrome Mobile 79.0 (latest)
Keyboard: Latest version of Gboard (8.9.14, released 16th Dec 2019)
Problem: This is just a bonus video showing how the weird behavior in the above bugs depends on the indentation level.
Demo: https://i.imgur.com/zJi210I.mp4
The text was updated successfully, but these errors were encountered: