[webkit-changes] [WebKit/WebKit] 334d5a: [Cleanup] In flex, setOverridingContainingBlockCon...

Alan Baradlay noreply at github.com
Tue Dec 31 21:17:33 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 334d5acc1496f43ce5ffbc3abc190f145f9add1a
      https://github.com/WebKit/WebKit/commit/334d5acc1496f43ce5ffbc3abc190f145f9add1a
  Author: Alan Baradlay <zalan at apple.com>
  Date:   2024-12-31 (Tue, 31 Dec 2024)

  Changed paths:
    M LayoutTests/TestExpectations
    M Source/WebCore/page/LocalFrameViewLayoutContext.cpp
    M Source/WebCore/page/LocalFrameViewLayoutContext.h
    M Source/WebCore/rendering/RenderBox.cpp
    M Source/WebCore/rendering/RenderFlexibleBox.cpp
    M Source/WebCore/rendering/RenderLayoutState.cpp
    M Source/WebCore/rendering/RenderLayoutState.h

  Log Message:
  -----------
  [Cleanup] In flex, setOverridingContainingBlockContentLogicalHeight means ignore percent resolve
https://bugs.webkit.org/show_bug.cgi?id=285227

Reviewed by Antti Koivisto.

Flex layout uses setOverridingContainingBlockContentLogicalHeight to indicate
that we should ignore the flex item when resolving for precent height.
This is required when finding out the intrinsic size of flex items' children.

Let's use a hashset to track such flex items during layout.

* LayoutTests/TestExpectations:
* Source/WebCore/page/LocalFrameViewLayoutContext.cpp:
(WebCore::LocalFrameViewLayoutContext::performLayout):
(WebCore::LocalFrameViewLayoutContext::disablePercentHeightResolveFor):
(WebCore::LocalFrameViewLayoutContext::enablePercentHeightResolveFor):
(WebCore::LocalFrameViewLayoutContext::isPercentHeightResolveDisabledFor):
* Source/WebCore/page/LocalFrameViewLayoutContext.h:
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalHeightForContent const):
(WebCore::RenderBox::perpendicularContainingBlockLogicalHeight const):
(WebCore::RenderBox::computePercentageLogicalHeight const):
(WebCore::RenderBox::replacedMinMaxLogicalHeightComputesAsNone const):
(WebCore::RenderBox::hasAutoHeightOrContainingBlockWithAutoHeight const):
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::canComputePercentageFlexBasis):
(WebCore::RenderFlexibleBox::maybeCacheFlexItemMainIntrinsicSize):
* Source/WebCore/rendering/RenderLayoutState.cpp:
(WebCore::FlexPercentResolveDisabler::FlexPercentResolveDisabler):
(WebCore::FlexPercentResolveDisabler::~FlexPercentResolveDisabler):
* Source/WebCore/rendering/RenderLayoutState.h:

Canonical link: https://commits.webkit.org/288350@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