Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(219)

Issue 7759045: Fix opt-in checks for out-of-flow positioned descendants

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 10 months ago by vollick
Modified:
12 years, 9 months ago
Base URL:
git://git.webkit.org/WebKit.git@master
Visibility:
Public.

Description

This is an aggregate patch. It will probably need to be split up before landing. It contains several fixes Glenn and I have had in flight. All of these patches were needed to get the code working correctly, and all needed to be modified updated. The pieces are 1) The "early out" work. That patch introduces the RAII object I make heavy use of in this patch. The object has been modified significantly. 2) An implementation of the plan outlined here (see the last comment): https://bugs.webkit.org/show_bug.cgi?id=109591 3) Code for maintaining m_hasFixedPositionDescendant. 4) Many fixes to ensure that we dirty the right state and schedule updates so that we can have some confidence that the values we need will be clean when we use them. I would really appreciate a thorough review. If the correctness of any this code feels fishy, or if you have to think about it for too long, please flag it, even if it turns out to be correct. Also, if you have ideas for how this patch might be split, please note them. BUG=

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : . #

Patch Set 4 : . #

Patch Set 5 : . #

Total comments: 27

Patch Set 6 : . #

Patch Set 7 : . #

Total comments: 1

Patch Set 8 : . #

Patch Set 9 : . #

Patch Set 10 : About to gut the unnecessary optimizations. #

Patch Set 11 : . #

Patch Set 12 : Massive overhaul. #

Patch Set 13 : Removed debugging crud from the layout tests. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+952 lines, -167 lines) Patch
M LayoutTests/compositing/overflow/automatically-opt-into-composited-scrolling.html View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +11 lines, -6 lines 0 comments Download
A LayoutTests/compositing/overflow/automatically-opt-into-composited-scrolling-after-style-change.html View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +169 lines, -0 lines 0 comments Download
A LayoutTests/compositing/overflow/automatically-opt-into-composited-scrolling-after-style-change-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +39 lines, -0 lines 0 comments Download
A LayoutTests/compositing/overflow/do-not-opt-in-with-out-of-flow-descendant.html View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +129 lines, -0 lines 0 comments Download
A LayoutTests/compositing/overflow/do-not-opt-in-with-out-of-flow-descendant-expected.txt View 1 2 3 4 5 6 7 1 chunk +15 lines, -0 lines 0 comments Download
A LayoutTests/compositing/overflow/invisible-descendants-should-not-affect-opt-in.html View 1 2 3 4 5 6 7 1 chunk +116 lines, -0 lines 0 comments Download
A LayoutTests/compositing/overflow/invisible-descendants-should-not-affect-opt-in-expected.txt View 1 2 3 4 5 6 7 1 chunk +7 lines, -0 lines 0 comments Download
M Source/WebCore/dom/Document.cpp View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +6 lines, -0 lines 0 comments Download
M Source/WebCore/rendering/RenderLayer.h View 1 2 3 4 5 6 7 8 9 10 11 9 chunks +49 lines, -8 lines 0 comments Download
M Source/WebCore/rendering/RenderLayer.cpp View 1 2 3 4 5 6 7 8 9 10 11 31 chunks +342 lines, -113 lines 0 comments Download
M Source/WebCore/rendering/RenderLayerCompositor.h View 1 2 3 1 chunk +7 lines, -1 line 0 comments Download
M Source/WebCore/rendering/RenderLayerCompositor.cpp View 1 2 3 4 5 6 7 8 9 10 11 8 chunks +16 lines, -9 lines 0 comments Download
M Source/WebCore/rendering/RenderObject.h View 1 2 3 5 6 7 8 9 10 11 1 chunk +4 lines, -0 lines 0 comments Download
M Source/WebCore/rendering/RenderObject.cpp View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +42 lines, -30 lines 0 comments Download

Messages

Total messages: 7
vollick
+shawnsingh, +hartmanng Hey! This beast is finally ready for a review. Please be merciless.
12 years, 9 months ago (2013-03-26 20:35:18 UTC) #1
vollick
+danakj
12 years, 9 months ago (2013-03-26 20:57:06 UTC) #2
hartmanng
Here's my first look through. I think I got less careful towards the end though, ...
12 years, 9 months ago (2013-03-26 22:51:59 UTC) #3
vollick
New patch. https://codereview.appspot.com/7759045/diff/11001/Source/WebCore/rendering/RenderBlock.cpp File Source/WebCore/rendering/RenderBlock.cpp (right): https://codereview.appspot.com/7759045/diff/11001/Source/WebCore/rendering/RenderBlock.cpp#newcode113 Source/WebCore/rendering/RenderBlock.cpp:113: const size_t MaximumDeltaListLength = 16; On 2013/03/26 ...
12 years, 9 months ago (2013-03-27 16:27:34 UTC) #4
vollick
That business with the deltas in RenderBlock was premature optimization. We only spend about 0.3ms ...
12 years, 9 months ago (2013-03-29 02:16:35 UTC) #5
vollick
I'm pretty excited about this patch. Please review if you have a moment. As I ...
12 years, 9 months ago (2013-03-30 05:19:06 UTC) #6
vollick
12 years, 9 months ago (2013-03-30 18:42:25 UTC) #7
I've split this patch into two pieces
 1) An update to hartmanng's https://bugs.webkit.org/show_bug.cgi?id=109966
    https://codereview.appspot.com/8166047/
 2) A reworking of the out-of-flow positioned descendants checks.
    https://codereview.appspot.com/8200043/

The second depends on the first. PTAL at these patches when you have a sec.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b