|
|
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=
Total comments: 27
Total comments: 1
|
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
|
Total messages: 7
|