⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 136139 in webkit


Ignore:
Timestamp:
Nov 29, 2012, 10:17:51 AM (14 years ago)
Author:
Christophe Dumez
Message:

[CoordinatedGraphics] Have LayerTreeRenderer::ensureLayer() return the layer
​https://bugs.webkit.org/show_bug.cgi?id=103645

Reviewed by Noam Rosenthal.

The current LayerTreeRenderer code keep calling ensureLayer() and then
LayerMap::find() to retrieve the layer. Since ensureLayer() already has
a pointer to the layer, we can simply have the function return it.
This is slightly more efficient and it makes the code a bit simpler.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerChildren):
(WebKit::LayerTreeRenderer::setLayerFilters):
(WebKit::LayerTreeRenderer::setLayerState):
(WebKit::LayerTreeRenderer::ensureLayer):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
Location:
trunk/Source/WebKit2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r136133 r136139  
     12012-11-29  Christophe Dumez  <christophe.dumez@intel.com>
     2
     3        [CoordinatedGraphics] Have LayerTreeRenderer::ensureLayer() return the layer
     4        https://bugs.webkit.org/show_bug.cgi?id=103645
     5
     6        Reviewed by Noam Rosenthal.
     7
     8        The current LayerTreeRenderer code keep calling ensureLayer() and then
     9        LayerMap::find() to retrieve the layer. Since ensureLayer() already has
     10        a pointer to the layer, we can simply have the function return it.
     11        This is slightly more efficient and it makes the code a bit simpler.
     12
     13        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
     14        (WebKit::LayerTreeRenderer::setLayerChildren):
     15        (WebKit::LayerTreeRenderer::setLayerFilters):
     16        (WebKit::LayerTreeRenderer::setLayerState):
     17        (WebKit::LayerTreeRenderer::ensureLayer):
     18        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
     19
    1202012-11-29  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
    221
  • trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp

    r136016 r136139  
    267267void LayerTreeRenderer::setLayerChildren(WebLayerID id, const Vector<WebLayerID>& childIDs)
    268268{
    269     ensureLayer(id);
    270     LayerMap::iterator it = m_layers.find(id);
    271     GraphicsLayer* layer = it->value;
     269    GraphicsLayer* layer = ensureLayer(id);
    272270    Vector<GraphicsLayer*> children;
    273271
    … …  
    287285void LayerTreeRenderer::setLayerFilters(WebLayerID id, const FilterOperations& filters)
    288286{
    289     ensureLayer(id);
    290     LayerMap::iterator it = m_layers.find(id);
    291     ASSERT(it != m_layers.end());
    292 
    293     GraphicsLayer* layer = it->value;
     287    GraphicsLayer* layer = ensureLayer(id);
     288
    294289#if ENABLE(CSS_SHADERS)
    295290    injectCachedCustomFilterPrograms(filters);
    … …  
    333328void LayerTreeRenderer::setLayerState(WebLayerID id, const WebLayerInfo& layerInfo)
    334329{
    335     ensureLayer(id);
    336     LayerMap::iterator it = m_layers.find(id);
    337     ASSERT(it != m_layers.end());
    338 
    339     GraphicsLayer* layer = it->value;
     330    GraphicsLayer* layer = ensureLayer(id);
    340331
    341332    layer->setReplicatedByLayer(layerByID(layerInfo.replica));
    … …  
    386377
    387378
    388 void LayerTreeRenderer::ensureLayer(WebLayerID id)
    389 {
     379WebCore::GraphicsLayer* LayerTreeRenderer::ensureLayer(WebLayerID id)
     380{
     381    LayerMap::iterator it = m_layers.find(id);
     382    if (it != m_layers.end())
     383        return it->value;
     384
    390385    // We have to leak the new layer's pointer and manage it ourselves,
    391386    // because OwnPtr is not copyable.
    392     if (m_layers.find(id) == m_layers.end())
    393         m_layers.add(id, createLayer(id).leakPtr());
     387    WebCore::GraphicsLayer* layer = createLayer(id).leakPtr();
     388    m_layers.add(id, layer);
     389
     390    return layer;
    394391}
    395392
  • trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h

    r136009 r136139  
    143143    void removeReleasedImageBackingsIfNeeded();
    144144    void ensureRootLayer();
    145     void ensureLayer(WebLayerID);
     145    WebCore::GraphicsLayer* ensureLayer(WebLayerID);
    146146    void commitPendingBackingStoreOperations();
    147147
Note: See TracChangeset for help on using the changeset viewer.