From 37868fd18be20f938c15484e9fcaf37f1085a77f Mon Sep 17 00:00:00 2001 From: asilberschneider Date: Wed, 23 Jul 2014 13:39:42 +0200 Subject: [PATCH] Prevent flapping animations when removing / adding dragover class Wait 200ms before removing dragover class to prevent issues with CSS3 transitions which rely on the dragover class to be induced, otherwise this may cause awkward "flapping" of the animation when the dragover class is applied/removed/applied again. --- demo/war/js/angular-file-upload.js | 2 +- dist/angular-file-upload.js | 2 +- dist/angular-file-upload.min.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/demo/war/js/angular-file-upload.js b/demo/war/js/angular-file-upload.js index c77379cf..ba2ebc1d 100644 --- a/demo/war/js/angular-file-upload.js +++ b/demo/war/js/angular-file-upload.js @@ -229,7 +229,7 @@ angularFileUpload.directive('ngFileDrop', [ '$parse', '$timeout', '$location', f leaveTimeout = $timeout(function() { elem.removeClass(elem[0].__drag_over_class_); elem[0].__drag_over_class_ = null; - }); + }, 200); }, false); var fn = $parse(attr['ngFileDrop']); elem[0].addEventListener("drop", function(evt) { diff --git a/dist/angular-file-upload.js b/dist/angular-file-upload.js index 3a8db507..b5f9ec2e 100644 --- a/dist/angular-file-upload.js +++ b/dist/angular-file-upload.js @@ -229,7 +229,7 @@ angularFileUpload.directive('ngFileDrop', [ '$parse', '$timeout', '$location', f leaveTimeout = $timeout(function() { elem.removeClass(elem[0].__drag_over_class_); elem[0].__drag_over_class_ = null; - }); + }, 200); }, false); var fn = $parse(attr['ngFileDrop']); elem[0].addEventListener("drop", function(evt) { diff --git a/dist/angular-file-upload.min.js b/dist/angular-file-upload.min.js index 2b636a69..4b946bcd 100644 --- a/dist/angular-file-upload.min.js +++ b/dist/angular-file-upload.min.js @@ -1,2 +1,2 @@ /*! 1.6.1 */ -!function(){var a=angular.module("angularFileUpload",[]);a.service("$upload",["$http","$q","$timeout",function(a,b,c){function d(d){d.method=d.method||"POST",d.headers=d.headers||{},d.transformRequest=d.transformRequest||function(b,c){return window.ArrayBuffer&&b instanceof window.ArrayBuffer?b:a.defaults.transformRequest[0](b,c)};var e=b.defer();window.XMLHttpRequest.__isShim&&(d.headers.__setXHR_=function(){return function(a){a&&(d.__XHR=a,d.xhrFn&&d.xhrFn(a),a.upload.addEventListener("progress",function(a){e.notify(a)},!1),a.upload.addEventListener("load",function(a){a.lengthComputable&&e.notify(a)},!1))}}),a(d).then(function(a){e.resolve(a)},function(a){e.reject(a)},function(a){e.notify(a)});var f=e.promise;return f.success=function(a){return f.then(function(b){a(b.data,b.status,b.headers,d)}),f},f.error=function(a){return f.then(null,function(b){a(b.data,b.status,b.headers,d)}),f},f.progress=function(a){return f.then(null,null,function(b){a(b)}),f},f.abort=function(){return d.__XHR&&c(function(){d.__XHR.abort()}),f},f.xhr=function(a){return d.xhrFn=function(b){return function(){b&&b.apply(f,arguments),a.apply(f,arguments)}}(d.xhrFn),f},f}this.upload=function(b){b.headers=b.headers||{},b.headers["Content-Type"]=void 0,b.transformRequest=b.transformRequest||a.defaults.transformRequest;var c=new FormData,e=b.transformRequest,f=b.data;return b.transformRequest=function(a,c){if(f)if(b.formDataAppender)for(var d in f){var g=f[d];b.formDataAppender(a,d,g)}else for(var d in f){var g=f[d];if("function"==typeof e)g=e(g,c);else for(var h=0;h'),h=0;h0&&f[0].webkitGetAsEntry&&"file"!=c.protocol()&&f[0].webkitGetAsEntry().isDirectory)for(var h=0;h'),h=0;h0&&f[0].webkitGetAsEntry&&"file"!=c.protocol()&&f[0].webkitGetAsEntry().isDirectory)for(var h=0;h