         @startBlinkingCursors()
       else
         @stopBlinkingCursors(false)
-      @updateFocusedState()
-      @updateHiddenInputState()
+      @shouldUpdateFocusedState = true
+      @shouldUpdateHiddenInputState = true
+
+      @emitDidUpdateState()
 
   setScrollTop: (scrollTop) ->
     scrollTop = @constrainScrollTop(scrollTop)

  characterWidthsChanged: ->
    @updateContentDimensions()

    @updateHorizontalScrollState()
    @updateVerticalScrollState()
    @updateScrollbarsState()
    @updateHiddenInputState()
    @updateContentState()
    @updateDecorations()
    @updateLinesState()
    @updateCursorsState()
    @updateOverlaysState()

  clearScopedCharacterWidths: ->
    @characterWidthsByScope = {}

      @updateHighlightState(decoration)

    if decoration.isType('overlay')
      @shouldUpdateOverlaysState = true

    @emitDidUpdateState()

  decorationPropertiesDidChange: (decoration, event) ->
    {oldProperties} = event
