       el = @editor.editorElement
       if not results.hasOwnProperty(ed.id)
         results[ed.id] = true
-        listener = ->
-          ed.presenter.updating = true
+        listener = debounce((->
+          window.requestAnimationFrame listener
           # ed.element.component.requestAnimationFrame ->
           res = ed.findMarkers().filter((m) -> m.result?).map((m) -> m.result)
           # reads

    @disposables.add @marker.onDidChange (e) => @checkMarker e

  readOffsetLeft: ->
    return unless @view.parentElement
    @left = parseInt @view.parentElement.style.left

  updateWidth: (elRect) ->
    w = elRect.width + elRect.left - 40 - @left
    if w < 100 then w = 100
    @view.style.maxWidth = w + 'px'

          # writes
          fastdom.mutate ->
            res.forEach (m) -> m.updateWidth(rect)
          ), 100)

        # ed.presenter.onDidUpdateState ->
        #   console.log "didUpdateState"

        resizer.listenTo el, listener

