Chromium Code Reviews| Index: LayoutTests/fast/multicol/caret-range-outside-columns.html |
| diff --git a/LayoutTests/fast/multicol/caret-range-outside-columns.html b/LayoutTests/fast/multicol/caret-range-outside-columns.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..5470ca8ecda0f395e0e5a6be9971219f8f58caae |
| --- /dev/null |
| +++ b/LayoutTests/fast/multicol/caret-range-outside-columns.html |
| @@ -0,0 +1,76 @@ |
| +<!DOCTYPE html> |
| +<style> |
| + body { margin:0; } |
| + #mc { -webkit-columns:3; -webkit-column-gap:20px; width:280px; margin:20px 100px; font:20px/1 Ahem; } |
| + |
| + /* We don't want the log to get too close to the multicol container, or the tests might fail, so |
| + we place it at the bottom and restrict its height. */ |
| + #log { position:absolute; bottom:0; max-height:50%; overflow:auto; } |
|
Julien - ping for review
2015/03/09 15:49:03
overflow: auto?
mstensho (USE GERRIT)
2015/03/12 11:43:26
And max-height:50%? :) Yeah, I'll just do top:50%
|
| +</style> |
| +<body> |
| + <div id="log"> |
| + <p id="description"></p> |
| + <div id="console"></div> |
| + </div> |
| + <div id="mc">xxx xxx xxx xxx xxx xxx xxx xxx xxx</div> |
| + <script src="../../resources/js-test.js"></script> |
| + <script> |
| + description("Test that hitting areas outside columns takes us to the right text content inside columns."); |
| + |
| + // Above first column |
| + shouldBe("document.caretRangeFromPoint(50,0).startOffset", "0"); |
| + shouldBe("document.caretRangeFromPoint(150,0).startOffset", "0"); |
| + shouldBe("document.caretRangeFromPoint(189,0).startOffset", "0"); |
| + |
| + // Above second column |
| + shouldBe("document.caretRangeFromPoint(190,0).startOffset", "12"); |
| + shouldBe("document.caretRangeFromPoint(250,0).startOffset", "12"); |
| + shouldBe("document.caretRangeFromPoint(289,0).startOffset", "12"); |
| + |
| + // Above third column |
| + shouldBe("document.caretRangeFromPoint(290,0).startOffset", "24"); |
| + shouldBe("document.caretRangeFromPoint(350,0).startOffset", "24"); |
| + shouldBe("document.caretRangeFromPoint(450,0).startOffset", "24"); |
| + |
| + // Below first column |
| + shouldBe("document.caretRangeFromPoint(50,100).startOffset", "12"); |
| + shouldBe("document.caretRangeFromPoint(150,100).startOffset", "12"); |
| + shouldBe("document.caretRangeFromPoint(189,100).startOffset", "12"); |
| + |
| + // Below second column |
| + shouldBe("document.caretRangeFromPoint(190,100).startOffset", "24"); |
| + shouldBe("document.caretRangeFromPoint(250,100).startOffset", "24"); |
| + shouldBe("document.caretRangeFromPoint(289,100).startOffset", "24"); |
| + |
| + // Below third column |
| + shouldBe("document.caretRangeFromPoint(290,100).startOffset", "35"); |
| + shouldBe("document.caretRangeFromPoint(350,100).startOffset", "35"); |
| + shouldBe("document.caretRangeFromPoint(450,100).startOffset", "35"); |
| + |
| + // To the left of the first column |
| + shouldBe("document.caretRangeFromPoint(0,10).startOffset", "0"); |
| + shouldBe("document.caretRangeFromPoint(0,30).startOffset", "0"); |
| + shouldBe("document.caretRangeFromPoint(0,50).startOffset", "4"); |
| + shouldBe("document.caretRangeFromPoint(0,70).startOffset", "8"); |
| + shouldBe("document.caretRangeFromPoint(0,90).startOffset", "12"); |
| + |
| + // To the right of the third column |
| + shouldBe("document.caretRangeFromPoint(400,10).startOffset", "24"); |
| + shouldBe("document.caretRangeFromPoint(400,30).startOffset", "27"); |
| + shouldBe("document.caretRangeFromPoint(400,50).startOffset", "31"); |
| + shouldBe("document.caretRangeFromPoint(400,70).startOffset", "35"); |
| + shouldBe("document.caretRangeFromPoint(400,90).startOffset", "35"); |
| + |
| + // In the gap between the first and second columns |
| + shouldBe("document.caretRangeFromPoint(180,20).startOffset", "3"); |
| + shouldBe("document.caretRangeFromPoint(180,40).startOffset", "7"); |
| + shouldBe("document.caretRangeFromPoint(180,60).startOffset", "11"); |
| + shouldBe("document.caretRangeFromPoint(180,69).startOffset", "11"); |
| + |
| + // In the gap between the second and third columns |
| + shouldBe("document.caretRangeFromPoint(280,20).startOffset", "15"); |
| + shouldBe("document.caretRangeFromPoint(280,40).startOffset", "19"); |
| + shouldBe("document.caretRangeFromPoint(280,60).startOffset", "23"); |
| + shouldBe("document.caretRangeFromPoint(280,69).startOffset", "23"); |
| + </script> |
| +</body> |