Skip to content
  • commit-queue@webkit.org's avatar
    Need to re-layout fixed position elements after scale when using... · 08ec4ad4
    commit-queue@webkit.org authored
    Need to re-layout fixed position elements after scale when using settings()->fixedElementsLayoutRelativeToFrame()
    https://bugs.webkit.org/show_bug.cgi?id=105486
    
    Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-27
    Reviewed by James Robinson.
    
    In settings()->fixedElementsLayoutRelativeToFrame() mode, fixed-position
    elements are layout relative to the current visible viewport, which can
    be different from the layout viewport when using fixed-layout mode.
    We need to re-layout fixed-position elements in case of visible content
    size changes.
    
    The test is currently chromium-specific due to difficulties to make this
    test works on Mac. The mac port seems to work very differently with
    visible content size when a page is scaled. And there is no reliable way
    to hide scrollbars in mac-wk1 that doesn't cause a side effect.
    
    Source/WebCore:
    
    Test: platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html
    
    * page/FrameView.h:
    (FrameView):
    * page/Page.cpp:
    (WebCore::Page::setPageScaleFactor):
    
    LayoutTests:
    
    * platform/chromium/fast/repaint/relayout-fixed-position-after-scale-expected.html: Added.
    * platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    08ec4ad4