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

Side by Side Diff: Source/core/rendering/compositing/CompositingInputsUpdater.cpp

Issue 322163003: Rename AncestorDependentProperties to CompositingInputs (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Moar renaming Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 #include "core/rendering/compositing/CompositingPropertyUpdater.h" 6 #include "core/rendering/compositing/CompositingInputsUpdater.h"
7 7
8 #include "core/rendering/RenderBlock.h" 8 #include "core/rendering/RenderBlock.h"
9 #include "core/rendering/RenderLayer.h" 9 #include "core/rendering/RenderLayer.h"
10 #include "core/rendering/compositing/CompositedLayerMapping.h" 10 #include "core/rendering/compositing/CompositedLayerMapping.h"
11 11
12 namespace WebCore { 12 namespace WebCore {
13 13
14 CompositingPropertyUpdater::CompositingPropertyUpdater(RenderLayer* rootRenderLa yer) 14 CompositingInputsUpdater::CompositingInputsUpdater(RenderLayer* rootRenderLayer)
15 : m_geometryMap(UseTransforms) 15 : m_geometryMap(UseTransforms)
16 , m_rootRenderLayer(rootRenderLayer) 16 , m_rootRenderLayer(rootRenderLayer)
17 { 17 {
18 rootRenderLayer->updateDescendantDependentFlags(); 18 rootRenderLayer->updateDescendantDependentFlags();
19 } 19 }
20 20
21 CompositingPropertyUpdater::~CompositingPropertyUpdater() 21 CompositingInputsUpdater::~CompositingInputsUpdater()
22 { 22 {
23 } 23 }
24 24
25 void CompositingPropertyUpdater::updateAncestorDependentProperties(RenderLayer* layer, UpdateType updateType, AncestorInfo info) 25 void CompositingInputsUpdater::update(RenderLayer* layer, UpdateType updateType, AncestorInfo info)
26 { 26 {
27 if (!layer->childNeedsToUpdateAncestorDependantProperties() && updateType != ForceUpdate) 27 if (!layer->childNeedsCompositingInputsUpdate() && updateType != ForceUpdate )
28 return; 28 return;
29 29
30 m_geometryMap.pushMappingsToAncestor(layer, layer->parent()); 30 m_geometryMap.pushMappingsToAncestor(layer, layer->parent());
31 31
32 if (layer->hasCompositedLayerMapping()) 32 if (layer->hasCompositedLayerMapping())
33 info.enclosingCompositedLayer = layer; 33 info.enclosingCompositedLayer = layer;
34 34
35 if (layer->needsToUpdateAncestorDependentProperties()) { 35 if (layer->needsCompositingInputsUpdate()) {
36 if (info.enclosingCompositedLayer) 36 if (info.enclosingCompositedLayer)
37 info.enclosingCompositedLayer->compositedLayerMapping()->setNeedsGra phicsLayerUpdate(); 37 info.enclosingCompositedLayer->compositedLayerMapping()->setNeedsGra phicsLayerUpdate();
38 updateType = ForceUpdate; 38 updateType = ForceUpdate;
39 } 39 }
40 40
41 if (updateType == ForceUpdate) { 41 if (updateType == ForceUpdate) {
42 RenderLayer::AncestorDependentProperties properties; 42 RenderLayer::CompositingInputs properties;
43 43
44 if (!layer->isRootLayer()) { 44 if (!layer->isRootLayer()) {
45 properties.clippedAbsoluteBoundingBox = enclosingIntRect(m_geometryM ap.absoluteRect(layer->boundingBoxForCompositingOverlapTest())); 45 properties.clippedAbsoluteBoundingBox = enclosingIntRect(m_geometryM ap.absoluteRect(layer->boundingBoxForCompositingOverlapTest()));
46 // FIXME: Setting the absBounds to 1x1 instead of 0x0 makes very lit tle sense, 46 // FIXME: Setting the absBounds to 1x1 instead of 0x0 makes very lit tle sense,
47 // but removing this code will make JSGameBench sad. 47 // but removing this code will make JSGameBench sad.
48 // See https://codereview.chromium.org/13912020/ 48 // See https://codereview.chromium.org/13912020/
49 if (properties.clippedAbsoluteBoundingBox.isEmpty()) 49 if (properties.clippedAbsoluteBoundingBox.isEmpty())
50 properties.clippedAbsoluteBoundingBox.setSize(IntSize(1, 1)); 50 properties.clippedAbsoluteBoundingBox.setSize(IntSize(1, 1));
51 51
52 IntRect clipRect = pixelSnappedIntRect(layer->clipper().backgroundCl ipRect(ClipRectsContext(m_rootRenderLayer, AbsoluteClipRects)).rect()); 52 IntRect clipRect = pixelSnappedIntRect(layer->clipper().backgroundCl ipRect(ClipRectsContext(m_rootRenderLayer, AbsoluteClipRects)).rect());
53 properties.clippedAbsoluteBoundingBox.intersect(clipRect); 53 properties.clippedAbsoluteBoundingBox.intersect(clipRect);
54 54
55 const RenderLayer* parent = layer->parent(); 55 const RenderLayer* parent = layer->parent();
56 properties.opacityAncestor = parent->isTransparent() ? parent : pare nt->ancestorDependentProperties().opacityAncestor; 56 properties.opacityAncestor = parent->isTransparent() ? parent : pare nt->compositingInputs().opacityAncestor;
57 properties.transformAncestor = parent->hasTransform() ? parent : par ent->ancestorDependentProperties().transformAncestor; 57 properties.transformAncestor = parent->hasTransform() ? parent : par ent->compositingInputs().transformAncestor;
58 properties.filterAncestor = parent->hasFilter() ? parent : parent->a ncestorDependentProperties().filterAncestor; 58 properties.filterAncestor = parent->hasFilter() ? parent : parent->c ompositingInputs().filterAncestor;
59 59
60 if (layer->renderer()->isOutOfFlowPositioned() && info.ancestorScrol lingLayer && !layer->subtreeIsInvisible()) { 60 if (layer->renderer()->isOutOfFlowPositioned() && info.ancestorScrol lingLayer && !layer->subtreeIsInvisible()) {
61 const RenderObject* container = layer->renderer()->containingBlo ck(); 61 const RenderObject* container = layer->renderer()->containingBlo ck();
62 const RenderObject* scroller = info.ancestorScrollingLayer->rend erer(); 62 const RenderObject* scroller = info.ancestorScrollingLayer->rend erer();
63 properties.isUnclippedDescendant = scroller != container && scro ller->isDescendantOf(container); 63 properties.isUnclippedDescendant = scroller != container && scro ller->isDescendantOf(container);
64 } 64 }
65 } 65 }
66 66
67 layer->updateAncestorDependentProperties(properties); 67 layer->updateCompositingInputs(properties);
68 } 68 }
69 69
70 if (layer->scrollsOverflow()) 70 if (layer->scrollsOverflow())
71 info.ancestorScrollingLayer = layer; 71 info.ancestorScrollingLayer = layer;
72 72
73 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSib ling()) 73 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSib ling())
74 updateAncestorDependentProperties(child, updateType, info); 74 update(child, updateType, info);
75 75
76 m_geometryMap.popMappingsToAncestor(layer->parent()); 76 m_geometryMap.popMappingsToAncestor(layer->parent());
77 77
78 layer->clearChildNeedsToUpdateAncestorDependantProperties(); 78 layer->clearChildNeedsCompositingInputsUpdate();
79 } 79 }
80 80
81 #if !ASSERT_DISABLED 81 #if !ASSERT_DISABLED
82 82
83 void CompositingPropertyUpdater::assertNeedsToUpdateAncestorDependantPropertiesB itsCleared(RenderLayer* layer) 83 void CompositingInputsUpdater::assertNeedsCompositingInputsUpdateBitsCleared(Ren derLayer* layer)
84 { 84 {
85 ASSERT(!layer->childNeedsToUpdateAncestorDependantProperties()); 85 ASSERT(!layer->childNeedsCompositingInputsUpdate());
86 ASSERT(!layer->needsToUpdateAncestorDependentProperties()); 86 ASSERT(!layer->needsCompositingInputsUpdate());
87 87
88 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSib ling()) 88 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSib ling())
89 assertNeedsToUpdateAncestorDependantPropertiesBitsCleared(child); 89 assertNeedsCompositingInputsUpdateBitsCleared(child);
90 } 90 }
91 91
92 #endif 92 #endif
93 93
94 } // namespace WebCore 94 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698