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 |