| 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 |