Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b940c0441af5d96ddd5bb8b5ac87217f7087a5ca
      
https://github.com/WebKit/WebKit/commit/b940c0441af5d96ddd5bb8b5ac87217f7087a5ca
  Author: Nikolaos Mouchtaris <[email protected]>
  Date:   2024-01-19 (Fri, 19 Jan 2024)

  Changed paths:
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scroll-anchoring/shadow-dom-subscroller-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scroll-anchoring/shadow-dom-subscroller.html
    M Source/WebCore/page/scrolling/ScrollAnchoringController.cpp

  Log Message:
  -----------
  [scroll-anchoring] Scroll anchoring and Shadow DOM result in weird scrolling 
behavior
https://bugs.webkit.org/show_bug.cgi?id=267733
rdar://121165484

Reviewed by Tim Nguyen.

After https://commits.webkit.org/272277@main we descend subscrollers that are 
not maintaining a
scroll anchor. In the logic added to 
ScrollAnchoringController::invalidateAnchorElement we
look to see if the current scroller is in a scroll anchoring chain, if it is 
not currently
maintaining an anchor element. When the owning scroller is in the shadow dom, 
the element walk would
not include it, so it wouldn't notify the parent scroller to invalidate its 
anchor element. To fix this,
do the parent walk via parentElementInComposedTree to include the elements in 
the shadow dom.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-scroll-anchoring/shadow-dom-subscroller-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-scroll-anchoring/shadow-dom-subscroller.html:
 Added.
* Source/WebCore/page/scrolling/ScrollAnchoringController.cpp:
(WebCore::ScrollAnchoringController::isInScrollAnchoringAncestorChain):

Canonical link: https://commits.webkit.org/273254@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to