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

Issue 877173002: Fixed position layer counter-scroll with main thread scroll offset fractional part (Closed)

Created:
5 years, 11 months ago by Yufeng Shen (Slow to review)
Modified:
5 years, 10 months ago
CC:
cc-bugs_chromium.org, chromium-reviews, Rick Byers
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fixed position layer counter-scroll with main thread scroll offset fractional part Main thread can scroll with non-integral scroll offset, but Blink currently only handles integral part of the scroll offset. For example, if main thread scrolls by 10.5, Blink tells CC that the scroll offset is 10 (currently truncated inside Blink) and Blink also sets fixed-position layer's position at 10. This CL makes the non-integral scroll offset works correctly in this case: 1. Blink can tell CC the non-integral scroll offset 10.5 (truncation inside Blink will be removed after this CL). 2. Blink sets fixed-position layer at 10. 3. CC tracks the fractional part of the scroll offset 0.5 and applied it when computing scroll compensation for fixed-position layer during drawing. BUG=414283 Committed: https://crrev.com/2c78036b520cbb4ab8bf7e090208bbbe22f43cba Cr-Commit-Position: refs/heads/master@{#313783}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : ready for review #

Total comments: 8

Patch Set 4 : add SetScrollOffsetFractionalPart() #

Patch Set 5 : resubmit #

Total comments: 2

Patch Set 6 : address comments #

Patch Set 7 : fix unittests #

Unified diffs Side-by-side diffs Delta from patch set Stats (+128 lines, -2 lines) Patch
M cc/blink/web_layer_impl.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M cc/blink/web_layer_impl.cc View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M cc/layers/layer.h View 1 2 3 4 5 2 chunks +5 lines, -0 lines 0 comments Download
M cc/layers/layer.cc View 1 2 3 4 5 2 chunks +13 lines, -0 lines 0 comments Download
M cc/layers/layer_impl.h View 1 2 3 2 chunks +9 lines, -0 lines 0 comments Download
M cc/layers/layer_impl.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/layer_tree_host_common.cc View 1 2 3 1 chunk +10 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_common_unittest.cc View 1 2 3 4 5 6 2 chunks +84 lines, -0 lines 0 comments Download

Messages

Total messages: 14 (3 generated)
Yufeng Shen (Slow to review)
5 years, 11 months ago (2015-01-28 01:41:36 UTC) #2
aelias_OOO_until_Jul13
As part of this, would it work to remove the gfx::ToFlooredVector2d() call in CollectScrollDeltas() in ...
5 years, 11 months ago (2015-01-28 02:04:00 UTC) #4
Yufeng Shen (Slow to review)
" As part of this, would it work to remove the gfx::ToFlooredVector2d() call in CollectScrollDeltas() ...
5 years, 11 months ago (2015-01-28 04:49:23 UTC) #5
aelias_OOO_until_Jul13
OK, sounds fine to do the fractional part sendback in another patch. https://codereview.chromium.org/877173002/diff/40001/cc/layers/layer.cc File cc/layers/layer.cc ...
5 years, 11 months ago (2015-01-28 05:50:29 UTC) #6
Yufeng Shen (Slow to review)
Blink side change: https://codereview.chromium.org/889453002/ https://codereview.chromium.org/877173002/diff/40001/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/877173002/diff/40001/cc/layers/layer.cc#newcode672 cc/layers/layer.cc:672: scroll_offset_fractional_part_ = scroll_offset.DeltaFrom( On 2015/01/28 ...
5 years, 10 months ago (2015-01-28 22:28:09 UTC) #7
aelias_OOO_until_Jul13
https://codereview.chromium.org/877173002/diff/80001/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/877173002/diff/80001/cc/layers/layer.cc#newcode675 cc/layers/layer.cc:675: void Layer::SetScrollOffsetFractionalPart( Let's not mutate scroll_offset_ in this method. ...
5 years, 10 months ago (2015-01-28 22:34:16 UTC) #8
Yufeng Shen (Slow to review)
https://codereview.chromium.org/877173002/diff/80001/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/877173002/diff/80001/cc/layers/layer.cc#newcode675 cc/layers/layer.cc:675: void Layer::SetScrollOffsetFractionalPart( On 2015/01/28 22:34:16, aelias wrote: > Let's ...
5 years, 10 months ago (2015-01-28 22:49:27 UTC) #9
aelias_OOO_until_Jul13
lgtm
5 years, 10 months ago (2015-01-28 22:54:39 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/877173002/120001
5 years, 10 months ago (2015-01-29 20:48:54 UTC) #12
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 10 months ago (2015-01-29 20:53:04 UTC) #13
commit-bot: I haz the power
5 years, 10 months ago (2015-01-29 20:53:55 UTC) #14
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/2c78036b520cbb4ab8bf7e090208bbbe22f43cba
Cr-Commit-Position: refs/heads/master@{#313783}

Powered by Google App Engine
This is Rietveld 408576698