<!-- webkit-test-runner [ useThreadedScrolling=false internal:AsyncOverflowScrollingEnabled=true ] -->
<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width">

  <style>
    body {
      margin: 0;
      -webkit-overflow-scrolling: touch;
    }

    .scroller {
      width: 300px;
      height: 320px;
      overflow: scroll;
      padding: 10px;
    }

    .column {
      position: relative;
      width: 280px;
      height: 1200px;
      background: silver;
      border: 2px solid blue;
      transform: translateZ(0);
    }
  </style>
  <script>
    if (window.testRunner)
      testRunner.dumpAsText();

    window.addEventListener('load', function() {
      if (window.testRunner)
        document.getElementById('layers').innerHTML = window.internals.layerTreeAsText(document);
    }, true);
  </script>
</head>

<body>
  <div class="scroller">
    <div class="column">
    </div>
  </div>
  <pre id="layers">Layer tree goes here in DRT</pre>
</body>
</html>
