| 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.createShadowRoot) { |
| 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.createShadowRoot(); |
| 20 shadowRoot.applyAuthorStyles = true; |
| 20 shadowRoot.appendChild(tree); | 21 shadowRoot.appendChild(tree); |
| 21 } | 22 } |
| 22 }); | 23 }); |
| 23 | 24 |
| 24 /* | 25 /* |
| 25 * Visualization of hit test locations for manual testing. | 26 * Visualization of hit test locations for manual testing. |
| 26 * To be invoked manually (so it doesn't intefere with testing). | 27 * To be invoked manually (so it doesn't intefere with testing). |
| 27 */ | 28 */ |
| 28 function addMarker(x, y) | 29 function addMarker(x, y) |
| 29 { | 30 { |
| 30 const kMarkerSize = 6; | 31 const kMarkerSize = 6; |
| 31 var marker = document.createElement('div'); | 32 var marker = document.createElement('div'); |
| 32 marker.className = 'marker'; | 33 marker.className = 'marker'; |
| 33 marker.style.top = (y - kMarkerSize/2) + 'px'; | 34 marker.style.top = (y - kMarkerSize/2) + 'px'; |
| 34 marker.style.left = (x - kMarkerSize/2) + 'px'; | 35 marker.style.left = (x - kMarkerSize/2) + 'px'; |
| 35 document.body.appendChild(marker); | 36 document.body.appendChild(marker); |
| 36 } | 37 } |
| 37 | 38 |
| 38 function addMarkers() | 39 function addMarkers() |
| 39 { | 40 { |
| 40 var tests = document.querySelectorAll('[expected-action]'); | 41 var tests = document.querySelectorAll('[expected-action]'); |
| 41 for (var i = 0; i < tests.length; i++) { | 42 for (var i = 0; i < tests.length; i++) { |
| 42 var r = tests[i].getClientRects()[0]; | 43 var r = tests[i].getClientRects()[0]; |
| 43 addMarker(r.left, r.top); | 44 addMarker(r.left, r.top); |
| 44 addMarker(r.right - 1, r.bottom - 1); | 45 addMarker(r.right - 1, r.bottom - 1); |
| 45 addMarker(r.left + r.width / 2, r.top + r.height / 2); | 46 addMarker(r.left + r.width / 2, r.top + r.height / 2); |
| 46 } | 47 } |
| 47 } | 48 } |
| OLD | NEW |