Changeset 112617 in webkit


Ignore:
Timestamp:
Mar 29, 2012 5:21:00 PM (12 years ago)
Author:
noam.rosenthal@nokia.com
Message:

[Qt][WK2] Direct composited image assignment doesn't work
https://bugs.webkit.org/show_bug.cgi?id=82525

Reviewed by Kenneth Rohde Christiansen.

We don't need to check whether the image or contentsRect are updated,
since assignImageToLayer is a cheap operation after the LayerBackingStore
refactor.

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::setLayerChildren):
(WebKit::WebLayerTreeRenderer::setLayerState):
(WebKit::WebLayerTreeRenderer::renderNextFrame):

Location:
trunk/Source/WebKit2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r112559 r112617  
     12012-03-29  No'am Rosenthal  <noam.rosenthal@nokia.com>
     2
     3        [Qt][WK2] Direct composited image assignment doesn't work
     4        https://bugs.webkit.org/show_bug.cgi?id=82525
     5
     6        Reviewed by Kenneth Rohde Christiansen.
     7
     8        We don't need to check whether the image or contentsRect are updated,
     9        since assignImageToLayer is a cheap operation after the LayerBackingStore
     10        refactor.
     11
     12        * UIProcess/WebLayerTreeRenderer.cpp:
     13        (WebKit::WebLayerTreeRenderer::setLayerChildren):
     14        (WebKit::WebLayerTreeRenderer::setLayerState):
     15        (WebKit::WebLayerTreeRenderer::renderNextFrame):
     16
    1172012-03-29  Sheriff Bot  <webkit.review.bot@gmail.com>
    218
  • trunk/Source/WebKit2/Shared/WebLayerTreeInfo.h

    r109302 r112617  
    108108            bool preserves3D : 1;
    109109            bool contentNeedsDisplay : 1;
    110             bool imageIsUpdated: 1;
    111110            bool isRootLayer: 1;
    112111        };
  • trunk/Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp

    r111567 r112617  
    174174    LayerMap::iterator it = m_layers.find(id);
    175175    GraphicsLayer* layer = it->second;
    176     bool needsToUpdateImageTiles = layerInfo.imageIsUpdated || (layerInfo.contentsRect != layer->contentsRect() && layerInfo.imageBackingStoreID);
    177176
    178177    layer->setName(layerInfo.name);
     
    191190    layer->setDrawsContent(layerInfo.drawsContent);
    192191
    193     if (needsToUpdateImageTiles)
    194         assignImageToLayer(layer, layerInfo.imageBackingStoreID);
     192    assignImageToLayer(layer, layerInfo.imageBackingStoreID);
    195193
    196194    // Never make the root layer clip.
     
    319317void WebLayerTreeRenderer::assignImageToLayer(GraphicsLayer* layer, int64_t imageID)
    320318{
     319    if (!imageID) {
     320        layer->setContentsToMedia(0);
     321        return;
     322    }
     323
    321324    HashMap<int64_t, RefPtr<TextureMapperBackingStore> >::iterator it = m_directlyCompositedImages.find(imageID);
    322325    ASSERT(it != m_directlyCompositedImages.end());
  • trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.cpp

    r112096 r112617  
    358358    m_layerInfo.imageBackingStoreID = newID;
    359359    m_image = image;
    360     m_layerInfo.imageIsUpdated = true;
    361360    GraphicsLayer::setContentsToImage(image);
    362361}
     
    432431{
    433432    // The remote image might have been released by purgeBackingStores.
    434     if (m_image) {
    435         if (!m_layerInfo.imageBackingStoreID) {
    436             m_layerInfo.imageBackingStoreID = m_webGraphicsLayerClient->adoptImageBackingStore(m_image.get());
    437             m_layerInfo.imageIsUpdated = true;
    438         }
    439     }
     433    if (m_image && !m_layerInfo.imageBackingStoreID)
     434        m_layerInfo.imageBackingStoreID = m_webGraphicsLayerClient->adoptImageBackingStore(m_image.get());
    440435
    441436    if (m_modified) {
     
    470465
    471466    m_modified = false;
    472     m_layerInfo.imageIsUpdated = false;
    473467    if (m_hasPendingAnimations)
    474468        notifyAnimationStarted(WTF::currentTime());
Note: See TracChangeset for help on using the changeset viewer.