Index: LayoutTests/fast/events/drop-generate-user-gesture.html |
diff --git a/LayoutTests/fast/events/drop-generate-user-gesture.html b/LayoutTests/fast/events/drop-generate-user-gesture.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9f1a2fbe6b6b9c36da78a46174ba07fb926b72ef |
--- /dev/null |
+++ b/LayoutTests/fast/events/drop-generate-user-gesture.html |
@@ -0,0 +1,49 @@ |
+<!DOCTYPE html> |
+<html> |
+<head> |
+<script src="../../resources/js-test.js"></script> |
+<style> |
+#div1 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;} |
+#drag1{width:170px;height:36px;display:block;} |
+</style> |
+</head> |
+<body> |
+<p>Drag the following text into the rectangle:</p> |
+<div id="div1"></div> |
+<br> |
+<div id="drag1" draggable="true">Drag me</div> |
+<pre id="console"></pre> |
+<script> |
+ window.jsTestIsAsync = true; |
+ description("Test that drop event generates user gesture"); |
+ |
+ if (window.testRunner) { |
+ testRunner.setCloseRemainingWindowsWhenComplete(true); |
+ testRunner.setCanOpenWindows(); |
+ testRunner.setPopupBlockingEnabled(true); |
+ } |
+ |
+ function drop() { |
+ // Consume user gesture. |
+ shouldBeDefined("window.open('about:blank')"); |
+ finishJSTest(); |
+ } |
+ |
+ function allowDrop(ev) { |
+ ev.preventDefault(); |
+ } |
+ |
+ document.getElementById("div1").addEventListener("dragover", allowDrop); |
+ document.getElementById("div1").addEventListener("drop", drop); |
+ |
+ if (window.eventSender) { |
+ var drag = document.querySelector("#drag1"); |
+ eventSender.mouseMoveTo(drag.offsetLeft + 10, drag.offsetTop + 5); |
+ eventSender.mouseDown(); |
+ eventSender.leapForward(100); |
+ eventSender.mouseMoveTo(drag.offsetLeft + 10, drag.offsetTop - 30); |
+ eventSender.mouseUp(); |
+ } |
+</script> |
+</body> |
+</html> |