OLD | NEW |
1 // Disable compositor hit testing | 1 // Disable compositor hit testing |
2 document.addEventListener('touchstart', function() {}); | 2 document.addEventListener('touchstart', function() {}); |
3 | 3 |
4 window.addEventListener('load', function() { | 4 window.addEventListener('load', function() { |
5 // Create any shadow DOM nodes requested by the test. | 5 // Create any shadow DOM nodes requested by the test. |
6 var shadowTrees = document.querySelectorAll('[make-shadow-dom]'); | 6 var shadowTrees = document.querySelectorAll('[make-shadow-dom]'); |
7 if (shadowTrees.length > 0 && !HTMLElement.prototype.createShadowRoot) { | 7 if (shadowTrees.length > 0 && !HTMLElement.prototype.ensureShadowRoot) { |
8 document.body.innerHTML = 'ERROR: Shadow DOM not supported!'; | 8 document.body.innerHTML = 'ERROR: Shadow DOM not supported!'; |
9 return; | 9 return; |
10 } | 10 } |
11 for (var i = 0; i < shadowTrees.length; i++) { | 11 for (var i = 0; i < shadowTrees.length; i++) { |
12 var tree = shadowTrees[i]; | 12 var tree = shadowTrees[i]; |
13 var host = tree.previousElementSibling; | 13 var host = tree.previousElementSibling; |
14 if (!host.hasAttribute('shadow-host')) { | 14 if (!host.hasAttribute('shadow-host')) { |
15 document.body.innerHTML = 'ERROR: make-shadow-dom node must follow a shado
w-host node'; | 15 document.body.innerHTML = 'ERROR: make-shadow-dom node must follow a shado
w-host node'; |
16 return; | 16 return; |
17 } | 17 } |
18 tree.parentElement.removeChild(tree); | 18 tree.parentElement.removeChild(tree); |
19 var shadowRoot = host.createShadowRoot(); | 19 var shadowRoot = host.ensureShadowRoot(); |
20 shadowRoot.appendChild(tree); | 20 shadowRoot.appendChild(tree); |
21 } | 21 } |
22 }); | 22 }); |
23 | 23 |
24 /* | 24 /* |
25 * Visualization of hit test locations for manual testing. | 25 * Visualization of hit test locations for manual testing. |
26 * To be invoked manually (so it doesn't intefere with testing). | 26 * To be invoked manually (so it doesn't intefere with testing). |
27 */ | 27 */ |
28 function addMarker(x, y) | 28 function addMarker(x, y) |
29 { | 29 { |
30 const kMarkerSize = 6; | 30 const kMarkerSize = 6; |
31 var marker = document.createElement('div'); | 31 var marker = document.createElement('div'); |
32 marker.className = 'marker'; | 32 marker.className = 'marker'; |
33 marker.style.top = (y - kMarkerSize/2) + 'px'; | 33 marker.style.top = (y - kMarkerSize/2) + 'px'; |
34 marker.style.left = (x - kMarkerSize/2) + 'px'; | 34 marker.style.left = (x - kMarkerSize/2) + 'px'; |
35 document.body.appendChild(marker); | 35 document.body.appendChild(marker); |
36 } | 36 } |
37 | 37 |
38 function addMarkers() | 38 function addMarkers() |
39 { | 39 { |
40 var tests = document.querySelectorAll('[expected-action]'); | 40 var tests = document.querySelectorAll('[expected-action]'); |
41 for (var i = 0; i < tests.length; i++) { | 41 for (var i = 0; i < tests.length; i++) { |
42 var r = tests[i].getClientRects()[0]; | 42 var r = tests[i].getClientRects()[0]; |
43 addMarker(r.left, r.top); | 43 addMarker(r.left, r.top); |
44 addMarker(r.right - 1, r.bottom - 1); | 44 addMarker(r.right - 1, r.bottom - 1); |
45 addMarker(r.left + r.width / 2, r.top + r.height / 2); | 45 addMarker(r.left + r.width / 2, r.top + r.height / 2); |
46 } | 46 } |
47 } | 47 } |
OLD | NEW |