Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(854)

Issue 2812523003: Update layer position on scroll origin change (Closed)

Created:
3 years, 8 months ago by bokan
Modified:
3 years, 8 months ago
Reviewers:
pdr., skobes
CC:
chromium-reviews, szager+layoutwatch_chromium.org, zoltan1, blink-reviews-layout_chromium.org, pdr+renderingwatchlist_chromium.org, eae+blinkwatch, leviw+renderwatch, jchaffraix+rendering, blink-reviews, blink-reviews-frames_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Update layer position on scroll origin change Layers on the compositor are positioned relative to the physical origin in the top left corner, regardless of writing direction. In Blink, the scroll offset is relative to the scroll origin which changes based on writing direction. This means that changing the scroll origin, without changing the scroll offset, still requires updating the scroll layer's position on the compositor. Previously, this happened by accident as a change in scroll origin would often cause scrollbar existence to change and this would implicitly position the compositor layers through calling PaintLayerCompositor::FrameViewDidChangeSize. This call is unneeded when using overlay scrollbars since no sizes changed so I removed it in https://crrev.com/f5a4f9d38de7403d172ad20f78c462048eae37bc. This caused us to miss positioning scroll layers in cases where we wouldn't otherwise. This patch adds a step after a compositing update that checks if the scroll origin changed and explicitly updates the scroll layer position. BUG=707542 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Review-Url: https://codereview.chromium.org/2812523003 Cr-Commit-Position: refs/heads/master@{#463904} Committed: https://chromium.googlesource.com/chromium/src/+/9c51c9ab54994c6baa9eedde1eb86b549dd8e314

Patch Set 1 #

Patch Set 2 : Add Test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+44 lines, -5 lines) Patch
M third_party/WebKit/Source/core/frame/FrameView.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/frame/FrameView.cpp View 1 3 chunks +15 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp View 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/tests/WebFrameTest.cpp View 1 1 chunk +26 lines, -0 lines 0 comments Download

Messages

Total messages: 20 (12 generated)
bokan
3 years, 8 months ago (2017-04-11 18:34:46 UTC) #8
skobes
lgtm
3 years, 8 months ago (2017-04-11 22:54:11 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2812523003/20001
3 years, 8 months ago (2017-04-11 22:56:07 UTC) #11
commit-bot: I haz the power
Try jobs failed on following builders: linux_layout_tests_slimming_paint_v2 on master.tryserver.chromium.linux (JOB_TIMED_OUT, build hasn't started yet, builder ...
3 years, 8 months ago (2017-04-12 00:58:29 UTC) #13
pdr.
On 2017/04/12 at 00:58:29, commit-bot wrote: > Try jobs failed on following builders: > linux_layout_tests_slimming_paint_v2 ...
3 years, 8 months ago (2017-04-12 02:03:33 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2812523003/20001
3 years, 8 months ago (2017-04-12 02:04:24 UTC) #16
commit-bot: I haz the power
Committed patchset #2 (id:20001) as https://chromium.googlesource.com/chromium/src/+/9c51c9ab54994c6baa9eedde1eb86b549dd8e314
3 years, 8 months ago (2017-04-12 02:28:53 UTC) #19
bokan
3 years, 8 months ago (2017-04-12 10:37:25 UTC) #20
Message was sent while issue was closed.
On 2017/04/12 02:28:53, commit-bot: I haz the power wrote:
> Committed patchset #2 (id:20001) as
>
https://chromium.googlesource.com/chromium/src/+/9c51c9ab54994c6baa9eedde1eb8...

Thanks PDR!

Powered by Google App Engine
This is Rietveld 408576698