aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--content_scripts/hud.coffee9
-rw-r--r--content_scripts/vimium_frontend.coffee2
-rw-r--r--pages/hud.coffee19
3 files changed, 17 insertions, 13 deletions
diff --git a/content_scripts/hud.coffee b/content_scripts/hud.coffee
index c64670ee..9eeb4579 100644
--- a/content_scripts/hud.coffee
+++ b/content_scripts/hud.coffee
@@ -88,15 +88,6 @@ HUD =
handleEnterForFindMode()
findMode.exit()
new PostFindMode if findModeQueryHasResults
- else if event.keyCode == keyCodes.upArrow
- if rawQuery = FindModeHistory.getQuery findMode.historyIndex + 1
- findMode.historyIndex += 1
- findMode.partialQuery = findModeQuery.rawQuery if findMode.historyIndex == 0
- HUD.showFindMode rawQuery
- else if event.keyCode == keyCodes.downArrow
- findMode.historyIndex = Math.max -1, findMode.historyIndex - 1
- rawQuery = if 0 <= findMode.historyIndex then FindModeHistory.getQuery findMode.historyIndex else findMode.partialQuery
- HUD.showFindMode rawQuery
else if KeyboardUtils.isEscape event
findMode.exit()
handleEscapeForFindMode()
diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee
index ef554cae..a6387da1 100644
--- a/content_scripts/vimium_frontend.coffee
+++ b/content_scripts/vimium_frontend.coffee
@@ -690,8 +690,6 @@ window.handleEnterForFindMode = ->
class FindMode extends Mode
constructor: (@options = {}) ->
- @historyIndex = -1
- @partialQuery = ""
if @options.returnToViewport
@scrollX = window.scrollX
@scrollY = window.scrollY
diff --git a/pages/hud.coffee b/pages/hud.coffee
index a3599c8a..19dff25b 100644
--- a/pages/hud.coffee
+++ b/pages/hud.coffee
@@ -1,3 +1,5 @@
+findMode = null
+
document.addEventListener "keydown", (event) ->
inputElement = document.getElementById "hud-find-input"
return unless inputElement? # Don't do anything if we're not in find mode.
@@ -6,8 +8,7 @@ document.addEventListener "keydown", (event) ->
transferrableEvent[key] = value if typeof value in ["number", "string"]
if (event.keyCode in [keyCodes.backspace, keyCodes.deleteKey] and inputElement.textContent.length == 0) or
- event.keyCode in [keyCodes.enter, keyCodes.upArrow, keyCodes.downArrow] or
- KeyboardUtils.isEscape event
+ event.keyCode == keyCodes.enter or KeyboardUtils.isEscape event
DomUtils.suppressEvent event
UIComponentServer.postMessage
@@ -16,6 +17,16 @@ document.addEventListener "keydown", (event) ->
# Replace \u00A0 (&nbsp;) with a normal space.
query: inputElement.textContent.replace "\u00A0", " "
+ else if event.keyCode == keyCodes.upArrow
+ if rawQuery = FindModeHistory.getQuery findMode.historyIndex + 1
+ findMode.historyIndex += 1
+ findMode.partialQuery = findModeQuery.rawQuery if findMode.historyIndex == 0
+ handlers.showFindMode rawQuery
+ else if event.keyCode == keyCodes.downArrow
+ findMode.historyIndex = Math.max -1, findMode.historyIndex - 1
+ rawQuery = if 0 <= findMode.historyIndex then FindModeHistory.getQuery findMode.historyIndex else findMode.partialQuery
+ handlers.showFindMode rawQuery
+
handlers =
show: (data) ->
document.getElementById("hud").innerText = data.text
@@ -50,6 +61,10 @@ handlers =
# Replace \u00A0 (&nbsp;) with a normal space.
UIComponentServer.postMessage {name: "search", query: inputElement.textContent.replace "\u00A0", " "}
+ findMode =
+ historyIndex: -1
+ partialQuery: ""
+
updateMatchesCount: ({matchCount, showMatchText}) ->
countElement = document.getElementById "hud-match-count"
return unless countElement? # Don't do anything if we're not in find mode.