properly fix folder upload to use delegatedEvent

This commit is contained in:
Vincent Chan 2016-06-14 11:51:03 +02:00
parent 864c3a8fbb
commit 937d21ed29
2 changed files with 12 additions and 4 deletions

View File

@ -2514,12 +2514,13 @@
var self = this;
// handle upload events
var fileUploadStart = this.$el.find('#file_upload_start');
var fileUploadStart = this.$el;
var delegatedElement = '#file_upload_start';
// detect the progress bar resize
fileUploadStart.on('resized', this._onResize);
fileUploadStart.on('fileuploaddrop', function(e, data) {
fileUploadStart.on('fileuploaddrop', delegatedElement, function(e, data) {
OC.Upload.log('filelist handle fileuploaddrop', e, data);
if (self.$el.hasClass('hidden')) {
@ -2527,7 +2528,10 @@
return false;
}
var dropTarget = $(e.originalEvent.target);
console.log(e);
var dropTarget = $(e.delegatedEvent.target);
console.log(dropTarget);
// check if dropped inside this container and not another one
if (dropTarget.length
&& !self.$el.is(dropTarget) // dropped on list directly

View File

@ -1267,7 +1267,11 @@
e.preventDefault();
this._getDroppedFiles(dataTransfer).always(function (files) {
data.files = files;
if (that._trigger('drop', e, data) !== false) {
if (that._trigger(
'drop',
$.Event('drop', {delegatedEvent: e}),
data
) !== false) {
that._onAdd(e, data);
}
});