aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Blott2015-06-13 12:55:01 +0100
committerStephen Blott2015-06-13 12:55:01 +0100
commitc21aa9ab03d5537d575d3c46d3affce7f3ece5e5 (patch)
tree3853a4ed69886cefdcfa36aaf859d1b6dd8f8f9c
parent26a0653318be7bae4254e2e643dcb5ae5e2498e9 (diff)
downloadvimium-c21aa9ab03d5537d575d3c46d3affce7f3ece5e5.tar.bz2
Refactor findInPlace.
This code belongs together, so we put it together.
-rw-r--r--content_scripts/hud.coffee4
-rw-r--r--content_scripts/mode_find.coffee5
-rw-r--r--content_scripts/mode_visual_edit.coffee2
3 files changed, 6 insertions, 5 deletions
diff --git a/content_scripts/hud.coffee b/content_scripts/hud.coffee
index cd34efe8..2f4e008c 100644
--- a/content_scripts/hud.coffee
+++ b/content_scripts/hud.coffee
@@ -33,9 +33,7 @@ HUD =
@tween.fade 1.0, 150
search: (data) ->
- window.scrollTo @findMode.scrollX, @findMode.scrollY if @findMode.options.returnToViewport
- FindMode.updateQuery data.query
- @findMode.findInPlace()
+ @findMode.findInPlace data.query
# Show the number of matches in the HUD UI.
matchCount = if FindMode.query.parsedQuery.length > 0 then FindMode.query.matchCount else 0
diff --git a/content_scripts/mode_find.coffee b/content_scripts/mode_find.coffee
index ff9506e7..21918be2 100644
--- a/content_scripts/mode_find.coffee
+++ b/content_scripts/mode_find.coffee
@@ -84,7 +84,10 @@ class FindMode extends Mode
selection.removeAllRanges()
selection.addRange range
- findInPlace: ->
+ findInPlace: (query) ->
+ # If requested, restore the scroll position (so that failed searches leave the scroll position unchanged).
+ window.scrollTo @scrollX, @scrollY if @options.returnToViewport
+ FindMode.updateQuery query
# Restore the selection. That way, we're always searching forward from the same place, so we find the right
# match as the user adds matching characters, or removes previously-matched characters. See #1434.
@restoreSelection()
diff --git a/content_scripts/mode_visual_edit.coffee b/content_scripts/mode_visual_edit.coffee
index eaaf94d4..170071ac 100644
--- a/content_scripts/mode_visual_edit.coffee
+++ b/content_scripts/mode_visual_edit.coffee
@@ -353,7 +353,7 @@ class Movement extends CountPrefix
do =>
doFind = (count, backwards) =>
initialRange = @selection.getRangeAt(0).cloneRange()
- for [0...count] by 1
+ for [0...count]
unless FindMode.execute null, {colorSelection: false, backwards}
@setSelectionRange initialRange
HUD.showForDuration("No matches for '#{FindMode.query.rawQuery}'", 1000)