Skip to content

Commit 283c04e

Browse files
committed
MotionMark: improve drag and drop feedback on developer page
https://bugs.webkit.org/show_bug.cgi?id=260099 rdar://113772977 Reviewed by Tim Nguyen. The MotionMark developer.html page allows you to drag and drop a JSON file, but the drop target didn't highlight on drag-over, and there was no feedback after dropping, even though things can be processing for a few seconds. So fix both issues. * PerformanceTests/MotionMark/resources/debug-runner/motionmark.css: (#drop-target.drag-over): (#drop-target:hover): Deleted. * PerformanceTests/MotionMark/resources/debug-runner/motionmark.js:
1 parent 85ca394 commit 283c04e

File tree

2 files changed

+18
-7
lines changed

2 files changed

+18
-7
lines changed

MotionMark/resources/debug-runner/motionmark.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,9 +287,8 @@ label.tree-label {
287287
color: rgb(235, 235, 235);
288288
}
289289

290-
#drop-target:hover {
290+
#drop-target.drag-over {
291291
background-color: rgba(255, 255, 255, .1);
292-
cursor: pointer;
293292
}
294293

295294
#options ul {

MotionMark/resources/debug-runner/motionmark.js

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -560,15 +560,27 @@ Utilities.extendObject(window.benchmarkController, {
560560
e.stopPropagation();
561561
e.preventDefault();
562562
}
563-
dropTarget.addEventListener("dragenter", stopEvent, false);
563+
dropTarget.addEventListener("dragenter", (e) => {
564+
dropTarget.classList.add("drag-over");
565+
stopEvent(e);
566+
}, false);
567+
564568
dropTarget.addEventListener("dragover", stopEvent, false);
565-
dropTarget.addEventListener("dragleave", stopEvent, false);
569+
570+
dropTarget.addEventListener("dragleave", (e) => {
571+
dropTarget.classList.remove("drag-over");
572+
stopEvent(e);
573+
}, false);
574+
566575
dropTarget.addEventListener("drop", function (e) {
567-
e.stopPropagation();
568-
e.preventDefault();
576+
stopEvent(e);
569577

570-
if (!e.dataTransfer.files.length)
578+
if (!e.dataTransfer.files.length) {
579+
dropTarget.classList.remove("drag-over");
571580
return;
581+
}
582+
583+
dropTarget.textContent = 'Processing…';
572584

573585
var file = e.dataTransfer.files[0];
574586

0 commit comments

Comments
 (0)