Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2a8de03264da6ba15528ecc7b553f75dc57a1408
      
https://github.com/WebKit/WebKit/commit/2a8de03264da6ba15528ecc7b553f75dc57a1408
  Author: Alan Baradlay <[email protected]>
  Date:   2024-04-08 (Mon, 08 Apr 2024)

  Changed paths:
    M Source/WebCore/page/LocalFrameViewLayoutContext.cpp
    M Source/WebCore/rendering/RenderBox.cpp
    M Source/WebCore/rendering/RenderElement.cpp
    M Source/WebCore/rendering/RenderElement.h
    M Source/WebCore/rendering/RenderObject.cpp
    M Source/WebCore/rendering/RenderObject.h
    M Source/WebCore/rendering/RenderObjectEnums.h

  Log Message:
  -----------
  https://bugs.webkit.org/show_bug.cgi?id=272315
 [SetNeedsLayout][Cleanup] Decouple marking ancestor chain dirty and scheduling 
layout

Reviewed by Antti Koivisto.

In cases when subtree layout scheduling requires adjusting the layout root, we 
only want to mark some more
renderers dirty without scheduling layout (there's a pending layout scheduled 
already).

Let RenderObject::markContainingBlocksForLayout only deal with marking 
renderers dirty and returning the computed layout root (RenderView in most 
cases)
and have the caller handle layout scheduling when needed.

This is also in preparation for removing isRooted() in 
RenderObject::scheduleLayout.

* Source/WebCore/page/LocalFrameViewLayoutContext.cpp:
(WebCore::LocalFrameViewLayoutContext::scheduleSubtreeLayout):
(WebCore::LocalFrameViewLayoutContext::convertSubtreeLayoutToFullLayout):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::styleDidChange):
(WebCore::RenderElement::setNeedsPositionedMovementLayout):
(WebCore::RenderElement::setNeedsSimplifiedNormalFlowLayout):
* Source/WebCore/rendering/RenderElement.h:
(WebCore::RenderElement::setChildNeedsLayout):
* Source/WebCore/rendering/RenderObject.cpp:
(WebCore::RenderObject::scheduleLayout):
(WebCore::RenderObject::markContainingBlocksForLayout):
(WebCore::scheduleRelayoutForSubtree): Deleted.
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::setNeedsLayout):
* Source/WebCore/rendering/RenderObjectEnums.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to