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