 
   decorationMarkerDidChange: (decoration) ->
     if decoration.isType('line')
+      @updateDecorations()
       @updateLinesState()
     if decoration.isType('line-number')
+      @updateDecorations()
       @updateLineNumbersState()
     if decoration.isType('highlight')
       @updateHighlightsState()

    @observeDecoration(decoration)

    if decoration.isType('line')
      @updateLinesState()
    if decoration.isType('line-number')
      @updateLineNumbersState()
    else if decoration.isType('highlight')
      @updateHighlightsState()
    else if decoration.isType('overlay')
      @updateOverlaysState()

  observeCursor: (cursor) ->
    didChangePositionDisposable = cursor.onDidChangePosition =>

      @lineHeight = lineHeight
      @updateHeightState()
      @updateVerticalScrollState()
      @updateDecorations()
      @updateLinesState()
      @updateCursorsState()
      @updateHighlightsState()
