 
     false
 
-  # eventually this will only mark an area as needing drawing rather than the whole screen.
   # NOTE: For geometry changes, this gets called twice for the same element:
   #   once before and once after it "moves"
   #   As such, if we are invalidating rectangular areas, we need to do it immediately with each call.

    else
      @drawArea

    # descendant && log _needsRedrawing: {descendant: descendant.class, dirtyArea}

    @_dirtyDrawArea = dirtyArea.unionInto @_dirtyDrawArea

    super
    @queueDrawEpoch()

  ###############################################

  draw: ->

    Element.resetStats()
    frameStartTime = currentSecond()
