[Reland] Make scroll bounds include subpixel accumulation
This relands r532919 which was reverted in r533667 The original patch worked only in the initial case but the corrected layer bounds were clobbered in ScrollingCoordinator::ScrollableAreaScrollLayerDidChange. Even though CompositedLayerMapping::UpdateScrollingLayerGeometry is always called after this method, in ScrollingCoordinator the bounds are set directly on the WebLayer. In CLM we set the bounds on a GraphicsLayer which caches the size itself. It'll only update the WebLayer bounds if the new size differs from the cached size. Thus, even though the bounds were changed in ScrollingCoordinator, CLM would early out since it the GraphicsLayer size hasn't changed. This CL applies the same fix in ScrollingCoordinator and also adds a new test that covers the linked bug more end-to-end. The original patch is uploaded in patchset 1 for easy diff'ing. Bug: 801381 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: I28f7088ef6b429875c6c984c45fd1c53cf813c02 Reviewed-on: https://chromium-review.googlesource.com/897962Reviewed-by:Tien-Ren Chen <trchen@chromium.org> Commit-Queue: David Bokan <bokan@chromium.org> Cr-Commit-Position: refs/heads/master@{#533913}
Showing
Please register or sign in to comment