@@ -7,14 +7,8 @@ angular.module('flow.dragEvents', ['flow.init'])
77 return {
88 'scope' : false ,
99 'link' : function ( scope , element , attrs ) {
10- var drop = function ( event ) {
10+ element . bind ( ' drop dragover' , function ( event ) {
1111 event . preventDefault ( ) ;
12- }
13-
14- element . bind ( 'drop dragover' , drop ) ;
15-
16- scope . $on ( '$destroy' , function ( ) {
17- element . unbind ( 'drop dragover' , drop ) ;
1812 } ) ;
1913 }
2014 } ;
@@ -29,36 +23,24 @@ angular.module('flow.dragEvents', ['flow.init'])
2923 'link' : function ( scope , element , attrs ) {
3024 var promise ;
3125 var enter = false ;
32-
33- var dragOver = function ( event ) {
34- if ( ! isFileDrag ( event ) ) {
35- return ;
36- }
37- if ( ! enter ) {
38- scope . $apply ( attrs . flowDragEnter ) ;
39- enter = true ;
40- }
41- $timeout . cancel ( promise ) ;
42- event . preventDefault ( ) ;
43- }
44-
45- element . bind ( 'dragover' , dragOver ) ;
46-
47- var dragLeave = function ( event ) {
48- promise = $timeout ( function ( ) {
49- scope . $eval ( attrs . flowDragLeave ) ;
50- promise = null ;
51- enter = false ;
52- } , 100 ) ;
53- }
54-
55- element . bind ( 'dragleave drop' , dragLeave ) ;
56-
57- scope . $on ( '$destroy' , function ( ) {
58- element . unbind ( 'dragover' , dragOver ) ;
59- element . unbind ( 'dragleave drop' , dragLeave ) ;
26+ element . bind ( 'dragover' , function ( event ) {
27+ if ( ! isFileDrag ( event ) ) {
28+ return ;
29+ }
30+ if ( ! enter ) {
31+ scope . $apply ( attrs . flowDragEnter ) ;
32+ enter = true ;
33+ }
34+ $timeout . cancel ( promise ) ;
35+ event . preventDefault ( ) ;
36+ } ) ;
37+ element . bind ( 'dragleave drop' , function ( event ) {
38+ promise = $timeout ( function ( ) {
39+ scope . $eval ( attrs . flowDragLeave ) ;
40+ promise = null ;
41+ enter = false ;
42+ } , 100 ) ;
6043 } ) ;
61-
6244 function isFileDrag ( dragEvent ) {
6345 var fileDrag = false ;
6446 var dataTransfer = dragEvent . dataTransfer || dragEvent . originalEvent . dataTransfer ;
@@ -71,4 +53,4 @@ angular.module('flow.dragEvents', ['flow.init'])
7153 }
7254 }
7355 } ;
74- } ] ) ;
56+ } ] ) ;
0 commit comments