summaryrefslogtreecommitdiffstats
path: root/layout/generic/test/test_bug470212.html
diff options
context:
space:
mode:
Diffstat (limited to 'layout/generic/test/test_bug470212.html')
-rw-r--r--layout/generic/test/test_bug470212.html58
1 files changed, 58 insertions, 0 deletions
diff --git a/layout/generic/test/test_bug470212.html b/layout/generic/test/test_bug470212.html
new file mode 100644
index 0000000000..f14c2a77e0
--- /dev/null
+++ b/layout/generic/test/test_bug470212.html
@@ -0,0 +1,58 @@
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=470212
+-->
+<head>
+ <title>Test for Bug 470212 - crash [@ nsContentUtils::ComparePoints]</title>
+ <script src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+</head>
+<body>
+<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=470212">Mozilla Bug 470212</a>
+<div style="width: 200px;">
+<ca>
+<canvas style="border: 1px solid black;" id="dragSource"></canvas>
+</ca>
+</div>
+
+<pre id="test">
+<script>
+function doShiftDrag(){
+ setTimeout(function() {
+ var wu = SpecialPowers.DOMWindowUtils;
+ var canvas = document.getElementById("dragSource");
+ var canvasRect = canvas.getBoundingClientRect();
+
+ // Drag canvas element starts with a mouse down event, combine with shift
+ // key, follows by two mouse move events.
+
+ window.addEventListener("dragstart", e => {
+ e.preventDefault();
+ e.stopPropagation();
+ }, { once: true });
+
+ // Press on left-top corner of the canvas element.
+ wu.sendMouseEvent('mousedown', canvasRect.left, canvasRect.top, 0, 1, 4);
+ // Move to the center of this cavas element.
+ wu.sendMouseEvent('mousemove', canvasRect.left + (canvasRect.width / 2),
+ canvasRect.top + (canvasRect.height / 2), 0, 0, 4);
+ // move out of cavas's region.
+ wu.sendMouseEvent('mousemove', canvasRect.left + (canvasRect.width / 2),
+ canvasRect.bottom + 10, 0, 0, 4);
+
+ is(window.getSelection().rangeCount, 0, "rangeCount should be 0");
+
+ wu.sendMouseEvent('mouseup', canvasRect.left + (canvasRect.width / 2),
+ canvasRect.bottom + 10, 0, 0, 4);
+
+ SimpleTest.finish();
+ }, 0);
+}
+
+SimpleTest.waitForExplicitFinish();
+addLoadEvent(doShiftDrag);
+</script>
+
+</pre>
+</body>
+</html>