[webkit-changes] [WebKit/WebKit] 8c82c6: [LFC] Introduce concept of primary layout state
Antti Koivisto
noreply at github.com
Thu May 30 09:10:52 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8c82c6544856e727ced9aacc14b5936042918b1e
https://github.com/WebKit/WebKit/commit/8c82c6544856e727ced9aacc14b5936042918b1e
Author: Antti Koivisto <antti at apple.com>
Date: 2024-05-30 (Thu, 30 May 2024)
Changed paths:
M Source/WebCore/layout/LayoutState.cpp
M Source/WebCore/layout/LayoutState.h
M Source/WebCore/layout/layouttree/LayoutBox.cpp
M Source/WebCore/layout/layouttree/LayoutBox.h
M Source/WebCore/layout/layouttree/LayoutTreeBuilder.cpp
M Source/WebCore/rendering/RenderView.cpp
Log Message:
-----------
[LFC] Introduce concept of primary layout state
https://bugs.webkit.org/show_bug.cgi?id=274895
rdar://problem/128999403
Reviewed by Alan Baradlay.
Geometry for the primary layout state gets a direct cache in layout boxes.
This way we can remove the layout state pointer from Layout::Box saving memory
and simplifying code.
* Source/WebCore/layout/LayoutState.cpp:
(WebCore::Layout::LayoutState::LayoutState):
(WebCore::Layout::LayoutState::ensureGeometryForBoxSlow):
* Source/WebCore/layout/LayoutState.h:
(WebCore::Layout::LayoutState::type const):
(WebCore::Layout::LayoutState::hasBoxGeometry const):
(WebCore::Layout::LayoutState::ensureGeometryForBox):
(WebCore::Layout::LayoutState::geometryForBox const):
(WebCore::Layout::Box::canCacheForLayoutState const): Deleted.
(WebCore::Layout::Box::cachedGeometryForLayoutState const): Deleted.
* Source/WebCore/layout/layouttree/LayoutBox.cpp:
(WebCore::Layout::Box::setCachedGeometryForLayoutState const): Deleted.
* Source/WebCore/layout/layouttree/LayoutBox.h:
* Source/WebCore/layout/layouttree/LayoutTreeBuilder.cpp:
(WebCore::Layout::printLayoutTreeForLiveDocuments):
* Source/WebCore/rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
Canonical link: https://commits.webkit.org/279519@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list