aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Chelleport.hs3
-rw-r--r--src/Chelleport/AppState.hs4
2 files changed, 5 insertions, 2 deletions
diff --git a/src/Chelleport.hs b/src/Chelleport.hs
index 4ad20a0..d4c21ed 100644
--- a/src/Chelleport.hs
+++ b/src/Chelleport.hs
@@ -32,6 +32,9 @@ eventHandler state event =
-- Esc: Quit
| checkKey [key SDL.KeycodeEscape, pressed] ev ->
Just ShutdownApp
+ -- <C-r>: Refresh current mode
+ | checkKey [ctrl, key SDL.KeycodeR, pressed] ev ->
+ Just $ SetMode $ stateMode state
-- <C-s>: Enable search mode
| checkKey [ctrl, key SDL.KeycodeS, pressed] ev ->
Just $ SetMode $ ModeSearch def
diff --git a/src/Chelleport/AppState.hs b/src/Chelleport/AppState.hs
index a304c96..bcb7dce 100644
--- a/src/Chelleport/AppState.hs
+++ b/src/Chelleport/AppState.hs
@@ -132,7 +132,7 @@ update _ state ResetKeys = do
where
resetMode (ModeHints hintsData) = ModeHints $ hintsData {stateKeySequence = [], stateIsMatched = False}
resetMode (ModeSearch searchData@(ModeSearchData {searchWords})) =
- ModeSearch $ searchData {searchWords = searchWords, searchFilteredWords = searchWords}
+ ModeSearch $ searchData {searchWords = searchWords, searchFilteredWords = searchWords, searchInputText = ""}
-- Initialize current mode
update flush state InitializeMode =
@@ -149,7 +149,7 @@ update flush state InitializeMode =
showWindow
flush
matches <- getWordsInImage screenshot
- let updatedSearchData = searchData {searchWords = matches, searchFilteredWords = matches}
+ let updatedSearchData = searchData {searchWords = matches, searchFilteredWords = matches, searchInputText = ""}
pure (state {stateMode = ModeSearch updatedSearchData, stateIsModeInitialized = True}, Nothing)
-- Set mode