 
     _setupDragBehavior: (svg) ->
       self = this
-      draggable = new TimelineDraggable(svg)
+      draggable = new TimelineDraggable(svg, L.Browser.touch)
       draggable.on 'drag', ({dx}) =>
         @_pan(dx, false)
       draggable.on 'dragend', ({dx}) =>

      offset = getTransformX(@_element)
      {dx: @_newPos.x - @_startPos.x, start: @_startPoint.x - offset, end: @_startPoint.x + @_newPos.x - offset}

    _updatePosition: ->
      @fire('predrag')
      @fire('drag')

  TimelineDraggable.prototype.addEventListener = TimelineDraggable.prototype.on


    parseFloat(re.exec(transform)?[1] ? defaultValue)

  TimelineDraggable = L.Draggable.extend
    initialize: (element, @animate=false) ->
      @on 'dragstart predrag drag dragend', ((e) -> L.Util.extend(e, @state())), this
      @on 'dragstart', @_onDragStart, this

      L.DomUtil.setPosition(element, L.point(0, 0), true)
      L.Draggable.prototype.initialize.call(this, element, null)

      @enable()

