From 9eeb4570409b6a0cc4da45cd2c7d19282215c979 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Mon, 29 Aug 2022 16:13:54 +0000 Subject: [PATCH] fix keyboard shortcuts firing when typing text --- .../source/HabitState.kiss | 8 +++++--- projects/kiss-flixel/src/kiss_flixel/SimpleWindow.kiss | 5 ++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/projects/flixel-desktop-habit-puzzle-game/source/HabitState.kiss b/projects/flixel-desktop-habit-puzzle-game/source/HabitState.kiss index b2b3ad4e..fa063c15 100644 --- a/projects/flixel-desktop-habit-puzzle-game/source/HabitState.kiss +++ b/projects/flixel-desktop-habit-puzzle-game/source/HabitState.kiss @@ -117,6 +117,8 @@ (method startAdding [:EntryType type] (set typeAdding type) (set entryNameText (new FlxInputText 0 0 FlxG.width "" textSize true)) + (when entryWindow + (set entryWindow.keyboardEnabled false)) (set entryNameText.cameras [uiCamera]) (set entryNameText.hasFocus true) (add entryNameText)) @@ -128,7 +130,9 @@ (model.addEntry typeAdding [entryNameText.text]) (refreshModel) (entryNameText.kill) - (set entryNameText null)) + (set entryNameText null) + (when entryWindow + (set entryWindow.keyboardEnabled true))) (true (startAdding Todo)))) (when FlxG.keys.justPressed.UP @@ -173,7 +177,6 @@ false) (prop &mut :FlxTypedGroup logTexts (new FlxTypedGroup)) -(prop &mut :FlxKeyShortcutHandler shortcutHandler null) (prop &mut :HabitModel model null) @@ -216,7 +219,6 @@ (method :Void setModel [m &opt :RewardFile currentRewardFile] (set model m) - (set shortcutHandler (new FlxKeyShortcutHandler)) (let [p (m.totalPoints) &mut i 0 diff --git a/projects/kiss-flixel/src/kiss_flixel/SimpleWindow.kiss b/projects/kiss-flixel/src/kiss_flixel/SimpleWindow.kiss index a18f594e..a32cf851 100644 --- a/projects/kiss-flixel/src/kiss_flixel/SimpleWindow.kiss +++ b/projects/kiss-flixel/src/kiss_flixel/SimpleWindow.kiss @@ -2,6 +2,8 @@ (var &mut textSize 16) (var :kiss.List windowStack []) +(prop &mut keyboardEnabled true) + // TODO tooltip support with left-click and right-click action // icons and explanations @@ -96,7 +98,8 @@ (super.update elapsed) (set otherIsSelected false) (when (= (last windowStack) this) - (keyHandler.update) + (when keyboardEnabled + (keyHandler.update)) // Handle mouse input (let [camera (first (or cameras [])) mousePos (FlxG.mouse.getScreenPosition camera)]