Sha256: b2d9aea4dd0bb4d18c201853044acdeef83e26d0f8b0a7b99a1bd670a3758ba1

Contents?: true

Size: 1.31 KB

Versions: 24

Compression:

Stored size: 1.31 KB

Contents

mixin Apiv1.FileDragDropMixin
  bindOnlyElement: ->
    @$().on "dragenter", (e) =>
      e.stopPropagation()
      e.preventDefault()
      @dragEntered e

    @$().on "dragleave", (e) =>
      e.stopPropagation()
      e.preventDefault()
      @dragLeft e

    @$().on "drop", (e) =>
      e.stopPropagation()
      e.preventDefault()
      @dragDropped e.originalEvent.dataTransfer.files

  unbindDocument: ->
    $(document).on "dragenter", (e) =>
      e.stopPropagation()
      e.preventDefault()

    $(document).on "dragleave", (e) =>
      e.stopPropagation()
      e.preventDefault()

    $(document).on "drop", (e) =>
      e.stopPropagation()
      e.preventDefault()

  bindDragAndDrop: ->
    @bindOnlyElement()
    @unbindDocument()

  unbindOnlyElement: ->
    @$().off "dragenter"
    @$().off "dragleave"
    @$().off "drop"

  unbindDragAndDrop: ->
    @unbindOnlyElement()
    @rebindDocument()

  rebindDocument: ->
    $(document).off "dragenter"
    $(document).off "dragleave"
    $(document).off "drop"

  dragEntered: (e) ->
    console.log "You haven't implemented dragEntered in #{this}"
    console.log e
  dragLeft: (e) ->
    console.log "You haven't implemented dragLeft in #{this}"
    console.log e
  dragDropped: (e) ->
    console.log "You haven't implemented dragDropped in #{this}"
    console.log e

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
cloudrider-0.3.23 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.3.22 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.3.21 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.3.20 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.3.0 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.18 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.15 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.14 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.12 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.11 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.10 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.9 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.8 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.7 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.6 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.5 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.4 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.3 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.2 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em
cloudrider-0.2.1 generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em