Issue metadata
Sign in to add a comment
|
Keyboard layout is wrong (the translation happens twice) |
||||||||||||||||||||||||
Issue descriptionChrome Version: 73.0.3662.0 OS: 11525.0.0 (kevin) What steps will reproduce the problem? (1) Add Dvorak in chrome://settings/inputMethods (1) Switch to Dvorak in the system tray (2) Type something in Dvorak Expected: The keyboard keys "asdf" type out "aoeu" Actual: The keyboard keys "asdf" type out "ar.g" Meaning that the translation from physical key to logical key is happening twice: a => a => a s => o => r d => e => . f => u => g This only applies to text input. Keyboard shortcuts (like Ctrl+T for a new tab) work correctly (Ctrl+K on the physical keyboard corresponds to Ctrl+T). Key map: https://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard#/media/File:KB_United_States_Dvorak.svg
,
Jan 5
Trying the above in https://dvcs.w3.org/hg/d4e/raw-file/tip/key-event-test.html may provide useful information. With the caveat that this bug proves my knowledge is outdated, what's supposed to happen is this: Under //ui/events, the keyboard layout maps a physical keyboard key (“DOM3 code” in the above tester, ui::KeyEvent::code_ in chromium) to a layout-specific interpretation. The interpretation contains both modern standard (“DOM3 key”, ui::KeyEvent::key_) and legacy (“keyCode”, ui::KeyEvent::key_code_ aka VKEY) components. These are strongly typed in chromium and have incompatible representations (ui::DomCode is roughly the USB layer code, vs ui::DomKey is roughly the Unicode code point) so there's no way this can happen twice by accident. Shortcuts use the legacy value (“keyCode”, ui::KeyEvent::key_code_) and it appears this is unaffected. The ui::KeyEvent is used by IME and/or Blink layers to generate text. I don't know those at all. CC-ing more people who can help find someone to triage.
,
Jan 7
I flashed 11525.0.0 on my kevin device and cannot repro this issue. Note that 11525.0.0 has Chrome Version: 73.0.3654.0 instead of 73.0.3662.0. I am flashing my kevin device to 11534.0.0 which has 73.0.3662.0 to repro this...
,
Jan 7
Not repro on 11534.0.0,73.0.3662.0.
,
Jan 14
|
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by derat@chromium.org
, Jan 5Labels: ReleaseBlock-Beta