OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <script src="../resources/js-test.js"></script> | 2 <script src="../resources/js-test.js"></script> |
3 | 3 |
4 <!-- Richly editable elements. --> | 4 <!-- Richly editable elements. --> |
5 <div id="richly_editable1" contentEditable></div> | 5 <div id="richly_editable1" contentEditable></div> |
6 <div id="richly_editable2" contentEditable="true"></div> | 6 <div id="richly_editable2" contentEditable="true"></div> |
7 <div contentEditable> | 7 <div contentEditable> |
8 <p id="richly_editable3">Some text.</p> | 8 <p id="richly_editable3">Some text.</p> |
9 </div> | 9 </div> |
10 <div contentEditable="true"> | 10 <div contentEditable="true"> |
11 <p id="richly_editable4">Some text.</p> | 11 <p id="richly_editable4">Some text.</p> |
12 </div> | 12 </div> |
13 <div style="display: none;" aria-hidden="false"> | 13 <div style="display: none;" aria-hidden="false"> |
14 <p id="richly_editable5" contentEditable>Some text.</p> | 14 <p id="richly_editable5" contentEditable>Some text.</p> |
15 </div> | 15 </div> |
16 <canvas id="empty_canvas" width="200" height="100" | 16 <canvas id="empty_canvas" width="200" height="100" |
17 style="border: 1px solid #000000;"> | 17 style="border: 1px solid #000000;"> |
18 <div id="richly_editable6" contentEditable="true">Some text.</div> | 18 <div id="richly_editable6" contentEditable="true">Some text.</div> |
19 </canvas> | 19 </canvas> |
20 <iframe id="richly_editable7" | |
21 src="data:text/html,<html><body><p>Some text.</p></body></html>"> | |
22 </iframe> | |
23 | 20 |
24 <!-- Non-richly editable elements. --> | 21 <!-- Non-richly editable elements. --> |
25 <input id="non_richly_editable1" type="text" value="Some text."> | 22 <input id="non_richly_editable1" type="text" value="Some text."> |
26 <textarea id="non_richly_editable2"> | 23 <textarea id="non_richly_editable2"> |
27 Some text.</textarea> | 24 Some text.</textarea> |
28 <div id="non_richly_editable3" contentEditable="plaintext-only"></div> | 25 <div id="non_richly_editable3" contentEditable="plaintext-only"></div> |
29 <div id="non_richly_editable4" contentEditable style="-webkit-user-modify: read-
only;"></div> | 26 <div id="non_richly_editable4" contentEditable style="-webkit-user-modify: read-
only;"></div> |
30 <div contentEditable="plaintext-only"> | 27 <div contentEditable="plaintext-only"> |
31 <p id="non_richly_editable5">Some text.</p> | 28 <p id="non_richly_editable5">Some text.</p> |
32 </div> | 29 </div> |
33 <div id="non_richly_editable6" contentEditable role="textbox">Some text.</div> | 30 <div id="non_richly_editable6" contentEditable role="textbox">Some text.</div> |
34 <p id="non_richly_editable7" tabindex="0">Some text.</p> | 31 <p id="non_richly_editable7" tabindex="0">Some text.</p> |
35 <button id="non_richly_editable8">Button</button> | 32 <button id="non_richly_editable8">Button</button> |
36 | 33 |
37 <script> | 34 <script> |
38 description("This tests that only elements that allow the user to edit rich
text in them are recognized as being richly editable."); | 35 description("This tests that only elements that allow the user to edit rich
text in them are recognized as being richly editable."); |
39 | 36 |
40 var iframeId = "richly_editable7"; | 37 if (window.accessibilityController) { |
41 var iframe = document.getElementById(iframeId); | |
42 window.axElement = undefined; // Needs to be globally declared for test expe
ctations to work. | |
43 iframe.onload = function() | |
44 { | |
45 var iframeDocument = iframe.contentDocument; | |
46 iframeDocument.designMode = "on"; | |
47 | 38 |
48 if (window.accessibilityController) { | 39 for (var i = 1; i <= 6; ++i) { |
| 40 var elementId = "richly_editable" + i; |
| 41 var element = document.getElementById(elementId); |
| 42 element.focus(); |
| 43 var axElement = accessibilityController.focusedElement; |
| 44 shouldBeTrue("axElement.isRichlyEditable"); |
| 45 } |
49 | 46 |
50 for (var i = 1; i <= 7; ++i) { | 47 for (var i = 1; i <= 7; ++i) { |
51 var elementId = "richly_editable" + i; | 48 var elementId = "non_richly_editable" + i; |
52 var element = document.getElementById(elementId); | 49 var element = document.getElementById(elementId); |
53 element.focus(); | 50 element.focus(); |
54 window.axElement = accessibilityController.focusedElement; | 51 var axElement = accessibilityController.focusedElement; |
55 shouldBeTrue("axElement.isRichlyEditable"); | 52 shouldBeFalse("axElement.isRichlyEditable"); |
56 } | |
57 | |
58 // Both the iframe itself (tested above) and its body should be rich
ly editable. | |
59 iframeDocument.body.focus(); | |
60 window.axElement = accessibilityController.focusedElement; | |
61 shouldBeTrue("axElement.isRichlyEditable"); | |
62 | |
63 | |
64 for (var i = 1; i <= 8; ++i) { | |
65 var elementId = "non_richly_editable" + i; | |
66 var element = document.getElementById(elementId); | |
67 element.focus(); | |
68 window.axElement = accessibilityController.focusedElement; | |
69 shouldBeFalse("axElement.isRichlyEditable"); | |
70 } | |
71 | |
72 } | 53 } |
73 }; | 54 } |
74 </script> | 55 </script> |
OLD | NEW |