| OLD | NEW |
| (Empty) |
| 1 <html> | |
| 2 <script src="../resources/js-test.js"></script> | |
| 3 <script> | |
| 4 if (window.testRunner) | |
| 5 testRunner.dumpAsText(); | |
| 6 </script> | |
| 7 <body> | |
| 8 <div id="console"></div> | |
| 9 <textarea name="area1" id="area1" rows="5" cols="40"> | |
| 10 line 1 | |
| 11 line 2 | |
| 12 line 3 | |
| 13 </textarea> | |
| 14 | |
| 15 <textarea name="area2" id="area2" rows="5" cols="40"></textarea> | |
| 16 | |
| 17 | |
| 18 <div id="contenteditable-div" role="textbox" contenteditable="true" tabindex
="0"> | |
| 19 <div id="contenteditable-line1">Line1</div> | |
| 20 <textarea id="contenteditable-line2" rows="1" cols="40">Line2</textarea> | |
| 21 <div id="contenteditable-line3">Line3</div> | |
| 22 </div> | |
| 23 <script> | |
| 24 description("This tests that lineNumberForPosition is reported correctly
for textarea and contenteditable elements."); | |
| 25 | |
| 26 if (window.accessibilityController) { | |
| 27 var console = document.getElementById("console"); | |
| 28 | |
| 29 var area1 = document.getElementById("area1"); | |
| 30 area1.focus(); | |
| 31 var area1AXUIElement = accessibilityController.focusedElement; | |
| 32 var lineNumber = -2; | |
| 33 | |
| 34 for (var currentLine = 0; currentLine < 3; currentLine++ ) { | |
| 35 shouldBe("area1.selectionStart = (" + (currentLine * 7) + "); "
+ | |
| 36 "area1.selectionEnd = (" + (currentLine * 7) +"); " + | |
| 37 "area1AXUIElement.insertionPointLineNumber;", "currentL
ine"); | |
| 38 } | |
| 39 | |
| 40 var area2 = document.getElementById("area2"); | |
| 41 shouldBe("area2.focus(); area1AXUIElement.insertionPointLineNumber;"
, "-1"); | |
| 42 | |
| 43 var contenteditableDiv = document.getElementById("contenteditable-di
v"); | |
| 44 contenteditableDiv.focus(); | |
| 45 var contenteditableAXUIElement = accessibilityController.focusedElem
ent; | |
| 46 | |
| 47 var contenteditableLine1 = document.getElementById("contenteditable-
line1"); | |
| 48 shouldBe("window.getSelection().setBaseAndExtent(contenteditableLine
1, 1, contenteditableLine1, 1); " + | |
| 49 "contenteditableAXUIElement.insertionPointLineNumber;", "0"
); | |
| 50 | |
| 51 var contenteditableLine2 = document.getElementById("contenteditable-
line2"); | |
| 52 shouldBe("contenteditableLine2.focus(); contenteditableLine2.selecti
onStart = 1; contenteditableLine2.selectionEnd = 1;" + | |
| 53 "contenteditableAXUIElement.insertionPointLineNumber;", "-1
"); | |
| 54 | |
| 55 var contenteditableLine3 = document.getElementById("contenteditable-
line3"); | |
| 56 shouldBe("window.getSelection().setBaseAndExtent(contenteditableLine
3, 1, contenteditableLine3, 1); " + | |
| 57 "contenteditableAXUIElement.insertionPointLineNumber;", "2"
); | |
| 58 | |
| 59 contenteditableLine2.focus(); | |
| 60 var textareaAXUIElement = accessibilityController.focusedElement; | |
| 61 shouldBe("textareaAXUIElement.insertionPointLineNumber", "0"); | |
| 62 } | |
| 63 </script> | |
| 64 </body> | |
| 65 </html> | |
| OLD | NEW |