Skip to content
  • jocelyn.turcotte@digia.com's avatar
    [WK2] Enable delegated scrolling as soon as the FrameView is created when using fixed layout · 2a01b626
    jocelyn.turcotte@digia.com authored
    https://bugs.webkit.org/show_bug.cgi?id=100383
    
    Reviewed by Kenneth Rohde Christiansen.
    
    Scroll requests and PageTransitionViewportReady messages depend on
    delegated scrolling being set properly on the FrameView to behave
    properly. Since we were waiting for the viewport information to be
    ready before setting the flag this could cause those messages to be avoided.
    
    This patch takes most of the flag set by setResizesToContentsUsingLayoutSize
    and apply them as soon as possible in WebPage::setUseFixedLayout and
    WebFrameLoaderClient::transitionToCommittedForNewPage.
    
    The behavior should be the same except for the following settings which are
    now set outside of USE(TILED_BACKING_STORE) if we're using fixed layout:
    - setAcceleratedCompositingForFixedPositionEnabled
    - setFixedElementsLayoutRelativeToFrame
    - setFixedPositionCreatesStackingContext
    
    This fixes the tst_QQuickWebView::scrollRequest auto test and improves the
    reliability of the loadVisuallyCommitted signal with pages loaded from disk.
    
    * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
    (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
    * WebProcess/WebPage/WebPage.cpp:
    (WebKit::WebPage::sendViewportAttributesChanged):
    (WebKit::WebPage::setUseFixedLayout):
    (WebKit::WebPage::setFixedLayoutSize):
    * WebProcess/WebPage/WebPage.h:
    (WebPage):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132780 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    2a01b626