diff options
| author | mrmr1993 | 2015-06-02 17:09:00 +0100 | 
|---|---|---|
| committer | mrmr1993 | 2015-06-10 17:21:24 +0100 | 
| commit | e92b9db2aeaa09b1855900936252e27e3535f9da (patch) | |
| tree | d8fdc5fd1a0a78547a2a547c3643ca756c164504 | |
| parent | 3e3ec8925d2646f9a7fbec3b69c75df8bdc5e86d (diff) | |
| download | vimium-e92b9db2aeaa09b1855900936252e27e3535f9da.tar.bz2 | |
Handle up and down keys directly in the HUD
| -rw-r--r-- | content_scripts/hud.coffee | 9 | ||||
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 2 | ||||
| -rw-r--r-- | pages/hud.coffee | 19 | 
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 ( ) 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 ( ) 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. | 
