summaryrefslogtreecommitdiffstats
path: root/accessible/tests/crashtests/448064.xhtml
blob: 64d6d851d55d010c85a0fabee6ed87dcc22d8422 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div id="mw_b">
<div id="mw_f">
<div id="mw_g" style="display: none;"/>
</div>
</div>

<div id="mw_c" style="display: none;">
<div id="mw_d">
<div id="mw_e"></div>
</div>
</div>

<input id="mw_a"/>


<script>
function dumpAccessibleNode(aNode, level) {
	var msg = "";
	
	try {
		msg += "name=\"" + aNode.name + "\" ";
	} catch (e) {
		msg += " noName ";
	}
	
	dump(msg + '\n');
}


function dumpAccessibleTree(aNode, level) {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
	level = level || 0;

	dumpAccessibleNode(aNode, level);
	try {	
		var child = aNode.firstChild;
		while (child) {
			dumpAccessibleTree(child, level + 1);
			child = child.nextSibling;
		}
	} catch (e) {
		dump("Error visiting child nodes: " + e + '\n');
	}
}

function A(o) { 
  netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
  var acc = Components.classes['@mozilla.org/accessibilityService;1']
                         .getService(Components.interfaces.nsIAccessibilityService);
  return acc.getAccessibleFor(o);
}

function beginAccessible() {
  netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
  dumpAccessibleTree(A(document),0);
}
setTimeout(beginAccessible, 100);


setTimeout(doe, 200);
function doe() {
   document.getElementById('mw_a').appendChild(document.getElementById('mw_b'));
   document.getElementById('mw_c').appendChild(document.getElementById('mw_d'));
   document.getElementById('mw_e').appendChild(document.getElementById('mw_f')); 
   document.getElementById('mw_g').appendChild(document.getElementById('mw_b')); 
}
</script>
</body>
</html>