Linux app: Korean/English IME switch lags by one keystroke with Fcitx5 in chat composer
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What version of the Codex/ChatGPT App are you using?
26.901.51231
What platform is your computer?
Linux (Omarchy / Arch-based)
Wayland session
Hyprland compositor
Fcitx5 with Korean input
What issue are you seeing?
When typing quickly in the desktop app chat composer and repeatedly switching between Korean and English input modes, the input-mode switch is sometimes applied one keystroke too late.
For example, the intended typing sequence is:
한글english한글english한글
but the actual result can become:
한글englishg나글englishg나글
The first g after switching from English to Korean is committed as English before the Korean input mode becomes active.
This makes rapid Korean/English mixed typing unreliable.
Steps to reproduce
- Run the OpenAI desktop app on Linux.
- Use Fcitx5 with Korean input enabled.
- Focus the chat composer.
- Type Korean text.
- Switch to English input and type English text.
- Immediately switch back to Korean and continue typing without pausing.
- Repeat several times quickly.
Example intended sequence:
한글english한글english한글
Observed result:
한글englishg나글englishg나글
Expected behavior
The input mode should switch immediately when the Korean/English toggle key is pressed.
The first keystroke after the toggle should be handled by the newly selected input mode.
Actual behavior
When switching rapidly, the first keystroke after the toggle is sometimes processed using the previous input mode.
This appears as a one-keystroke lag in the IME/input-mode transition.
Control tests
The issue appears to be specific to the desktop app.
Test results on the same machine:
- Terminal + Fcitx5: works correctly
- ChatGPT in a normal web browser: works correctly
- Desktop app with native Wayland: reproduces
- Desktop app launched with
--enable-wayland-ime: still reproduces - Desktop app launched with
--ozone-platform=x11: still reproduces
The app renderer normally runs with:
--ozone-platform=wayland
Since the problem also reproduces with X11/XWayland forced, it does not appear to be limited to the Wayland Ozone backend.
Environment
- OS: Omarchy (Arch-based Linux)
- Session type: Wayland
- Compositor: Hyprland
- Input framework: Fcitx5
- Input method: Korean / Hangul
- Desktop app: OpenAI ChatGPT/Codex Linux desktop app
- App version:
26.901.51231 - App process path:
/usr/lib/chatgpt/ChatGPT
Additional information
This does not reproduce in a terminal or in a normal web browser on the same machine.
That suggests the Fcitx5 configuration itself is working correctly and the issue may be related to keyboard/IME event handling in the desktop app's Electron/Chromium composer path.
Related Korean/CJK IME issues exist in this repository, including #27163 and other reports involving IME/input handling. This Linux case appears distinct because the input mode changes successfully, but the transition is sometimes applied one keystroke late.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue in the OpenAI desktop app at /usr/lib/chatgpt/ChatGPT with Fcitx5 Korean input, then compare native Wayland, --enable-wayland-ime, and --ozone-platform=x11. Trace the Electron/Chromium chat-composer input event path and verify that the first keystroke after each toggle uses the newly selected mode without affecting terminal or browser behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, linux
- Domain
- desktop, internationalization, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100