From b964da6a83d5f006e9e87ce089a289b8711f0e51 Mon Sep 17 00:00:00 2001 From: MuK IT GmbH Date: Fri, 9 Nov 2018 11:03:59 +0000 Subject: [PATCH] publish muk_web_utils - 12.0 --- muk_web_utils/__manifest__.py | 2 +- muk_web_utils/static/src/js/core/dropzone.js | 16 +++++++++------- muk_web_utils/static/src/js/core/files.js | 2 +- muk_web_utils/static/src/js/libs/jquery.js | 6 +++--- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/muk_web_utils/__manifest__.py b/muk_web_utils/__manifest__.py index 5d2501e..8b6416f 100644 --- a/muk_web_utils/__manifest__.py +++ b/muk_web_utils/__manifest__.py @@ -20,7 +20,7 @@ { "name": "MuK Web Utils", "summary": """Utility Features""", - "version": "12.0.2.4.4", + "version": "12.0.2.4.5", "category": "Extra Tools", "license": "AGPL-3", "author": "MuK IT", diff --git a/muk_web_utils/static/src/js/core/dropzone.js b/muk_web_utils/static/src/js/core/dropzone.js index cc1caca..7643743 100644 --- a/muk_web_utils/static/src/js/core/dropzone.js +++ b/muk_web_utils/static/src/js/core/dropzone.js @@ -50,14 +50,14 @@ var DropzoneMixin = { _toggleDropzone: function(state) { this.$dropzone.toggleClass(this.dropzoneClasses, state); }, - _hoverDropzoneEnter: function(event) { - if(this._checkDropzoneEvent(event)) { + _hoverDropzoneEnter: function(event, originalEvent) { + if(this._checkDropzoneEvent(originalEvent)) { this._toggleDropzone(true); event.preventDefault(); return false; } }, - _hoverDropzoneLeave: function(event) { + _hoverDropzoneLeave: function(event, originalEvent) { this._toggleDropzone(false); event.stopPropagation(); event.preventDefault(); @@ -99,12 +99,14 @@ var FileDropzoneMixin = _.extend({}, DropzoneMixin, { dropzoneClasses: DropzoneMixin.dropzoneClasses + ' mk_dropzone_file', dropzoneCheck: window.File && window.FileReader && window.FileList && window.Blob, _checkDropzoneEvent: function(event) { - return this.dropzoneCheck; + var dataTransfer = event.originalEvent && event.originalEvent.dataTransfer; + var fileCheck = dataTransfer && _.some(dataTransfer.types, function(type) { + return type == "Files"; + }); + return this.dropzoneCheck && fileCheck; }, _handleDrag: function(event) { - if(event.originalEvent.dataTransfer) { - event.originalEvent.dataTransfer.dropEffect = 'copy'; - } + event.originalEvent.dataTransfer.dropEffect = 'copy'; }, }); diff --git a/muk_web_utils/static/src/js/core/files.js b/muk_web_utils/static/src/js/core/files.js index ab4d543..428975f 100644 --- a/muk_web_utils/static/src/js/core/files.js +++ b/muk_web_utils/static/src/js/core/files.js @@ -43,7 +43,7 @@ var traverseItems = function(items, tree) { }); defs.push(traverse); } else { - file = item.getAsFile(); + var file = item.getAsFile(); if(file) { if(file.size) { files.push(_.extend({}, file, {isFileItem: true})); diff --git a/muk_web_utils/static/src/js/libs/jquery.js b/muk_web_utils/static/src/js/libs/jquery.js index 8069ef0..68a4a22 100644 --- a/muk_web_utils/static/src/js/libs/jquery.js +++ b/muk_web_utils/static/src/js/libs/jquery.js @@ -29,7 +29,7 @@ $.fn.dndHover = function(options) { var collection = $(); self.on('dragenter', function(event) { if (collection.size() === 0) { - self.trigger('dndHoverStart'); + self.trigger('dndHoverStart', [event]); } collection = collection.add(event.target); }); @@ -37,14 +37,14 @@ $.fn.dndHover = function(options) { setTimeout(function() { collection = collection.not(event.target); if (collection.size() === 0) { - self.trigger('dndHoverEnd'); + self.trigger('dndHoverEnd', [event]); } }, 1); }); self.on('drop', function(event) { setTimeout(function() { collection = $(); - self.trigger('dndHoverEnd'); + self.trigger('dndHoverEnd', [event]); }, 1); }); });