4 <script src="../../../resources/js-test.js"></script>
11 -webkit-transform: translate3d(0, 0, 0);
16 <div id="layer" class="composited">A layer that may or may not be composited</div>
17 <p id="description"></p>
18 <div id="console"></div>
20 description("Make sure we don't crash when a layer with a touch event handler becomes non-composited");
23 window.internals.settings.setForceCompositingMode(true);
25 var layer = document.getElementById('layer');
26 layer.addEventListener('touchstart', function() {});
28 // Ensure we've done a layout, updated compositing, and we have a hit rect on this composited layer.
29 var x = layer.offsetTop;
32 window.internals.forceCompositingUpdate(document);
35 if (window.internals) {
36 rects = window.internals.touchEventTargetLayerRects(document);
37 shouldBe("rects.length", "1");
38 shouldBeEqualToString("rects[0].layerAssociatedNode.id", "layer");
41 // Make the layer non-composited
44 // Verify we now have a hit rect on the document.
45 // (layout and compositing update are done by touchEventTargetLayerRects().)
46 if (window.internals) {
47 rects = window.internals.touchEventTargetLayerRects(document);
48 shouldBe("rects.length", "1");
49 shouldBeEqualToString("rects[0].layerAssociatedNode.nodeName", "#document");