| OLD | NEW | 
|   1 <!DOCTYPE HTML> |   1 <!DOCTYPE HTML> | 
|   2 <html> |   2 <html> | 
|   3 <head> |   3 <head> | 
|   4 <script src="../../js/resources/js-test-pre.js"></script> |   4 <script src="../../js/resources/js-test-pre.js"></script> | 
|   5 <style> |   5 <style> | 
|   6 #layer { |   6 #layer { | 
|   7   position: relative; |   7   position: relative; | 
|   8   left: 10px; |   8   left: 10px; | 
|   9 } |   9 } | 
|  10 .composited { |  10 .composited { | 
|  11   -webkit-transform: translate3d(0, 0, 0); |  11   -webkit-transform: translate3d(0, 0, 0); | 
|  12 } |  12 } | 
|  13 </style> |  13 </style> | 
|  14 </head> |  14 </head> | 
|  15 <body> |  15 <body> | 
|  16 <div id="layer" class="composited">A layer that may or may not be composited</di
    v> |  16 <div id="layer" class="composited">A layer that may or may not be composited</di
    v> | 
|  17 <p id="description"></p> |  17 <p id="description"></p> | 
|  18 <div id="console"></div> |  18 <div id="console"></div> | 
|  19 <script> |  19 <script> | 
|  20     description("Make sure we don't crash when a layer with a touch event handle
    r becomes non-composited"); |  20     description("Make sure we don't crash when a layer with a touch event handle
    r becomes non-composited"); | 
|  21  |  21  | 
|  22     if (window.internals) |  22     if (window.internals) | 
|  23         window.internals.settings.setForceCompositingMode(true); |  23         window.internals.settings.setForceCompositingMode(true); | 
|  24  |  24  | 
|  25     var layer = document.getElementById('layer'); |  25     var layer = document.getElementById('layer'); | 
|  26     layer.addEventListener('touchstart', function() {}); |  26     layer.addEventListener('touchstart', function() {}); | 
|  27  |  27  | 
|  28     // Ensure we've done a layout and we have a hit rect on this composited laye
    r. |  28     // Ensure we've done a layout, updated compositing, and we have a hit rect o
    n this composited layer. | 
|  29     var x = layer.offsetTop; |  29     var x = layer.offsetTop; | 
 |  30  | 
 |  31     if (window.internals) | 
 |  32         window.internals.forceCompositingUpdate(document); | 
 |  33  | 
|  30     var rects; |  34     var rects; | 
|  31     if (window.internals) { |  35     if (window.internals) { | 
|  32       rects = window.internals.touchEventTargetLayerRects(document); |  36       rects = window.internals.touchEventTargetLayerRects(document); | 
|  33       shouldBe("rects.length", "1"); |  37       shouldBe("rects.length", "1"); | 
|  34       shouldBeEqualToString("rects[0].layerRootNode.id", "layer"); |  38       shouldBeEqualToString("rects[0].layerRootNode.id", "layer"); | 
|  35     } |  39     } | 
|  36  |  40  | 
|  37     // Make the layer non-composited |  41     // Make the layer non-composited | 
|  38     layer.className = ''; |  42     layer.className = ''; | 
|  39  |  43  | 
|  40     // Force layout and verify we now have a hit rect on the document. |  44     // Force layout and verify we now have a hit rect on the document. | 
|  41     x = layer.offsetTop; |  45     x = layer.offsetTop; | 
|  42     if (window.internals) { |  46     if (window.internals) { | 
|  43       rects = window.internals.touchEventTargetLayerRects(document); |  47       rects = window.internals.touchEventTargetLayerRects(document); | 
|  44       shouldBe("rects.length", "1"); |  48       shouldBe("rects.length", "1"); | 
|  45       shouldBeEqualToString("rects[0].layerRootNode.nodeName", "#document"); |  49       shouldBeEqualToString("rects[0].layerRootNode.nodeName", "#document"); | 
|  46     } |  50     } | 
|  47 </script> |  51 </script> | 
|  48 <script src="../../js/resources/js-test-post.js"></script> |  52 <script src="../../js/resources/js-test-post.js"></script> | 
|  49 </body> |  53 </body> | 
|  50 </html> |  54 </html> | 
| OLD | NEW |