@@ -33,6 +33,10 @@ angular.module('ui.sortable', [])
33
33
return ( / l e f t | r i g h t / ) . test ( item . css ( 'float' ) ) || ( / i n l i n e | t a b l e - c e l l / ) . test ( item . css ( 'display' ) ) ;
34
34
}
35
35
36
+ function afterStop ( e , ui ) {
37
+ ui . item . sortable . _destroy ( ) ;
38
+ }
39
+
36
40
var opts = { } ;
37
41
38
42
// directive specific options
@@ -95,7 +99,14 @@ angular.module('ui.sortable', [])
95
99
return ! ! ui . item . sortable . _isCustomHelperUsed ;
96
100
} ,
97
101
_isCanceled : false ,
98
- _isCustomHelperUsed : ui . item . sortable . _isCustomHelperUsed
102
+ _isCustomHelperUsed : ui . item . sortable . _isCustomHelperUsed ,
103
+ _destroy : function ( ) {
104
+ for ( var key in ui . item . sortable ) {
105
+ if ( ui . item . sortable . hasOwnProperty ( key ) ) {
106
+ ui . item . sortable [ key ] = undefined ;
107
+ }
108
+ }
109
+ }
99
110
} ;
100
111
} ;
101
112
@@ -262,6 +273,8 @@ angular.module('ui.sortable', [])
262
273
// call apply after stop
263
274
value = combineCallbacks (
264
275
value , function ( ) { scope . $apply ( ) ; } ) ;
276
+
277
+ value = combineCallbacks ( value , afterStop ) ;
265
278
}
266
279
// wrap the callback
267
280
value = combineCallbacks ( callbacks [ key ] , value ) ;
@@ -277,6 +290,9 @@ angular.module('ui.sortable', [])
277
290
278
291
angular . forEach ( callbacks , function ( value , key ) {
279
292
opts [ key ] = combineCallbacks ( value , opts [ key ] ) ;
293
+ if ( key === 'stop' ) {
294
+ opts [ key ] = combineCallbacks ( opts [ key ] , afterStop ) ;
295
+ }
280
296
} ) ;
281
297
282
298
} else {
0 commit comments