     @hideMarker marker for marker in hintMarkers when marker.hint.frameId != frameId
     @postKeyState = @postKeyState.bind this, hintMarkers
 
-  setOpenLinkMode: (@mode) ->
+  setOpenLinkMode: (@mode, doNotPropagate = false) ->
     @hintMode.setIndicator @mode.indicator if DomUtils.isTopFrame()
+    unless doNotPropagate
+      HintCoordinator.sendMessage "setMode", modeIndex: availableModes.indexOf @mode
 
   #
   # Creates a link marker for the given link.

    @onExit = [] unless frameId == activateModeFrameId
    @linkHintsMode = new LinkHintsMode hints, availableModes[modeIndex]

  postKeyState: (request) ->
    @linkHintsMode.postKeyState request

  activateActiveHintMarker: ->
    @linkHintsMode.activateLink @linkHintsMode.markerMatcher.activeHintMarker

  exit: ->
    @onExit.pop()() while 0 < @onExit.length

          (event?.type == "keydown" and event.keyCode in [ keyCodes.backspace, keyCodes.deleteKey ])
        HintCoordinator.sendMessage "exitFailure"

    @setOpenLinkMode mode, true

    # Note(philc): Append these markers as top level children instead of as child nodes to the link itself,
    # because some clickable elements cannot contain children, e.g. submit buttons.
