Hello, you should be fine if you add this script to your page:
Ext.define("Ext.net.MultiUpload", {
override: "Ext.net.MultiUpload",
abortUpload: function (fileId) {
if (this.fileQueue[fileId].status == "started") {
switch (this.fileQueue[fileId].method) {
case "swfupload":
this.swfUploadStopped = true;
this.multiUpload.cancelQueue(); //this.multiUpload.stopUpload();
break;
case "dnd":
this.fileQueue[fileId].upload.xhr.abort();
break;
}
this.fileQueue[fileId].status = "aborted";
this.fireEvent("uploadaborted", this, this.fileQueue[fileId]);
}
}
});
Technical stuff ahead :)
Ext.NET has a custom code for the scripts after the stock code (from MultiUpload authors) that breaks the 'stop' in an attempt to display a nice 'cancelled' in the list. So it creates a 'cancelQueue' that effectively cancels everything in the queue, and overwrites the 'stopQueue' original command so that it fails if called alone.
The result of the override above is that, all files that have not been already uploaded will have their status changed to 'cancelled'. When you click again to start the upload, their upload will be resumed as expected. There's just a strange behavior on the order they are resumed back, but, nothing blocking at all.
As an alternative to the fix, you could also just add the original javascript for multiupload on your page, the result you'll get is, when you click 'Abort all', that the uploads are just aborted and the files keep at the 'queued' status. The resume goes smoothly in the files order, in contrast to the easier solution.
As a base to investigate this issue I used this example:
MultiUpload > Basic > Grid.