[Webkit-unassigned] [Bug 172911] Elements with position: fixed; repaint when window scroll position is set via JavaScript

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jun 20 16:56:43 PDT 2017


https://bugs.webkit.org/show_bug.cgi?id=172911

--- Comment #6 from Simon Fraser (smfr) <simon.fraser at apple.com> ---
We mark the fixed elements as needing layout under:

  * frame #0: 0x0000000107c71df7 WebCore`WebCore::FrameView::setViewportConstrainedObjectsNeedLayout(this=0x0000000119cd5680) at FrameView.cpp:2522
    frame #1: 0x0000000107c71d12 WebCore`WebCore::FrameView::setBaseLayoutViewportOrigin(this=0x0000000119cd5680, origin={ x = 0px (0), y = 80px (5120) }, layoutTriggering=Yes) at FrameView.cpp:1898
    frame #2: 0x0000000107c72a22 WebCore`WebCore::FrameView::updateLayoutViewport(this=0x0000000119cd5680) at FrameView.cpp:1950
    frame #3: 0x0000000107c75fc6 WebCore`WebCore::FrameView::scrollPositionChanged(this=0x0000000119cd5680, oldPosition=0x00007fff5ef5b638, newPosition=0x00007fff5ef5b628) at FrameView.cpp:2561
    frame #4: 0x0000000107c7a84f WebCore`WebCore::FrameView::scrollTo(this=0x0000000119cd5680, newPosition=0x00007fff5ef5b690) at FrameView.cpp:3905
    frame #5: 0x00000001097d0f73 WebCore`WebCore::ScrollView::setScrollOffset(this=0x0000000119cd5680, offset=0x00007fff5ef5b7b0) at ScrollView.cpp:413
    frame #6: 0x000000010977ec0f WebCore`WebCore::ScrollableArea::scrollPositionChanged(this=0x0000000119cd5680, position=0x00007fff5ef5b9c8) at ScrollableArea.cpp:169
    frame #7: 0x000000010977eb5f WebCore`WebCore::ScrollableArea::notifyScrollPositionChanged(this=0x0000000119cd5680, position=0x00007fff5ef5b9c8) at ScrollableArea.cpp:161
    frame #8: 0x000000010723cc1a WebCore`WebCore::AsyncScrollingCoordinator::reconcileScrollingState(this=0x0000000117a6d000, frameView=0x0000000119cd5680, scrollPosition=0x00007fff5ef5bbc8, layoutViewportOriginOrOverrideRect=0x00007fff5ef5bb50, programmaticScroll=true, inStableState=true, scrollingLayerPositionAction=Set) at AsyncScrollingCoordinator.cpp:400
    frame #9: 0x000000010723bea7 WebCore`WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll(this=0x0000000117a6d000, scrollingNodeID=30, scrollPosition=0x00007fff5ef5bbc8, layoutViewportOrigin=optional<WebCore::FloatPoint> @ 0x00007fff5ef5bbb8, programmaticScroll=true, scrollingLayerPositionAction=Set) at AsyncScrollingCoordinator.cpp:344
    frame #10: 0x000000010723bb6c WebCore`WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate(this=0x0000000117a6d000, frameView=0x0000000119cd5680, scrollPosition=0x00007fff5ef5bd20) at AsyncScrollingCoordinator.cpp:250
    frame #11: 0x0000000107c76900 WebCore`WebCore::FrameView::requestScrollPositionUpdate(this=0x0000000119cd5680, position=0x00007fff5ef5bd20) at FrameView.cpp:2706

This doesn't happen for async scrolls because we've already sync'd a new layout viewport from the scrolling thread.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170620/aa50ba56/attachment.html>


More information about the webkit-unassigned mailing list