       @hideMarker marker for marker in @hintMarkers
       @showMarker matched, @markerMatcher.hintKeystrokeQueue.length for matched in linksMatched
 
-    @setOpenLinkMode @mode, false
+    @setIndicator()
 
   # When only one hint remains, activate it in the appropriate way.  The current frame may or may not contain
   # the matched link, and may or may not have the focus.  The resulting four cases are accounted for here by

    @markerMatcher.fillInMarkers @hintMarkers

    @hintMode = new Mode
      name: "hint/#{mode.name}"
      indicator: false
      singleton: "link-hints-mode"
      passInitialKeyupEvents: true

      keydown: @onKeyDownInMode.bind this
      keypress: @onKeyPressInMode.bind this

    @setIndicator()
    @hintMode.onExit (event) =>
      if event?.type == "click" or (event?.type == "keydown" and
        (KeyboardUtils.isEscape(event) or event.keyCode in [keyCodes.backspace, keyCodes.deleteKey]))
          HintCoordinator.sendMessage "exit", isSuccess: false

    # 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.
    @hintMarkerContainingDiv = DomUtils.addElementList (marker for marker in @hintMarkers when marker.isLocalMarker),
      id: "vimiumHintMarkerContainer", className: "vimiumReset"

  setOpenLinkMode: (@mode, shouldPropagateToOtherFrames = true) ->
    if shouldPropagateToOtherFrames
      HintCoordinator.sendMessage "setOpenLinkMode", modeIndex: availableModes.indexOf @mode
    else
      @setIndicator()

  setIndicator: ->
    if windowIsFocused()
      typedCharacters = @markerMatcher.linkTextKeystrokeQueue?.join("") ? ""
      indicator = @mode.indicator + (if typedCharacters then ": \"#{typedCharacters}\"" else "") + "."
      @hintMode.setIndicator indicator

  #
  # Creates a link marker for the given link.
