<html>
<style>
.test {
    width: 200px;
    height: 200px;
    position: relative;
    will-change: transform;
}
.box {
    width: 100px;
    height: 100px;
    background: green;
    position: absolute;
}
.bar {
    height:25px;
}
.pan-x {
    touch-action:pan-x;
    background: green;
}

.manipulation {
    touch-action:manipulation;
    background: yellow;
}
</style>
<script>
window.onload = function () {
    if (window.testRunner)
        testRunner.dumpAsText();
    if (window.internals)
        results.innerText = internals.layerTreeAsText(document, internals.LAYER_TREE_INCLUDES_EVENT_REGION);
}
</script>
<body>
<div class="test">
    <div class="pan-x bar">
        <div class="manipulation box"></div>
    </div>
</div>
<div class="test">
    <div class="manipulation bar">
        <div class="pan-x box"></div>
    </div>
</div>
<pre id="results"></pre>
</body>
</html>
