Title: [90954] trunk/Source/WebCore
- Revision
- 90954
- Author
- simon.fra...@apple.com
- Date
- 2011-07-13 14:57:57 -0700 (Wed, 13 Jul 2011)
Log Message
2011-07-13 Simon Fraser <simon.fra...@apple.com>
Factor some GraphicsLayer creation code in RenderLayerBacking
https://bugs.webkit.org/show_bug.cgi?id=64487
Reviewed by Sam Weinig.
Move the GraphicsLayer::create() calls into once place so that we
don't have lots of #ifndef NDEBUG in various places, and can share
more code in future.
No behavior change, so no new tests.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::RenderLayerBacking::~RenderLayerBacking):
(WebCore::RenderLayerBacking::createGraphicsLayer):
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::destroyGraphicsLayers):
(WebCore::RenderLayerBacking::updateLayerTransform):
(WebCore::RenderLayerBacking::updateClippingLayers):
(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateForegroundLayer):
(WebCore::RenderLayerBacking::updateMaskLayer):
* rendering/RenderLayerBacking.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (90953 => 90954)
--- trunk/Source/WebCore/ChangeLog 2011-07-13 21:55:27 UTC (rev 90953)
+++ trunk/Source/WebCore/ChangeLog 2011-07-13 21:57:57 UTC (rev 90954)
@@ -1,3 +1,29 @@
+2011-07-13 Simon Fraser <simon.fra...@apple.com>
+
+ Factor some GraphicsLayer creation code in RenderLayerBacking
+ https://bugs.webkit.org/show_bug.cgi?id=64487
+
+ Reviewed by Sam Weinig.
+
+ Move the GraphicsLayer::create() calls into once place so that we
+ don't have lots of #ifndef NDEBUG in various places, and can share
+ more code in future.
+
+ No behavior change, so no new tests.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::RenderLayerBacking):
+ (WebCore::RenderLayerBacking::~RenderLayerBacking):
+ (WebCore::RenderLayerBacking::createGraphicsLayer):
+ (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
+ (WebCore::RenderLayerBacking::destroyGraphicsLayers):
+ (WebCore::RenderLayerBacking::updateLayerTransform):
+ (WebCore::RenderLayerBacking::updateClippingLayers):
+ (WebCore::RenderLayerBacking::updateOverflowControlsLayers):
+ (WebCore::RenderLayerBacking::updateForegroundLayer):
+ (WebCore::RenderLayerBacking::updateMaskLayer):
+ * rendering/RenderLayerBacking.h:
+
2011-07-13 Xan Lopez <xlo...@igalia.com>
[GTK] Fix distcheck.
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (90953 => 90954)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2011-07-13 21:55:27 UTC (rev 90953)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2011-07-13 21:57:57 UTC (rev 90954)
@@ -85,7 +85,7 @@
: m_owningLayer(layer)
, m_artificiallyInflatedBounds(false)
{
- createGraphicsLayer();
+ createPrimaryGraphicsLayer();
}
RenderLayerBacking::~RenderLayerBacking()
@@ -94,29 +94,36 @@
updateOverflowControlsLayers(false, false, false);
updateForegroundLayer(false);
updateMaskLayer(false);
- destroyGraphicsLayer();
+ destroyGraphicsLayers();
}
-void RenderLayerBacking::createGraphicsLayer()
+PassOwnPtr<GraphicsLayer> RenderLayerBacking::createGraphicsLayer(const String& name)
{
- m_graphicsLayer = GraphicsLayer::create(this);
-
+ OwnPtr<GraphicsLayer> graphicsLayer = GraphicsLayer::create(this);
#ifndef NDEBUG
- m_graphicsLayer->setName(nameForLayer());
+ graphicsLayer->setName(name);
#endif
+ return graphicsLayer.release();
+}
-#if USE(ACCELERATED_COMPOSITING)
+void RenderLayerBacking::createPrimaryGraphicsLayer()
+{
+ String layerName;
+#ifndef NDEBUG
+ layerName = nameForLayer();
+#endif
+ m_graphicsLayer = createGraphicsLayer(layerName);
+
ASSERT(renderer());
ASSERT(renderer()->document());
ASSERT(renderer()->document()->frame());
m_graphicsLayer->setContentsScale(pageScaleFactor() * backingScaleFactor());
-#endif
updateLayerOpacity(renderer()->style());
updateLayerTransform(renderer()->style());
}
-void RenderLayerBacking::destroyGraphicsLayer()
+void RenderLayerBacking::destroyGraphicsLayers()
{
if (m_graphicsLayer)
m_graphicsLayer->removeFromParent();
@@ -543,10 +550,7 @@
if (needsAncestorClip) {
if (!m_ancestorClippingLayer) {
- m_ancestorClippingLayer = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_ancestorClippingLayer->setName("Ancestor clipping Layer");
-#endif
+ m_ancestorClippingLayer = createGraphicsLayer("Ancestor clipping Layer");
m_ancestorClippingLayer->setMasksToBounds(true);
layersChanged = true;
}
@@ -558,10 +562,7 @@
if (needsDescendantClip) {
if (!m_clippingLayer) {
- m_clippingLayer = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_clippingLayer->setName("Child clipping Layer");
-#endif
+ m_clippingLayer = createGraphicsLayer("Child clipping Layer");
m_clippingLayer->setMasksToBounds(true);
layersChanged = true;
}
@@ -606,10 +607,7 @@
bool layersChanged = false;
if (needsHorizontalScrollbarLayer) {
if (!m_layerForHorizontalScrollbar) {
- m_layerForHorizontalScrollbar = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_layerForHorizontalScrollbar->setName("horizontal scrollbar");
-#endif
+ m_layerForHorizontalScrollbar = createGraphicsLayer("horizontal scrollbar");
layersChanged = true;
}
} else if (m_layerForHorizontalScrollbar) {
@@ -619,10 +617,7 @@
if (needsVerticalScrollbarLayer) {
if (!m_layerForVerticalScrollbar) {
- m_layerForVerticalScrollbar = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_layerForVerticalScrollbar->setName("vertical scrollbar");
-#endif
+ m_layerForVerticalScrollbar = createGraphicsLayer("vertical scrollbar");
layersChanged = true;
}
} else if (m_layerForVerticalScrollbar) {
@@ -632,10 +627,7 @@
if (needsScrollCornerLayer) {
if (!m_layerForScrollCorner) {
- m_layerForScrollCorner = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_layerForScrollCorner->setName("scroll corner");
-#endif
+ m_layerForScrollCorner = createGraphicsLayer("scroll corner");
layersChanged = true;
}
} else if (m_layerForScrollCorner) {
@@ -651,10 +643,11 @@
bool layerChanged = false;
if (needsForegroundLayer) {
if (!m_foregroundLayer) {
- m_foregroundLayer = GraphicsLayer::create(this);
+ String layerName;
#ifndef NDEBUG
- m_foregroundLayer->setName(nameForLayer() + " (foreground)");
+ layerName = nameForLayer() + " (foreground)";
#endif
+ m_foregroundLayer = createGraphicsLayer(layerName);
m_foregroundLayer->setDrawsContent(true);
m_foregroundLayer->setPaintingPhase(GraphicsLayerPaintForeground);
m_foregroundLayer->setContentsScale(pageScaleFactor() * backingScaleFactor());
@@ -677,10 +670,7 @@
bool layerChanged = false;
if (needsMaskLayer) {
if (!m_maskLayer) {
- m_maskLayer = GraphicsLayer::create(this);
-#ifndef NDEBUG
- m_maskLayer->setName("Mask");
-#endif
+ m_maskLayer = createGraphicsLayer("Mask");
m_maskLayer->setDrawsContent(true);
m_maskLayer->setPaintingPhase(GraphicsLayerPaintMask);
m_maskLayer->setContentsScale(pageScaleFactor() * backingScaleFactor());
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.h (90953 => 90954)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.h 2011-07-13 21:55:27 UTC (rev 90953)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.h 2011-07-13 21:57:57 UTC (rev 90954)
@@ -143,8 +143,10 @@
GraphicsLayer* layerForScrollCorner() const { return m_layerForScrollCorner.get(); }
private:
- void createGraphicsLayer();
- void destroyGraphicsLayer();
+ void createPrimaryGraphicsLayer();
+ void destroyGraphicsLayers();
+
+ PassOwnPtr<GraphicsLayer> createGraphicsLayer(const String&);
RenderBoxModelObject* renderer() const { return m_owningLayer->renderer(); }
RenderLayerCompositor* compositor() const { return m_owningLayer->compositor(); }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes