OLD | NEW |
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script> | 4 <!-- <script> |
5 | 5 |
6 function buildAccessibilityTree(accessibilityObject, indent) { | 6 function buildAccessibilityTree(accessibilityObject, indent) { |
7 var str = ""; | 7 var str = ""; |
8 for (var i = 0; i < indent; i++) | 8 for (var i = 0; i < indent; i++) |
9 str += " "; | 9 str += " "; |
10 str += accessibilityObject.role; | 10 str += accessibilityObject.role; |
11 str += " " + accessibilityObject.stringValue; | 11 str += " " + accessibilityObject.stringValue; |
12 str += "\n"; | 12 str += "\n"; |
13 document.getElementById("tree").innerText += str; | 13 document.getElementById("tree").innerText += str; |
14 | 14 |
15 if (accessibilityObject.stringValue.indexOf('End of test') >= 0) | 15 if (accessibilityObject.stringValue.indexOf('End of test') >= 0) |
16 return false; | 16 return false; |
17 | 17 |
18 var count = accessibilityObject.childrenCount; | 18 var count = accessibilityObject.childrenCount; |
19 for (var i = 0; i < count; ++i) { | 19 for (var i = 0; i < count; ++i) { |
20 if (!buildAccessibilityTree(accessibilityObject.childAtIndex(i), ind
ent + 1)) | 20 if (!buildAccessibilityTree(accessibilityObject.childAtIndex(i), ind
ent + 1)) |
21 return false; | 21 return false; |
22 } | 22 } |
23 | 23 |
24 return true; | 24 return true; |
25 } | 25 } |
26 </script> | 26 </script> --> |
27 <script src="../resources/js-test.js"></script> | 27 <script src="../resources/js-test.js"></script> |
| 28 <script src="../resources/accessibility-helper.js"></script> |
28 </head> | 29 </head> |
29 <body> | 30 <body> |
30 | 31 |
31 <a><div></div></a> | 32 <a><div></div></a> |
32 | 33 |
33 <a><div></div></a> | 34 <a><div></div></a> |
34 | 35 |
35 <a href="about:blank"><div></div></a> | 36 <a href="about:blank"><div></div></a> |
36 | 37 |
37 <div>End of test</div> | 38 <div>End of test</div> |
38 | 39 |
39 <pre id="tree"></pre> | |
40 | |
41 <p id="description"></p> | 40 <p id="description"></p> |
42 <div id="console"></div> | 41 <div id="console"></div> |
43 | 42 |
44 <script> | 43 <script> |
45 description("This can cause a crash."); | 44 description("This can cause a crash."); |
46 | 45 |
47 if (window.accessibilityController) { | 46 if (window.accessibilityController) { |
48 // First build up full accessibility tree. | 47 // First build up full accessibility tree. |
49 document.getElementById("tree").innerText += "Before:\n"; | 48 document.getElementById("console").innerText += "Before:\n"; |
50 document.body.focus(); | 49 document.body.focus(); |
51 buildAccessibilityTree(accessibilityController.focusedElement, 0); | 50 buildAccessibilityTree(accessibilityController.focusedElement, 0); |
52 | 51 |
53 // Remove anchor that causes debug assert in AccessibilityRenderObject::
addChildren | 52 // Remove anchor that causes debug assert in AccessibilityRenderObject::
addChildren |
54 document.body.removeChild(document.body.children[2]) | 53 document.body.removeChild(document.body.children[2]) |
55 | 54 |
56 // Build up full accessibility tree again. | 55 // Build up full accessibility tree again. |
57 document.getElementById("tree").innerText += "After:\n"; | 56 document.getElementById("console").innerText += "After:\n"; |
58 document.body.focus(); | 57 document.body.focus(); |
59 buildAccessibilityTree(accessibilityController.focusedElement, 0); | 58 buildAccessibilityTree(accessibilityController.focusedElement, 0); |
60 } | 59 } |
61 | 60 |
62 </script> | 61 </script> |
63 | 62 |
64 </body> | 63 </body> |
65 </html> | 64 </html> |
OLD | NEW |