diff options
| -rw-r--r-- | content_scripts/mode_visual_edit.coffee | 8 | ||||
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 12 | ||||
| -rw-r--r-- | pages/help_dialog.html | 1 | 
3 files changed, 13 insertions, 8 deletions
| diff --git a/content_scripts/mode_visual_edit.coffee b/content_scripts/mode_visual_edit.coffee index d9a02cbd..9c599959 100644 --- a/content_scripts/mode_visual_edit.coffee +++ b/content_scripts/mode_visual_edit.coffee @@ -361,17 +361,17 @@ class Movement extends CountPrefix          @movements.n = (count) -> executeFind count, false          @movements.N = (count) -> executeFind count, true          @movements["/"] = -> -          @findMode = window.enterFindMode() +          @findMode = window.enterFindMode returnToViewport: true            @findMode.onExit => @changeMode VisualMode      #      # End of Movement constructor. -  # Yank the selection; always exits; either deletes the selection or removes it; set @yankedText and return +  # Yank the selection; always exits; either deletes the selection or collapses it; set @yankedText and return    # it.    yank: (args = {}) ->      @yankedText = @selection.toString()      @selection.deleteFromDocument() if @options.deleteFromDocument or args.deleteFromDocument -    @selection.removeAllRanges() unless @options.parentMode +    @selection.collapseToStart() unless @options.parentMode      message = @yankedText.replace /\s+/g, " "      message = message[...12] + "..." if 15 < @yankedText.length @@ -384,7 +384,7 @@ class Movement extends CountPrefix    exit: (event, target) ->      unless @options.parentMode or @options.oneMovementOnly -      @selection.removeAllRanges() if event?.type == "keydown" and KeyboardUtils.isEscape event +      @selection.collapseToStart() if event?.type == "keydown" and KeyboardUtils.isEscape event        # Disabled, pending discussion of fine-tuning the UX.  Simpler alternative is implemented above.        # # If we're exiting on escape and there is a range selection, then we leave it in place.  However, an diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index 50f97181..b14cd9c7 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -720,9 +720,12 @@ handleEnterForFindMode = ->    FindModeHistory.saveQuery findModeQuery.rawQuery  class FindMode extends Mode -  constructor: -> +  constructor: (options = {}) ->      @historyIndex = -1      @partialQuery = "" +    if options.returnToViewport +      @scrollX = window.scrollX +      @scrollY = window.scrollY      super        name: "find"        indicator: false @@ -730,6 +733,7 @@ class FindMode extends Mode        exitOnClick: true        keydown: (event) => +        window.scrollTo @scrollX, @scrollY if options.returnToViewport          if event.keyCode == keyCodes.backspace || event.keyCode == keyCodes.deleteKey            @exit() unless handleDeleteForFindMode()            @suppressEvent @@ -752,8 +756,8 @@ class FindMode extends Mode            DomUtils.suppressPropagation(event)            handlerStack.stopBubblingAndFalse -      keypress: (event) -> -        handlerStack.neverContinueBubbling -> +      keypress: (event) => +        handlerStack.neverContinueBubbling =>            if event.keyCode > 31              keyChar = String.fromCharCode event.charCode              handleKeyCharForFindMode keyChar if keyChar @@ -986,7 +990,7 @@ findModeRestoreSelection = (range = findModeInitialRange) ->    selection.addRange range  # Enters find mode.  Returns the new find-mode instance. -window.enterFindMode = -> +window.enterFindMode = (options = {}) ->    # Save the selection, so performFindInPlace can restore it.    findModeSaveSelection()    findModeQuery = rawQuery: "" diff --git a/pages/help_dialog.html b/pages/help_dialog.html index 0884f2cd..77c3e2bf 100644 --- a/pages/help_dialog.html +++ b/pages/help_dialog.html @@ -46,6 +46,7 @@      </div>      <div class="vimiumReset vimiumColumn" style="text-align:right">        <span class="vimiumReset">Version {{version}}</span><br/> +      <a href="https://github.com/philc/vimium#release-notes" class="vimiumReset">What's new?</a>      </div>    </div>  </div> | 
