OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <style> |
| 3 body { |
| 4 margin:0; |
| 5 } |
| 6 |
| 7 /* Need a wrapper to establish the writing mode, thanks to crbug.com/463462
*/ |
| 8 #wrapper { |
| 9 -webkit-writing-mode: vertical-rl; |
| 10 padding: 50px; |
| 11 width: 400px; |
| 12 height: 250px; |
| 13 } |
| 14 |
| 15 #pagedContainer { |
| 16 overflow: -webkit-paged-x; |
| 17 -webkit-column-gap: 0; |
| 18 direction: rtl; |
| 19 unicode-bidi: bidi-override; |
| 20 width: 120px; |
| 21 height: 200px; |
| 22 font: 40px/1 Ahem; |
| 23 } |
| 24 |
| 25 #log { |
| 26 position: absolute; |
| 27 top: 351px; |
| 28 } |
| 29 </style> |
| 30 <div id="log"> |
| 31 <p id="description"></p> |
| 32 <div id="console"></div> |
| 33 </div> |
| 34 <div id="wrapper"> |
| 35 <div id="pagedContainer">xxx xxx xxx xxx xxx xxx xxx xxx xxx</div> |
| 36 </div> |
| 37 <script src="../../resources/js-test.js"></script> |
| 38 <script> |
| 39 description("Test that hitting areas outside a paged container takes us to t
he right text content on some page."); |
| 40 |
| 41 // FIXME: We should ideally test above and below every page, but we get bogu
s results, |
| 42 // thanks to crbug.com/466554 , so avoid testing in the problematic areas. |
| 43 |
| 44 debug("Below page 1:"); |
| 45 shouldBe("document.caretRangeFromPoint(499,320).startOffset", "0"); |
| 46 shouldBe("document.caretRangeFromPoint(430,320).startOffset", "0"); |
| 47 shouldBe("document.caretRangeFromPoint(390,320).startOffset", "4"); |
| 48 |
| 49 debug("Above page 1:"); |
| 50 shouldBe("document.caretRangeFromPoint(499,0).startOffset", "0"); |
| 51 shouldBe("document.caretRangeFromPoint(430,0).startOffset", "3"); |
| 52 shouldBe("document.caretRangeFromPoint(390,0).startOffset", "7"); |
| 53 |
| 54 debug("To the right of page 1:"); |
| 55 shouldBe("document.caretRangeFromPoint(499,320).startOffset", "0"); |
| 56 shouldBe("document.caretRangeFromPoint(499,250).startOffset", "0"); |
| 57 shouldBe("document.caretRangeFromPoint(499,0).startOffset", "0"); |
| 58 |
| 59 debug("Scroll to page 2"); |
| 60 document.getElementById("pagedContainer").scrollLeft = 120; |
| 61 |
| 62 debug("Below page 2:"); |
| 63 shouldBe("document.caretRangeFromPoint(449,320).startOffset", "12"); |
| 64 shouldBe("document.caretRangeFromPoint(330,320).startOffset", "20"); |
| 65 |
| 66 debug("Above page 2:"); |
| 67 shouldBe("document.caretRangeFromPoint(449,0).startOffset", "15"); |
| 68 shouldBe("document.caretRangeFromPoint(330,0).startOffset", "23"); |
| 69 |
| 70 debug("Scroll to page 3"); |
| 71 document.getElementById("pagedContainer").scrollLeft = 0; |
| 72 |
| 73 debug("Below page 3:"); |
| 74 shouldBe("document.caretRangeFromPoint(449,320).startOffset", "24"); |
| 75 shouldBe("document.caretRangeFromPoint(330,320).startOffset", "32"); |
| 76 |
| 77 debug("Above page 3:"); |
| 78 shouldBe("document.caretRangeFromPoint(449,0).startOffset", "27"); |
| 79 shouldBe("document.caretRangeFromPoint(330,0).startOffset", "35"); |
| 80 </script> |
OLD | NEW |