summaryrefslogtreecommitdiffstats
path: root/webkit/data
diff options
context:
space:
mode:
authorericroman@google.com <ericroman@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-25 03:30:34 +0000
committerericroman@google.com <ericroman@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-25 03:30:34 +0000
commit42be0ca594ed7980c7ee73ef04919cd890463e9a (patch)
tree2a842c204463a24dd792734ab7d4867974ca5381 /webkit/data
parent4fb105e615d1ee15127f8b293e7e3361ed7c74b0 (diff)
downloadchromium_src-42be0ca594ed7980c7ee73ef04919cd890463e9a.zip
chromium_src-42be0ca594ed7980c7ee73ef04919cd890463e9a.tar.gz
chromium_src-42be0ca594ed7980c7ee73ef04919cd890463e9a.tar.bz2
Ensure "contextmenu" event is dispatched _after_ "mouseup".
BUG=1330688 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1299 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/data')
-rw-r--r--webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering-expected.txt7
-rw-r--r--webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering.html71
2 files changed, 78 insertions, 0 deletions
diff --git a/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering-expected.txt b/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering-expected.txt
new file mode 100644
index 0000000..7a94cda
--- /dev/null
+++ b/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering-expected.txt
@@ -0,0 +1,7 @@
+[Click target]
+Right click in the red box: the event sequence should match (mousedown, mouseup, contextmenu)
+
+Dispatched event mousedown (button=2)
+Dispatched event mouseup (button=2)
+Dispatched event contextmenu (button=2)
+
diff --git a/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering.html b/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering.html
new file mode 100644
index 0000000..932ad89
--- /dev/null
+++ b/webkit/data/layout_tests/chrome/fast/events/contextmenu-event-ordering.html
@@ -0,0 +1,71 @@
+<html>
+ <head>
+ <title>Context menu event ordering</title>
+ <style>
+ #clickTarget {
+ width: 100%;
+ height: 50px;
+ background: red;
+ text-align: center;
+ }
+ </style>
+ <script>
+
+ function startTest() {
+ var target = document.getElementById("clickTarget");
+
+ traceMouseEvent(target, "click");
+ traceMouseEvent(target, "mousedown");
+ traceMouseEvent(target, "mouseup");
+ traceMouseEvent(target, "contextmenu");
+
+ if (window.layoutTestController) {
+ window.layoutTestController.dumpAsText();
+
+ // Right click inside clickTarget
+ window.eventSender.mouseMoveTo(20,20);
+ window.eventSender.mouseDown(2 /*right button*/);
+ window.eventSender.mouseUp(2 /*right button*/);
+ }
+ }
+
+ function traceMouseEvent(target, eventName) {
+
+ var callback = function(e) {
+ log ("Dispatched event " + e.type + " (button=" + e.button + ")");
+
+ if (eventName == "contextmenu") {
+ // Prevent the context menu from being displayed.
+ e.returnValue = false;
+ if (e.stopPropagation) {
+ e.stopPropagation();
+ }
+ }
+ };
+
+ if (target.addEventListener) {
+ target.addEventListener(eventName, callback, false);
+ } else if (target.attachEvent) /*Internet Explorer*/ {
+ target.attachEvent("on" + eventName, callback);
+ } else {
+ log ("!!! Failed registering " + eventName);
+ }
+ }
+
+ function log(msg) {
+ var log = document.getElementById("log");
+ log.appendChild(document.createTextNode(msg));
+ log.appendChild(document.createElement("br"));
+ }
+ </script>
+ </head>
+
+ <body onload="startTest()">
+ <div id=clickTarget>
+ [Click target]
+ </div>
+
+ <p>Right click in the red box: the event sequence should match (mousedown, mouseup, contextmenu)</p>
+ <pre id=log></pre>
+ </body>
+</html>