aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--content_scripts/hud.coffee19
1 files changed, 10 insertions, 9 deletions
diff --git a/content_scripts/hud.coffee b/content_scripts/hud.coffee
index 7fb70bb5..33656210 100644
--- a/content_scripts/hud.coffee
+++ b/content_scripts/hud.coffee
@@ -74,17 +74,18 @@ HUD =
findModeKeydown: (event) ->
window.scrollTo @findMode.scrollX, @findMode.scrollY if @findMode.options.returnToViewport
- if event.keyCode == keyCodes.backspace || event.keyCode == keyCodes.deleteKey
- @findMode.exit()
- new PostFindMode if findModeQuery.hasResults
- else if event.keyCode == keyCodes.enter
+ postExit = null
+
+ if event.keyCode == keyCodes.enter
handleEnterForFindMode()
- @findMode.exit()
- new PostFindMode if findModeQuery.hasResults
else if KeyboardUtils.isEscape event
- @findMode.exit()
- handleEscapeForFindMode()
- new PostFindMode if findModeQuery.hasResults
+ # We don't want FindMode to handle the click events that handleEscapeForFindMode can generate, so we
+ # wait until the mode is closed before running it.
+ postExit = handleEscapeForFindMode
+
+ @findMode.exit()
+ postExit?()
+ new PostFindMode if findModeQuery.hasResults
isReady: do ->
ready = false