Support to drag and drop multiple images for upload at once Change-Id: I133bdb247f406a47d24ecb5b40fd4f40870c0a81 Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/imagare/client/UploadByDropOrPastePanel.java b/src/main/java/com/googlesource/gerrit/plugins/imagare/client/UploadByDropOrPastePanel.java index a34d0ec..3b6b0ce 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/imagare/client/UploadByDropOrPastePanel.java +++ b/src/main/java/com/googlesource/gerrit/plugins/imagare/client/UploadByDropOrPastePanel.java
@@ -124,20 +124,23 @@ if (!imagareSavedContent) { imagareSavedContent = elem.innerHTML; } - var f = event.dataTransfer.files[0]; - if (f) { - var r = new FileReader(); - r.onload = function(e) { - elem.innerHTML = imagareSavedContent; - if (f.type.match('image/.*')) { - @com.googlesource.gerrit.plugins.imagare.client.ImageUploader::stageImage(Ljava/lang/String;Ljava/lang/String;)(e.target.result, f.name); - } else { - $wnd.Gerrit.showError('no image file'); + for(var i = 0; i < event.dataTransfer.files.length; i++) { + var f = event.dataTransfer.files[i]; + if (f) { + if (!f.type.match('image/.*')) { + $wnd.Gerrit.showError('no image file: ' + f.name); } + + var r = new FileReader(); + r.file = f; + r.onload = function(e) { + elem.innerHTML = imagareSavedContent; + @com.googlesource.gerrit.plugins.imagare.client.ImageUploader::stageImage(Ljava/lang/String;Ljava/lang/String;)(e.target.result, this.file.name); + } + r.readAsDataURL(f); + } else { + $wnd.Gerrit.showError('Failed to load file: ' + f.name); } - r.readAsDataURL(f); - } else { - $wnd.Gerrit.showError('Failed to load file.'); } } }-*/;