12012-05-07 Julien Chaffraix <jchaffraix@webkit.org>
2
3 Move RenderLayers z-index lists dirtying to post style change
4 https://bugs.webkit.org/show_bug.cgi?id=85437
5
6 Reviewed by NOBODY (OOPS!).
7
8 No expected change in behavior.
9
10 This change moves the z-order lists to RenderLayer::styleChanged. As part of this
11 change, also added proper handling of stacking context transition. This enabled
12 us to tighten more of the dirtyZOrderLists / clearZOrderLists code.
13
14 * rendering/RenderBoxModelObject.cpp:
15 (WebCore::RenderBoxModelObject::styleWillChange):
16 Removed this code, moved to updateStackingContextsAfterStyleChange.
17
18 * rendering/RenderLayer.cpp:
19 (WebCore::RenderLayer::RenderLayer):
20 Only stacking contexts start with dirty z-order lists.
21
22 (WebCore::RenderLayer::dirtyZOrderLists):
23 Added an ASSERT.
24
25 (WebCore::RenderLayer::updateStackingContextsAfterStyleChange):
26 Refactored the code to handle the transition between stacking context status.
27
28 (WebCore::RenderLayer::styleChanged):
29 Added a call to updateStackingContextsAfterStyleChange.
30
31 * rendering/RenderLayer.h:
32 (WebCore::RenderLayer::isStackingContext):
33 Added a call to the next function.
34
35 (WebCore::RenderLayer::layerWithStyleIsStackingContext):
36 Factored the isStackingContext logic here so that we can reuse it inside
37 updateStackingContextsAfterStyleChange.
38
39 (WebCore::RenderLayer::clearZOrderLists):
40 Added an ASSERT.
41