fix: solve #3365 — terminal Ctrl chords fail under non-Latin IME#3366
Closed
github-actions[bot] wants to merge 1 commit into
Closed
fix: solve #3365 — terminal Ctrl chords fail under non-Latin IME#3366github-actions[bot] wants to merge 1 commit into
github-actions[bot] wants to merge 1 commit into
Conversation
Terminal-reserved Ctrl chords (Ctrl+C/D/Z…) failed under non-Latin IME because isTerminalReservedEvent() checked event.key, which reflects IME composition (e.g. Korean ㅇ for D). Switch to event.code which reports the physical key regardless of IME state, matching the approach already used by resolveHotkeyFromEvent(). Closes #3365
|
This is now superseded by #3391, which rewrites |
Collaborator
|
Closing as stale: the referenced issue is already closed (fix landed elsewhere or won't-fix). Bulk audit 2026-05-06. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Terminal-reserved Ctrl chords (
Ctrl+C,Ctrl+D,Ctrl+Z, etc.) stopped working when a non-Latin IME (e.g. Korean 2-Set) was active in Superset Desktop.Root cause
isTerminalReservedEvent()inapps/desktop/src/renderer/hotkeys/utils/utils.tscheckedevent.keyto identify reserved chords. Under non-Latin IME,event.keyreflects the composed character (e.g.ㅇfor the D key in Korean), soctrl+ㅇnever matched the reserved set. Combined with the blanket Ctrl/Cmd interception from #3337, the chord was swallowed entirely.Fix
event.code(physical key, IME-independent) instead ofevent.key, matching the approach already used by the siblingresolveHotkeyFromEvent()function.TERMINAL_RESERVEDset to use code-derived values (ctrl+backslashinstead ofctrl+\).Test plan
utils.test.tswith 12 tests covering:event.key)event.keycode and pass with the fix.Closes #3365
Summary by cubic
Fixes terminal Ctrl chords (Ctrl+C, Ctrl+D, Ctrl+Z, etc.) failing when a non‑Latin IME is active in Superset Desktop. Uses physical key codes to recognize reserved chords regardless of IME so they reach the terminal and closes #3365.
event.code(notevent.key) inisTerminalReservedEventctrl+backslash)Written for commit 85ceb8f. Summary will update on new commits.