protonscr

[Bug] fcitx5 IME key events leak into Steam client text fields when typing fast (CEF Chromium 126)

steamopen Steam client
ValveSoftware/steam-for-linux#13471 · opened 2026-07-31 by CloudyMountain · updated 2026-08-19 · 1 comments · github
CCloudyMountain 2026-07-31 github

Summary

When typing Chinese with the fcitx5 input method into any Steam client (desktop UI) text field while typing quickly, some keystrokes bypass the IME's preedit and leak directly into the text field as raw Latin letters. Slow typing works correctly.

Steps to reproduce

  1. Fedora 44, KDE Plasma 6.7.2, Wayland session, fcitx5 5.1.19 + rime engine active (ime input works system-wide).
  2. Focus any Steam client text input — e.g. Friends chat, Store search box.
  3. Enable the Chinese IME and type pinyin quickly (e.g. zhongwen typed fast, without pausing between keys).
  4. Observe: occasionally one of the Latin letters appears directly in the text field instead of being captured by the IME preedit (the rest of the letters appear in the preedit as expected).

Expected behavior

While the IME preedit is active, all key events go to the input method; no raw letters appear in the field.

Actual behavior

Fast typing leaks some keystrokes into the field as raw Latin characters, mixed with committed Chinese text. Removing them requires deleting the leaked letters manually.

Environment / diagnostics

  • Steam client build ID: 1781041600
  • Steam CEF: Chromium 126.0.6478.183 (from ~/.steam/steam/logs/cef_log.txt) — notably ~2 years behind current Chromium; newer Chromium releases contain multiple Linux IME key-event race fixes
  • OS: Fedora Linux 44 (KDE Plasma Desktop), Plasma 6.7.2, session type: Wayland
  • Kernel: 7.1.4-204.fc44.x86_64
  • fcitx5: 5.1.19 (core), fcitx5-gtk3 5.1.6, fcitx5-qt5 5.1.13
  • IME env vars confirmed inside the running Steam process:
    • GTK_IM_MODULE=fcitx
    • QT_IM_MODULE=fcitx
    • SDL_IM_MODULE=fcitx
    • XMODIFIERS=@im=fcitx
    • LANG=en_US.UTF-8
  • ibus is masked/absent; fcitx5 is the only input method.

Additional evidence (narrowing the bug to Steam's CEF)

  • Not affected: VS Code (Electron/CEF), other Chromium-based apps, and native GTK apps — fast IME typing works correctly there.
  • The leak only reproduces in the Steam desktop client → points to Steam's bundled CEF build (Chromium 126) rather than fcitx5 itself.
  • Only occurs when typing quickly (multiple keys during an active preedit); slow typing is unaffected — consistent with a key-event forwarding race in the IME integration.

Related issues for context

FFeiSaMa 2026-08-19 github

Also reproducing on Arch Linux (GNOME Wayland, fcitx5 5.1.21 + rime):

  • Steam client build 1785799196 (2026-08-03), CEF still Chromium 126.0.6478.183
  • IME env vars confirmed inside the Steam process: GTK_IM_MODULE=fcitx, QT_IM_MODULE=fcitx, SDL_IM_MODULE=fcitx, XMODIFIERS=@im=fcitx, LANG=zh_CN.UTF-8
  • Fast pinyin typing in the Store search bar / Friends chat occasionally leaks a Latin letter directly into the field; slow typing works fine
  • Other Chromium-based apps (e.g. VS Code) and native GTK apps on the same system are not affected — confirms the issue is specific to Steam's bundled CEF build

Still present on the latest stable client as of Aug 2026.