Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <!DOCTYPE html> | |
| 2 <style> | |
| 3 body { | |
| 4 margin: 0; | |
| 5 } | |
| 6 | |
| 7 #columns { | |
| 8 position: absolute; | |
| 9 width: 332px; | |
| 10 height: 200px; | |
| 11 top: 220px; | |
| 12 left: 300px; | |
| 13 border: 1px solid black; | |
| 14 -webkit-column-count: 3; | |
| 15 -webkit-column-gap: 16px; | |
| 16 column-fill: auto; | |
| 17 line-height: 50px; | |
| 18 } | |
| 19 </style> | |
| 20 | |
| 21 <div id="columns"> | |
| 22 <br> | |
| 23 <br> | |
| 24 <br> | |
| 25 <div id="in-column1">first</div> | |
| 26 <br> | |
| 27 <div id="in-column2">second</div> | |
| 28 <br> | |
| 29 <br> | |
| 30 <div id="in-column3">third</div> | |
| 31 <br> | |
| 32 </div> | |
| 33 | |
| 34 <script src="../../resources/js-test.js"></script> | |
| 35 <script> | |
| 36 description("Dispatch mouse click events in each column and check the result."); | |
| 37 function dispatchEvent(clientX, clientY, expectedElementID, expectedOffsetX, exp ectedOffsetY) { | |
| 38 var e = document.createEvent("MouseEvent"); | |
| 39 e.initMouseEvent("click", true, true, window, 1, 1, 1, clientX, clientY, fal se, false, false, false, 0, document); | |
| 40 e.expectedElementID = expectedElementID; | |
| 41 e.expectedOffsetX = expectedOffsetX; | |
| 42 e.expectedOffsetY = expectedOffsetY; | |
| 43 var target = document.elementFromPoint(e.clientX, e.clientY); | |
| 44 target.dispatchEvent(e); | |
| 45 } | |
| 46 | |
| 47 function clicked(event) { | |
| 48 if (!event.expectedElementID) | |
| 49 return; | |
| 50 shouldBe("event.target.id", "event.expectedElementID"); | |
| 51 shouldBe("event.offsetX", "event.expectedOffsetX"); | |
| 52 shouldBe("event.offsetY", "event.expectedOffsetY"); | |
| 53 } | |
| 54 | |
| 55 if (window.testRunner) | |
| 56 window.testRunner.waitUntilDone(); | |
| 57 | |
| 58 document.body.addEventListener('click', clicked, false); | |
| 59 window.addEventListener('load', function() { | |
| 60 setTimeout(function() { | |
| 61 setTimeout(function() { | |
| 62 dispatchEvent(380, 400, 'in-column1', 79, 29); | |
| 63 dispatchEvent(480, 300, 'in-column2', 63, 29); | |
| 64 dispatchEvent(632, 221, 'in-column3', 99, 0); | |
| 65 | |
| 66 if (window.testRunner) | |
| 67 window.testRunner.notifyDone(); | |
| 68 }, 0); | |
| 69 }, 0); | |
|
Julien - ping for review
2015/03/25 21:41:32
2 setTimeouts, that seems like a lot. Do we really
mstensho (USE GERRIT)
2015/03/25 22:35:05
Wow! I just snatched all this from events/document
| |
| 70 }, false); | |
| 71 </script> | |
| OLD | NEW |