<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[175116] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/175116">175116</a></dd>
<dt>Author</dt> <dd>zandobersek@gmail.com</dd>
<dt>Date</dt> <dd>2014-10-23 04:17:38 -0700 (Thu, 23 Oct 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>[TexMap] Clean up virtual method declarations in GraphicsLayerTextureMapper
https://bugs.webkit.org/show_bug.cgi?id=137957

Reviewed by Martin Robinson.

Added override notation to the GraphicsLayerTextureMapper methods that are
overriding the base methods from the GraphicsLayer class and don't have it yet.
Also reordered these methods to follow the order of declaration in the
GraphicsLayer class.

Removed ::setName() and ::willBeDestroyed() methods since they just called
the base class' methods.

Also removed the ::solidColor() and ::changeMask() methods. The first one was
only called in one place which can reference the m_solidColor member directly,
and the second one wasn't used at all.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
(WebCore::GraphicsLayerTextureMapper::setName): Deleted.
(WebCore::GraphicsLayerTextureMapper::willBeDestroyed): Deleted.
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(WebCore::GraphicsLayerTextureMapper::solidColor): Deleted.
(WebCore::GraphicsLayerTextureMapper::usesContentsLayer): Deleted.
(WebCore::GraphicsLayerTextureMapper::platformLayer): Deleted.
(WebCore::GraphicsLayerTextureMapper::changeMask): Deleted.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMappercpp">trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMapperh">trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (175115 => 175116)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-10-23 09:55:03 UTC (rev 175115)
+++ trunk/Source/WebCore/ChangeLog        2014-10-23 11:17:38 UTC (rev 175116)
</span><span class="lines">@@ -1,3 +1,32 @@
</span><ins>+2014-10-23  Zan Dobersek  &lt;zdobersek@igalia.com&gt;
+
+        [TexMap] Clean up virtual method declarations in GraphicsLayerTextureMapper
+        https://bugs.webkit.org/show_bug.cgi?id=137957
+
+        Reviewed by Martin Robinson.
+
+        Added override notation to the GraphicsLayerTextureMapper methods that are
+        overriding the base methods from the GraphicsLayer class and don't have it yet.
+        Also reordered these methods to follow the order of declaration in the
+        GraphicsLayer class.
+
+        Removed ::setName() and ::willBeDestroyed() methods since they just called
+        the base class' methods.
+
+        Also removed the ::solidColor() and ::changeMask() methods. The first one was
+        only called in one place which can reference the m_solidColor member directly,
+        and the second one wasn't used at all.
+
+        * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
+        (WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
+        (WebCore::GraphicsLayerTextureMapper::setName): Deleted.
+        (WebCore::GraphicsLayerTextureMapper::willBeDestroyed): Deleted.
+        * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
+        (WebCore::GraphicsLayerTextureMapper::solidColor): Deleted.
+        (WebCore::GraphicsLayerTextureMapper::usesContentsLayer): Deleted.
+        (WebCore::GraphicsLayerTextureMapper::platformLayer): Deleted.
+        (WebCore::GraphicsLayerTextureMapper::changeMask): Deleted.
+
</ins><span class="cx"> 2014-10-23  Krzysztof Czech  &lt;k.czech@samsung.com&gt;
</span><span class="cx"> 
</span><span class="cx">         AX: Do the early return when role is different than UnknownRole
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMappercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (175115 => 175116)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp        2014-10-23 09:55:03 UTC (rev 175115)
+++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp        2014-10-23 11:17:38 UTC (rev 175116)
</span><span class="lines">@@ -67,11 +67,6 @@
</span><span class="cx">         client().notifyFlushRequired(this);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void GraphicsLayerTextureMapper::setName(const String&amp; name)
-{
-    GraphicsLayer::setName(name);
-}
-
</del><span class="cx"> GraphicsLayerTextureMapper::~GraphicsLayerTextureMapper()
</span><span class="cx"> {
</span><span class="cx">     if (m_contentsLayer)
</span><span class="lines">@@ -80,11 +75,6 @@
</span><span class="cx">     willBeDestroyed();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void GraphicsLayerTextureMapper::willBeDestroyed()
-{
-    GraphicsLayer::willBeDestroyed();
-}
-
</del><span class="cx"> void GraphicsLayerTextureMapper::setNeedsDisplay()
</span><span class="cx"> {
</span><span class="cx">     if (!drawsContent())
</span><span class="lines">@@ -489,7 +479,7 @@
</span><span class="cx">         m_layer-&gt;setOpacity(opacity());
</span><span class="cx"> 
</span><span class="cx">     if (m_changeMask &amp; BackgroundColorChange)
</span><del>-        m_layer-&gt;setSolidColor(solidColor());
</del><ins>+        m_layer-&gt;setSolidColor(m_solidColor);
</ins><span class="cx"> 
</span><span class="cx">     if (m_changeMask &amp; FilterChange)
</span><span class="cx">         m_layer-&gt;setFilters(filters());
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMapperh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h (175115 => 175116)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h        2014-10-23 09:55:03 UTC (rev 175115)
+++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h        2014-10-23 11:17:38 UTC (rev 175116)
</span><span class="lines">@@ -32,7 +32,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-class GraphicsLayerTextureMapper : public GraphicsLayer, public TextureMapperPlatformLayer::Client {
</del><ins>+class GraphicsLayerTextureMapper final : public GraphicsLayer, TextureMapperPlatformLayer::Client {
</ins><span class="cx"> public:
</span><span class="cx">     explicit GraphicsLayerTextureMapper(GraphicsLayerClient&amp;);
</span><span class="cx">     virtual ~GraphicsLayerTextureMapper();
</span><span class="lines">@@ -40,59 +40,58 @@
</span><span class="cx">     void setScrollClient(TextureMapperLayer::ScrollingClient* client) { m_layer-&gt;setScrollClient(client); }
</span><span class="cx">     void setID(uint32_t id) { m_layer-&gt;setID(id); }
</span><span class="cx"> 
</span><del>-    // reimps from GraphicsLayer.h
-    virtual void setNeedsDisplay();
-    virtual void setContentsNeedsDisplay();
-    virtual void setNeedsDisplayInRect(const FloatRect&amp;, ShouldClipToLayer = ClipToLayer);
-    virtual bool setChildren(const Vector&lt;GraphicsLayer*&gt;&amp;);
-    virtual void addChild(GraphicsLayer*);
-    virtual void addChildAtIndex(GraphicsLayer*, int index);
-    virtual void addChildAbove(GraphicsLayer* layer, GraphicsLayer* sibling);
-    virtual void addChildBelow(GraphicsLayer* layer, GraphicsLayer* sibling);
-    virtual bool replaceChild(GraphicsLayer* oldChild, GraphicsLayer* newChild);
-    virtual void setMaskLayer(GraphicsLayer* layer);
-    virtual void setPosition(const FloatPoint&amp; p);
-    virtual void setAnchorPoint(const FloatPoint3D&amp; p);
-    virtual void setSize(const FloatSize&amp; size);
-    virtual void setTransform(const TransformationMatrix&amp; t);
-    virtual void setChildrenTransform(const TransformationMatrix&amp; t);
-    virtual void setPreserves3D(bool b);
-    virtual void setMasksToBounds(bool b);
-    virtual void setDrawsContent(bool b);
-    virtual void setContentsVisible(bool);
-    virtual void setContentsOpaque(bool b);
-    virtual void setBackfaceVisibility(bool b);
-    virtual void setOpacity(float opacity);
-    virtual void setContentsRect(const FloatRect&amp;);
-    virtual void setReplicatedByLayer(GraphicsLayer*);
-    virtual void setContentsToImage(Image*);
-    virtual void setContentsToSolidColor(const Color&amp;);
-    Color solidColor() const { return m_solidColor; }
-    virtual void setContentsToPlatformLayer(PlatformLayer*, ContentsLayerPurpose);
</del><ins>+    // GraphicsLayer
+    virtual bool setChildren(const Vector&lt;GraphicsLayer*&gt;&amp;) override;
+    virtual void addChild(GraphicsLayer*) override;
+    virtual void addChildAtIndex(GraphicsLayer*, int index) override;
+    virtual void addChildAbove(GraphicsLayer*, GraphicsLayer* sibling) override;
+    virtual void addChildBelow(GraphicsLayer*, GraphicsLayer* sibling) override;
+    virtual bool replaceChild(GraphicsLayer* oldChild, GraphicsLayer* newChild) override;
+
+    virtual void setMaskLayer(GraphicsLayer*) override;
+    virtual void setReplicatedByLayer(GraphicsLayer*) override;
+    virtual void setPosition(const FloatPoint&amp;) override;
+    virtual void setAnchorPoint(const FloatPoint3D&amp;) override;
+    virtual void setSize(const FloatSize&amp;) override;
+    virtual void setTransform(const TransformationMatrix&amp;) override;
+    virtual void setChildrenTransform(const TransformationMatrix&amp;) override;
+    virtual void setPreserves3D(bool) override;
+    virtual void setMasksToBounds(bool) override;
+    virtual void setDrawsContent(bool) override;
+    virtual void setContentsVisible(bool) override;
+    virtual void setContentsOpaque(bool) override;
+    virtual void setBackfaceVisibility(bool) override;
+    virtual void setOpacity(float) override;
+    virtual bool setFilters(const FilterOperations&amp;) override;
+
+    virtual void setNeedsDisplay() override;
+    virtual void setNeedsDisplayInRect(const FloatRect&amp;, ShouldClipToLayer = ClipToLayer) override;
+    virtual void setContentsNeedsDisplay() override;
+    virtual void setContentsRect(const FloatRect&amp;) override;
+
+    virtual bool addAnimation(const KeyframeValueList&amp;, const FloatSize&amp;, const Animation*, const String&amp;, double) override;
+    virtual void pauseAnimation(const String&amp;, double) override;
+    virtual void removeAnimation(const String&amp;) override;
+
+    virtual void setContentsToImage(Image*) override;
+    virtual void setContentsToSolidColor(const Color&amp;) override;
+    virtual void setContentsToPlatformLayer(PlatformLayer*, ContentsLayerPurpose) override;
+    virtual bool usesContentsLayer() const override { return m_contentsLayer; }
+    virtual PlatformLayer* platformLayer() const override { return m_contentsLayer; }
+
</ins><span class="cx">     virtual void setShowDebugBorder(bool) override;
</span><span class="cx">     virtual void setDebugBorder(const Color&amp;, float width) override;
</span><span class="cx">     virtual void setShowRepaintCounter(bool) override;
</span><del>-    virtual void flushCompositingState(const FloatRect&amp;);
-    virtual void flushCompositingStateForThisLayerOnly();
-    virtual void setName(const String&amp; name);
-    virtual bool usesContentsLayer() const { return m_contentsLayer; }
-    virtual PlatformLayer* platformLayer() const { return m_contentsLayer; }
</del><span class="cx"> 
</span><del>-    inline int changeMask() const { return m_changeMask; }
</del><ins>+    virtual void flushCompositingState(const FloatRect&amp;) override;
+    virtual void flushCompositingStateForThisLayerOnly() override;
</ins><span class="cx"> 
</span><del>-    virtual bool addAnimation(const KeyframeValueList&amp;, const FloatSize&amp;, const Animation*, const String&amp;, double);
-    virtual void pauseAnimation(const String&amp;, double);
-    virtual void removeAnimation(const String&amp;);
-    void setAnimations(const GraphicsLayerAnimations&amp;);
-
</del><span class="cx">     TextureMapperLayer* layer() const { return m_layer.get(); }
</span><span class="cx"> 
</span><span class="cx">     void didCommitScrollOffset(const IntSize&amp;);
</span><span class="cx">     void setIsScrollable(bool);
</span><span class="cx">     bool isScrollable() const { return m_isScrollable; }
</span><span class="cx"> 
</span><del>-    virtual bool setFilters(const FilterOperations&amp;);
-
</del><span class="cx">     void setFixedToViewport(bool);
</span><span class="cx">     bool fixedToViewport() const { return m_fixedToViewport; }
</span><span class="cx"> 
</span><span class="lines">@@ -100,20 +99,21 @@
</span><span class="cx">     float debugBorderWidth() const { return m_debugBorderWidth; }
</span><span class="cx">     void setRepaintCount(int);
</span><span class="cx"> 
</span><ins>+    void setAnimations(const GraphicsLayerAnimations&amp;);
</ins><span class="cx">     bool startedAnimation() const { return m_startedAnimation; }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    virtual void willBeDestroyed();
</del><span class="cx"> 
</span><ins>+    // TextureMapperPlatformLayer::Client
+    virtual void platformLayerWillBeDestroyed() override { setContentsToPlatformLayer(0, NoContentsLayer); }
+    virtual void setPlatformLayerNeedsDisplay() override { setContentsNeedsDisplay(); }
+
</ins><span class="cx">     void commitLayerChanges();
</span><span class="cx">     void updateDebugBorderAndRepaintCount();
</span><span class="cx">     void updateBackingStoreIfNeeded();
</span><span class="cx">     void prepareBackingStoreIfNeeded();
</span><span class="cx">     bool shouldHaveBackingStore() const;
</span><span class="cx"> 
</span><del>-    virtual void platformLayerWillBeDestroyed() override { setContentsToPlatformLayer(0, NoContentsLayer); }
-    virtual void setPlatformLayerNeedsDisplay() override { setContentsNeedsDisplay(); }
-
</del><span class="cx">     // This set of flags help us defer which properties of the layer have been
</span><span class="cx">     // modified by the compositor, so we can know what to look for in the next flush.
</span><span class="cx">     enum ChangeMask {
</span></span></pre>
</div>
</div>

</body>
</html>