diff options
| author | Stephen Blott | 2015-01-02 13:22:31 +0000 |
|---|---|---|
| committer | Stephen Blott | 2015-01-02 13:23:32 +0000 |
| commit | b179d80ac9c35eb85de3995e4c4fb7dc9945ed75 (patch) | |
| tree | 99d96777f6a175c396ac132dca16526c5f96f1e6 | |
| parent | 298ee34b1c90b0203a74a2d158858428475bfd95 (diff) | |
| download | vimium-b179d80ac9c35eb85de3995e4c4fb7dc9945ed75.tar.bz2 | |
Modes; fix badges.
| -rw-r--r-- | background_scripts/main.coffee | 1 | ||||
| -rw-r--r-- | content_scripts/mode.coffee | 3 | ||||
| -rw-r--r-- | content_scripts/mode_insert.coffee | 7 | ||||
| -rw-r--r-- | content_scripts/mode_passkeys.coffee | 7 | ||||
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 7 |
5 files changed, 12 insertions, 13 deletions
diff --git a/background_scripts/main.coffee b/background_scripts/main.coffee index 3ce05a49..fc0a792f 100644 --- a/background_scripts/main.coffee +++ b/background_scripts/main.coffee @@ -373,6 +373,7 @@ root.updateActiveState = updateActiveState = (tabId) -> else # We didn't get a response from the front end, so Vimium isn't running. setBrowserActionIcon(tabId,disabledIcon) + setBadge {badge: ""} handleUpdateScrollPosition = (request, sender) -> updateScrollPosition(sender.tab, request.scrollX, request.scrollY) diff --git a/content_scripts/mode.coffee b/content_scripts/mode.coffee index 468f587a..9016caa2 100644 --- a/content_scripts/mode.coffee +++ b/content_scripts/mode.coffee @@ -56,8 +56,7 @@ class Mode # Default updateBadgeForMode handler. This is overridden by sub-classes. The default is to install the # current mode's badge, unless the bade is already set. updateBadgeForMode: (badge) -> - badge.badge ||= @badge - Mode.propagate + handlerStack.alwaysPropagate => badge.badge ||= @badge # Static method. Used externally and internally to initiate bubbling of an updateBadgeForMode event. @updateBadge: -> diff --git a/content_scripts/mode_insert.coffee b/content_scripts/mode_insert.coffee index c8b05217..f37cf1ad 100644 --- a/content_scripts/mode_insert.coffee +++ b/content_scripts/mode_insert.coffee @@ -52,11 +52,10 @@ class InsertMode extends Mode @isInsertMode = true Mode.updateBadge() - # Override (and re-use) updateBadgeForMode() from Mode.updateBadgeForMode(). Use insert-mode badge only if - # we're active and no mode higher in stack has already inserted a badge. + # Override updateBadgeForMode() from Mode.updateBadgeForMode(). updateBadgeForMode: (badge) -> - @badge = if @isActive() then "I" else "" - super badge + handlerStack.alwaysPropagate => + super badge if @isActive() constructor: -> super diff --git a/content_scripts/mode_passkeys.coffee b/content_scripts/mode_passkeys.coffee index 6320c698..bb4518ae 100644 --- a/content_scripts/mode_passkeys.coffee +++ b/content_scripts/mode_passkeys.coffee @@ -33,14 +33,15 @@ class PassKeysMode extends Mode constructor: -> super name: "passkeys" + badge: "P" keydown: (event) => @handlePassKeyEvent event keypress: (event) => @handlePassKeyEvent event keyup: -> Mode.propagate - # Overriding and re-using updateBadgeForMode() from Mode.updateBadgeForMode(). + # Overriding updateBadgeForMode() from Mode.updateBadgeForMode(). updateBadgeForMode: (badge) -> - @badge = if @passKeys and not @keyQueue then "P" else "" - super badge + handlerStack.alwaysPropagate => + super badge if @passKeys and not @keyQueue root = exports ? window root.PassKeysMode = PassKeysMode diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index da1f5de1..6d63b24a 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -124,9 +124,9 @@ initializePreDomReady = -> # Overriding updateBadgeForMode() from Mode.updateBadgeForMode(). updateBadgeForMode: (badge) -> - badge.badge ||= @badge - badge.badge = "" unless isEnabledForUrl - Mode.propagate # Not really necessary, but makes intention clear and does no harm. + handlerStack.alwaysPropagate => + badge.badge ||= @badge + badge.badge = "" unless isEnabledForUrl # Initialize the scroller. The scroller install a key handler, and this is next on the handler stack, # immediately above normal mode. @@ -686,7 +686,6 @@ updateFindModeQuery = -> findModeQuery.matchCount = text.match(pattern)?.length handleKeyCharForFindMode = (keyChar) -> - console.log "xxxxxxxxxxxxxxx" findModeQuery.rawQuery += keyChar updateFindModeQuery() performFindInPlace() |
