Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(353)

Unified Diff: LayoutTests/fast/dom/elementsFromPoint/elementsFromPoint-table.html

Issue 869813003: Implement elementsFromPoint (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Cleanup, add a better test for tables Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/fast/dom/elementsFromPoint/elementsFromPoint-table.html
diff --git a/LayoutTests/fast/dom/elementsFromPoint/elementsFromPoint-table.html b/LayoutTests/fast/dom/elementsFromPoint/elementsFromPoint-table.html
new file mode 100644
index 0000000000000000000000000000000000000000..188cd1587b00fcac7d12f955a9ed87db29da3dd1
--- /dev/null
+++ b/LayoutTests/fast/dom/elementsFromPoint/elementsFromPoint-table.html
@@ -0,0 +1,93 @@
+<!DOCTYPE HTML>
+<script src="../../../resources/js-test.js"></script>
+<script src="resources/elementsFromPoint.js"></script>
+<style>
+html, body {
+ margin: 0;
+ padding: 0;
+}
+#testtable {
+ margin: 100px;
+ width: 200px;
+ height: 200px;
+ background-color: rgba(0,180,0,0.2);
+}
+#testtable tr {
+ background-color: rgba(180,0,0,0.2);
+}
+#testtable td {
+ background-color: rgba(0,0,180,0.2);
+}
+.rtl {
+ direction: rtl;
+}
+.tblr {
+ -webkit-writing-mode: vertical-lr;
+}
+</style>
+<div id='sandbox'>
+ <table id='testtable'>
+ <tr id='tr1'>
+ <td id='td11'></td>
+ <td id='td12'></td>
+ <td id='td13'></td>
+ <td id='td14'></td>
+ </tr>
+ <tr id='tr2'>
+ <td id='td21'></td>
+ <td id='td22'></td>
+ <td id='td23'></td>
+ <td id='td24'></td>
+ </tr>
+ <tr id='tr3'>
+ <td id='td31'></td>
+ <td id='td32'></td>
+ <td id='td33'></td>
+ <td id='td34'></td>
+ </tr>
+ <tr id='tr4'>
+ <td id='td41'></td>
+ <td id='td42'></td>
+ <td id='td43'></td>
+ <td id='td44'></td>
+ </tr>
+ </table>
+</div>
+<div id="console"></div>
+<script>
+window.jsTestIsAsync = true;
+
+if (window.testRunner)
+ testRunner.dumpAsText();
+
+if (window.internals)
+ internals.settings.setMockScrollbarsEnabled(true);
+
+onload = function() {
+ // Check area hits fully inside table cells.
+ assertElementsFromPoint('document.elementsFromPoint(125, 125)', [td11, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(275, 125)', [td14, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(175, 175)', [td22, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(125, 275)', [td41, testtable, sandbox, document.body, document.documentElement]);
+
+ // Check area hits between cells.
+ assertElementsFromPoint('document.elementsFromPoint(100, 100)', [testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(199, 199)', [testtable, sandbox, document.body, document.documentElement]);
+
+ // Check hit tests on right-to-left table.
+ testtable.setAttribute('class', 'rtl');
+ assertElementsFromPoint('document.elementsFromPoint(125, 125)', [td14, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(275, 125)', [td11, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(100, 100)', [testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(199, 199)', [testtable, sandbox, document.body, document.documentElement]);
+
+ // Check hit tests on a flipped (tb-lr) table.
+ testtable.setAttribute('class', 'tblr');
+ assertElementsFromPoint('document.elementsFromPoint(125, 275)', [td14, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(275, 125)', [td41, testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(100, 100)', [testtable, sandbox, document.body, document.documentElement]);
+ assertElementsFromPoint('document.elementsFromPoint(199, 199)', [testtable, sandbox, document.body, document.documentElement]);
+
+ finishJSTest();
+}
+</script>

Powered by Google App Engine
This is Rietveld 408576698