mirror of
https://github.com/aphrody-labs/cef.git
synced 2026-10-14 05:09:23 +00:00
ui::KeyboardCode became a uint8_t on Windows in Chromium 148. A character event carries its character in CefKeyEvent::windows_key_code, so the ui::KeyEvent built from it keeps only the low byte in its key code, and the one-argument NativeWebKeyboardEvent constructor copies that key code into the web event. For characters whose low byte is 0x08 or 0x1B (e.g. U+041B Л, U+0408 Ј, U+011B ě) the web event then carries VK_BACK/VK_ESCAPE, and WebFrameWidgetImpl::HandleCharEvent drops it because WebKeyboardEvent::IsCharacterKey() is false for those codes. Use the two-argument constructor for KEYEVENT_CHAR, as RenderWidgetHostViewAura::InsertChar does for windowed browsers, so that windows_key_code carries the full character.