Umlaut and accented characters do not generate keypress event
Categories
(Firefox for Android Graveyard :: Keyboards and IME, defect, P5)
Tracking
(firefox-esr68 affected, firefox70 affected)
People
(Reporter: thomasa88, Unassigned)
References
()
Details
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Steps to reproduce:
- Go to https://www.quirksmode.org/dom/events/tests/keys.html
- Select the input box in the middle of the page
- Write "ä" (tried with Swiftkey and Samsung keyboard)
Note: I just noticed that Android Chrome does not produce the keypress event for any key. However my Firefox desktop browser generates keypress for normal ("a") and accented keys ("ä").
Actual results:
Test Results log says:
keydown on text
keydown on form
keydown on #document
keydown on window
keyup on text
keyup on form
keyup on #document
keyup on window
Expected results:
Test Results log shows (keypress is now shown):
keydown on text
keydown on form
keydown on #document
keydown on window
keypress on text
keypress on form
keypress on #document
keypress on window
keyup on text
keyup on form
keyup on #document
keyup on window
I checked out the events in WebIDE/Console and got this:
Android:
window.onkeypress=console.log; window.onkeydown=console.log; window.onkeyup=console.log;
# Write "aä" in the input field
keydown { target: input#testInputMinimal, key: "a", charCode: 0, keyCode: 65 }
keypress { target: input#testInputMinimal, key: "a", charCode: 97, keyCode: 0 }
keyup { target: input#testInputMinimal, key: "a", charCode: 0, keyCode: 65 }
keydown { target: input#testInputMinimal, key: "Process", charCode: 0, keyCode: 229 }
keyup { target: input#testInputMinimal, key: "Process", charCode: 0, keyCode: 229 }
Windows:
window.onkeypress=console.log; window.onkeydown=console.log; window.onkeyup=console.log;
# Write "aä" in the input field
keydown { target: input#testInputMinimal, key: "a", charCode: 0, keyCode: 65 }
keypress { target: input#testInputMinimal, key: "a", charCode: 97, keyCode: 0 }
keyup { target: input#testInputMinimal, key: "a", charCode: 0, keyCode: 65 }
keydown { target: input#testInputMinimal, key: "ä", charCode: 0, keyCode: 222 }
keypress { target: input#testInputMinimal, key: "ä", charCode: 228, keyCode: 0 }
keyup { target: input#testInputMinimal, key: "ä", charCode: 0, keyCode: 222 }
Also tested with the Samsung keyboard with predictions turned off. The result is the same.
Hi, I reproduce the issue with Samsung Galaxy S8+(Android 8.0.0) on builds Firefox Release 68.0, Firefox Beta 68.1b5 build 1 and Firefox Nightly 70.0a1 (2019-08-07).
Note: I have also tested on a different device Sony Xperia Z5 (Android 7.0) on Firefox Beta 68.1b5 and with other characters as well and the keypress event is not taken into consideration.
I think that this bug may be related to Bug 695626. Based on my investigation I will mark this bug as new.
Updated•6 years ago
|
Comment 4•6 years ago
|
||
Process key may be valid if using software keyboard. It depends on software keyboard implementation, and it sometimes generate composing string instead of direct input string.
Updated•5 years ago
|
Comment 5•4 years ago
|
||
Updated•4 years ago
|
Description
•