aboutsummaryrefslogtreecommitdiffstats
path: root/content_scripts/mode.coffee
diff options
context:
space:
mode:
authorStephen Blott2015-04-18 12:49:32 +0100
committerStephen Blott2015-04-18 13:01:01 +0100
commita0959294e5724137ee08ad8c6b935e1c3284e06e (patch)
tree10591e42eb7bb52067f29200758df4b611ca5f68 /content_scripts/mode.coffee
parent870bd7831bdddf26d95017e390329b8f2bd3777e (diff)
downloadvimium-a0959294e5724137ee08ad8c6b935e1c3284e06e.tar.bz2
Mode indicator: more fix for link hints.
Diffstat (limited to 'content_scripts/mode.coffee')
-rw-r--r--content_scripts/mode.coffee12
1 files changed, 10 insertions, 2 deletions
diff --git a/content_scripts/mode.coffee b/content_scripts/mode.coffee
index ad66f2d7..a2ac5b8c 100644
--- a/content_scripts/mode.coffee
+++ b/content_scripts/mode.coffee
@@ -55,6 +55,7 @@ class Mode
# Update the mode indicator. Setting @options.indicator to a string shows a mode indicator in the
# HUD. Setting @options.indicator to 'false' forces no mode indicator. If @options.indicator is
# undefined, then the request propagates to the next mode.
+ # The active indicator can also be changed with @setIndicator().
if @options.indicator?
if @options.indicator then HUD?.show @options.indicator else HUD?.hide true, false
@stopBubblingAndTrue
@@ -130,10 +131,17 @@ class Mode
if KeyboardUtils.isPrintable event then @stopBubblingAndFalse else @stopBubblingAndTrue
Mode.modes.push @
- handlerStack.bubbleEvent 'indicator'
+ @setIndicator()
@logModes()
# End of Mode constructor.
+ setIndicator: (indicator = @options.indicator) ->
+ @options.indicator = indicator
+ Mode.setIndicator()
+
+ @setIndicator: ->
+ handlerStack.bubbleEvent "indicator"
+
push: (handlers) ->
handlers._name ||= "mode-#{@id}"
@handlers.push handlerStack.push handlers
@@ -152,7 +160,7 @@ class Mode
handlerStack.remove handlerId for handlerId in @handlers
Mode.modes = Mode.modes.filter (mode) => mode != @
@modeIsActive = false
- handlerStack.bubbleEvent 'indicator'
+ @setIndicator()
deactivateSingleton: (singleton) ->
Mode.singletons?[Utils.getIdentity singleton]?.exit()