fix(input): fire a rebound SPACE only from the command line

#1713 dispatched a captured SPACE as a shortcut whenever it was rebound,
so with SPACE on FINALIZE a space typed into any other text field (layer
names, Properties, find) also ran FINALIZE, and the space it typed stayed
in the command line. Ask whether the command input has focus before
running the binding, and drop the space the field already inserted.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-11 23:38:06 +03:00
1 parent c56cdd6a26
commit 7e0866e647
3 files changed
+40 -67

No files matched your search

+6
View File
@@ -2618,6 +2618,12 @@ pub enum Message {
shortcut: String,
extend_selection: bool,
},
/// A text field captured SPACE while it is rebound away from
/// COMMANDSPACE; run the binding only if the command input has focus.
CommandLineSpaceProbe,
/// The command input has focus: drop the space it just typed and run the
/// SPACE binding.
CommandLineSpaceResolved,
/// A widget captured Up/Down; resolve it only if the command input owns
/// keyboard focus.
CommandLineArrowProbe {