aboutsummaryrefslogtreecommitdiffstats
path: root/content_scripts
diff options
context:
space:
mode:
authormrmr19932017-11-11 19:05:59 +0000
committermrmr19932017-11-11 19:22:06 +0000
commitea43bf138015af760adca605692ab8876c969446 (patch)
tree37c1a5058cee26441f168340ac94204d28c8a4f6 /content_scripts
parent7cb53750bfb5f62849fcfb52f67b1e04ad0f9672 (diff)
downloadvimium-ea43bf138015af760adca605692ab8876c969446.tar.bz2
Clear tabCount explicitly when needed, instead of implicitly and undoing
This changes the behaviour of Enter and Space. * It should make no difference for Enter, as it exits the mode. * It makes no sense for rotating the layering of the hints to clear the active hint (when the next key is pressed), so I suspect it was an oversight.
Diffstat (limited to 'content_scripts')
-rw-r--r--content_scripts/link_hints.coffee10
1 files changed, 3 insertions, 7 deletions
diff --git a/content_scripts/link_hints.coffee b/content_scripts/link_hints.coffee
index f2fb7c19..291f524e 100644
--- a/content_scripts/link_hints.coffee
+++ b/content_scripts/link_hints.coffee
@@ -232,13 +232,9 @@ class LinkHintsMode
onKeyDownInMode: (event) ->
return if event.repeat
- previousTabCount = @tabCount
- @tabCount = 0
-
# NOTE(smblott) The modifier behaviour here applies only to alphabet hints.
if event.key in ["Control", "Shift"] and not Settings.get("filterLinkHints") and
@mode in [ OPEN_IN_CURRENT_TAB, OPEN_WITH_QUEUE, OPEN_IN_NEW_BG_TAB, OPEN_IN_NEW_FG_TAB ]
- @tabCount = previousTabCount
# Toggle whether to open the link in a new or current tab.
previousMode = @mode
key = event.key
@@ -262,6 +258,7 @@ class LinkHintsMode
else if KeyboardUtils.isBackspace event
if @markerMatcher.popKeyChar()
+ @tabCount = 0
@updateVisibleMarkers()
else
# Exit via @hintMode.exit(), so that the LinkHints.activate() "onExit" callback sees the key event and
@@ -273,15 +270,14 @@ class LinkHintsMode
HintCoordinator.sendMessage "activateActiveHintMarker" if @markerMatcher.activeHintMarker
else if event.key == "Tab"
- @tabCount = previousTabCount + (if event.shiftKey then -1 else 1)
+ if event.shiftKey then @tabCount-- else @tabCount++
@updateVisibleMarkers @tabCount
else if event.key == " " and @markerMatcher.shouldRotateHints event
- @tabCount = previousTabCount
HintCoordinator.sendMessage "rotateHints"
else
- @tabCount = previousTabCount if event.ctrlKey or event.metaKey or event.altKey
+ @tabCount = 0 unless event.ctrlKey or event.metaKey or event.altKey
unless event.repeat
keyChar =
if Settings.get "filterLinkHints"