 
   didMutate: (mutations) =>
     significantMutations = @findSignificantMutations(mutations)
-    if significantMutations.length
-      defer => @delegate?.elementDidMutate?(significantMutations)
+    @mutations.push(significantMutations...)
+    @notifyDelegateOnce()
 
   # Private
 


  constructor: (@element) ->
    @observer = new window.MutationObserver @didMutate
    @start()

  start: ->

        nodes.push(mutation.addedNodes...)
        nodes.push(mutation.removedNodes...)
    nodes

  reset: ->
    @mutations = []

  notifyDelegateOnce: ->
    if @mutations.length
      clearTimeout(@timeout)
      @timeout = setTimeout =>
        @delegate?.elementDidMutate?(@mutations)
        @reset()
      , 1
