Skip to content
  • yael.aharon@nokia.com's avatar
    [Qt][WK2] Nested fixed elements scroll too fast · 62c5c3f7
    yael.aharon@nokia.com authored
    https://bugs.webkit.org/show_bug.cgi?id=83720
    
    Reviewed by Noam Rosenthal.
    
    .:
    
    * ManualTests/nested-fixed-position.html: Added.
    
    Source/WebCore:
    
    Before setting the scrollPositionDelta to a fixed layer, check if it has an ancestor which also has fixed position.
    If it does, do not set scrollPositionDelta.
    Added a flag to TextureMapperLayer and GraphicsLayerTextureMapper indicating if it is a fixed position layer.
    
    * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
    (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
    * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
    (WebCore::GraphicsLayerTextureMapper::setFixedToViewport):
    (WebCore::GraphicsLayerTextureMapper::fixedToViewport):
    (GraphicsLayerTextureMapper):
    * platform/graphics/texmap/TextureMapperLayer.cpp:
    (WebCore::TextureMapperLayer::syncCompositingStateSelf):
    (WebCore::TextureMapperLayer::isAncestorFixedToViewport):
    (WebCore):
    (WebCore::TextureMapperLayer::setScrollPositionDeltaIfNeeded):
    * platform/graphics/texmap/TextureMapperLayer.h:
    (TextureMapperLayer):
    (WebCore::TextureMapperLayer::setFixedToViewport):
    
    Source/WebKit2:
    
    Set the fixedToViewport flag on the fixed position layers and adjust to
    the new function name for setting scrollPositionDelta.
    
    * UIProcess/WebLayerTreeRenderer.cpp:
    (WebKit::WebLayerTreeRenderer::adjustPositionForFixedLayers):
    (WebKit::WebLayerTreeRenderer::setLayerState):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@113983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    62c5c3f7