       e.preventDefault()
       @mark = new Mark(e, @)
       @marks.create(@mark)
+      @mark.draw(e)
       @mark.onMouseDown(e)
-      @mark.dragging = true
-      @mark.draw(e)
 
   plotPoints: (xMin = @smallestX, xMax = @largestX) ->
     @xMin = xMin

    markLeftX = Math.max @startingPoint - @maxWidth(), Math.min @startingPoint, @toCanvasXPoint(e)
    markRightX = Math.max @startingPoint, @toCanvasXPoint(e)


    markLeftX = (Math.max markLeftX, (@closestXBelow || markLeftX))
    markRightX = (Math.min markRightX, (@closestXAbove || markRightX))

    width = (Math.min (Math.max (Math.abs markRightX - markLeftX), @minWidth()), @maxWidth())


    @element.style.left = markLeftX + "px"
    @element.style.width = width + "px"

    @element.style.textAlign = 'center'

    @startingPoint = @toCanvasXPoint(e) - @minWidth()

    @dragging = true

    @element.addEventListener 'mousemove', @updateCursor
    @element.addEventListener 'mousedown', @onMouseDown
