2 <script src="../fast/js/resources/js-test-pre.js"></script>
5 testRunner.dumpAsText();
8 <div id="console"></div>
9 <textarea name="area1" id="area1" rows="5" cols="40">
15 <textarea name="area2" id="area2" rows="5" cols="40"></textarea>
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>
24 description("This tests that lineNumberForPosition is reported correctly for textarea and contenteditable elements.");
26 if (window.accessibilityController) {
27 var console = document.getElementById("console");
29 var area1 = document.getElementById("area1");
31 var area1AXUIElement = accessibilityController.focusedElement;
34 for (var currentLine = 0; currentLine < 3; currentLine++ ) {
35 shouldBe("area1.selectionStart = (" + (currentLine * 7) + "); " +
36 "area1.selectionEnd = (" + (currentLine * 7) +"); " +
37 "area1AXUIElement.insertionPointLineNumber;", "currentLine");
40 var area2 = document.getElementById("area2");
41 shouldBe("area2.focus(); area1AXUIElement.insertionPointLineNumber;", "-1");
43 var contenteditableDiv = document.getElementById("contenteditable-div");
44 contenteditableDiv.focus();
45 var contenteditableAXUIElement = accessibilityController.focusedElement;
47 var contenteditableLine1 = document.getElementById("contenteditable-line1");
48 shouldBe("window.getSelection().setBaseAndExtent(contenteditableLine1, 1, contenteditableLine1, 1); " +
49 "contenteditableAXUIElement.insertionPointLineNumber;", "0");
51 var contenteditableLine2 = document.getElementById("contenteditable-line2");
52 shouldBe("contenteditableLine2.selectionStart = 1; contenteditableLine2.selectionEnd = 1;" +
53 "contenteditableAXUIElement.insertionPointLineNumber;", "-1");
55 var contenteditableLine3 = document.getElementById("contenteditable-line3");
56 shouldBe("window.getSelection().setBaseAndExtent(contenteditableLine3, 1, contenteditableLine3, 1); " +
57 "contenteditableAXUIElement.insertionPointLineNumber;", "2");
59 contenteditableLine2.focus();
60 var textareaAXUIElement = accessibilityController.focusedElement;
61 shouldBe("textareaAXUIElement.insertionPointLineNumber", "0");
64 <script src="../fast/js/resources/js-test-post.js"></script>