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

Issue 2320463002: [SPV2] Implement the blink-side scroll property tree (Closed)

Created:
4 years, 3 months ago by pdr.
Modified:
4 years, 3 months ago
Reviewers:
sunxd, chrishtr, ajuma, trchen
CC:
ajuma+watch_chromium.org, blink-reviews, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbroman, Justin Novosad, pdr+graphicswatchlist_chromium.org, rwlbuis, Stephen Chennney, slimming-paint-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[SPV2] Implement the blink-side scroll property tree Blink's scroll tree stores auxiliary scrolling information for compositor-thread scrolling. This includes the hierarchy of scrolling (which areas scroll relative to which other areas), whether an area is user-scrollable in the x or y axes, and the extent that an area can be scrolled. This patch is an initial implementation of the blink scroll paint property tree with documentation, a followup will plumb this to the compositor. A proof-of-concept for the end-to-end design is available at: https://codereview.chromium.org/2299533002 BUG=644514 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/d1a5fe1b572bf7b446d45558823ac7a8d759628c Cr-Commit-Position: refs/heads/master@{#417850}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Update comment to not refer to hit testing, switch to IntSizes #

Total comments: 23

Patch Set 3 : Update comments, fix fixed pos bug, extract createOrUpdate for frameview #

Patch Set 4 : Add todo about root nodes, add abspos unit test #

Patch Set 5 : Use std::move to avoid leaking a ref #

Patch Set 6 : Prevent circular reference caught by lsan #

Unified diffs Side-by-side diffs Delta from patch set Stats (+613 lines, -32 lines) Patch
M third_party/WebKit/Source/core/frame/FrameView.h View 1 2 3 4 chunks +10 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/BlockPainter.cpp View 1 chunk +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/FramePainter.cpp View 1 chunk +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/ObjectPaintProperties.h View 1 2 6 chunks +11 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h View 1 2 3 chunks +6 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp View 1 2 3 4 5 7 chunks +86 lines, -15 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilderTest.cpp View 1 2 3 4 5 7 chunks +277 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.h View 2 chunks +3 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp View 1 2 6 chunks +54 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/test_data/fixed-position.html View 2 chunks +5 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/paint/test_data/position-and-scroll.html View 1 chunk +4 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/BUILD.gn View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipPaintPropertyNode.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/EffectPaintPropertyNode.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintChunkProperties.h View 3 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PropertyTreeState.h View 1 chunk +3 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/README.md View 1 chunk +16 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h View 1 2 3 4 5 1 chunk +97 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/testing/PaintPrinters.h View 2 chunks +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/testing/PaintPrinters.cpp View 2 chunks +23 lines, -0 lines 0 comments Download

Messages

Total messages: 40 (21 generated)
pdr.
4 years, 3 months ago (2016-09-07 06:19:24 UTC) #4
trchen
Overall looks good to me. My comments here are just FYI instead of suggestions. +cc ...
4 years, 3 months ago (2016-09-07 23:12:53 UTC) #5
skobes
On 2016/09/07 23:12:53, trchen wrote: > +cc skobes@ > I think there will be weird ...
4 years, 3 months ago (2016-09-07 23:21:56 UTC) #6
pdr.
https://codereview.chromium.org/2320463002/diff/1/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h File third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h (right): https://codereview.chromium.org/2320463002/diff/1/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h#newcode52 third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h:52: // this is the area that could respond to ...
4 years, 3 months ago (2016-09-08 02:29:42 UTC) #7
chrishtr
https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.cpp File third_party/WebKit/Source/core/frame/FrameView.cpp (right): https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.cpp#newcode89 third_party/WebKit/Source/core/frame/FrameView.cpp:89: #include "core/paint/PaintPropertyTreePrinter.h" remove I think it would be reasonable ...
4 years, 3 months ago (2016-09-08 20:43:59 UTC) #8
pdr.
PTAL https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.cpp File third_party/WebKit/Source/core/frame/FrameView.cpp (right): https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.cpp#newcode89 third_party/WebKit/Source/core/frame/FrameView.cpp:89: #include "core/paint/PaintPropertyTreePrinter.h" On 2016/09/08 at 20:43:59, chrishtr wrote: ...
4 years, 3 months ago (2016-09-08 23:16:26 UTC) #9
chrishtr
https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h File third_party/WebKit/Source/core/frame/FrameView.h (right): https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h#newcode621 third_party/WebKit/Source/core/frame/FrameView.h:621: void setRootScroll(PassRefPtr<ScrollPaintPropertyNode> rootScroll) { m_rootScroll = rootScroll; } On ...
4 years, 3 months ago (2016-09-09 16:27:28 UTC) #10
pdr.
On 2016/09/09 at 16:27:28, chrishtr wrote: > https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h > File third_party/WebKit/Source/core/frame/FrameView.h (right): > > https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h#newcode621 ...
4 years, 3 months ago (2016-09-09 21:33:22 UTC) #11
chrishtr
On 2016/09/09 at 21:33:22, pdr wrote: > On 2016/09/09 at 16:27:28, chrishtr wrote: > > ...
4 years, 3 months ago (2016-09-09 21:36:21 UTC) #12
chrishtr
lgtm
4 years, 3 months ago (2016-09-09 21:36:25 UTC) #13
pdr.
On 2016/09/09 at 21:36:25, chrishtr wrote: > lgtm Thanks all! In we go.
4 years, 3 months ago (2016-09-09 21:41:36 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/2320463002/60001
4 years, 3 months ago (2016-09-09 21:42:22 UTC) #16
trchen
BTW non-owner LGTM too. https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h File third_party/WebKit/Source/core/frame/FrameView.h (right): https://codereview.chromium.org/2320463002/diff/20001/third_party/WebKit/Source/core/frame/FrameView.h#newcode621 third_party/WebKit/Source/core/frame/FrameView.h:621: void setRootScroll(PassRefPtr<ScrollPaintPropertyNode> rootScroll) { m_rootScroll ...
4 years, 3 months ago (2016-09-09 22:03:17 UTC) #17
pdr.
On 2016/09/09 at 22:03:17, trchen wrote: > BTW non-owner LGTM too. Non-owner? O_o git log ...
4 years, 3 months ago (2016-09-09 22:08:38 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/224291)
4 years, 3 months ago (2016-09-10 00:06:44 UTC) #20
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/2320463002/60001
4 years, 3 months ago (2016-09-10 00:20:00 UTC) #22
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/2320463002/100001
4 years, 3 months ago (2016-09-11 00:09:19 UTC) #37
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 3 months ago (2016-09-11 00:13:48 UTC) #38
commit-bot: I haz the power
4 years, 3 months ago (2016-09-11 00:16:38 UTC) #40
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/d1a5fe1b572bf7b446d45558823ac7a8d759628c
Cr-Commit-Position: refs/heads/master@{#417850}

Powered by Google App Engine
This is Rietveld 408576698