[webkit-changes] [WebKit/WebKit] 6c9083: [text-box-trim] Consult the block container reques...
Alan Baradlay
noreply at github.com
Sun Aug 18 15:50:17 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 6c9083c8874bfe4751880716f0e4af49be629ae7
https://github.com/WebKit/WebKit/commit/6c9083c8874bfe4751880716f0e4af49be629ae7
Author: Alan Baradlay <zalan at apple.com>
Date: 2024-08-18 (Sun, 18 Aug 2024)
Changed paths:
A LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-expected.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge.html
M Source/WebCore/layout/formattingContexts/block/BlockLayoutState.h
M Source/WebCore/layout/formattingContexts/inline/InlineLevelBox.h
M Source/WebCore/layout/formattingContexts/inline/InlineLevelBoxInlines.h
M Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
M Source/WebCore/rendering/RenderLayoutState.h
M Source/WebCore/rendering/TextBoxTrimmer.cpp
Log Message:
-----------
[text-box-trim] Consult the block container requesting the trim for text-box-edge
https://bugs.webkit.org/show_bug.cgi?id=278279
Reviewed by Antti Koivisto.
When text-box-edge is set on a nested container we should ignore it and use the value from
the block container requesting the trim.
1. Add propagated text-box-edge value to RenderLayoutState::TextBoxTrim so that
we can pass it to nested IFCs.
2. Remove text-box-trim and text-box-edge from InlineLevelBox and always
consult the BlockLayoutState for these non-inherited but propagated values.
* LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-expected.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-ref.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge.html: Added.
* Source/WebCore/layout/formattingContexts/block/BlockLayoutState.h:
(WebCore::Layout::BlockLayoutState::BlockLayoutState):
(WebCore::Layout::BlockLayoutState::textBoxEdge const):
* Source/WebCore/layout/formattingContexts/inline/InlineLevelBox.h:
(WebCore::Layout::InlineLevelBox::lineFitEdge const):
(WebCore::Layout::InlineLevelBox::textBoxEdge const): Deleted.
(WebCore::Layout::InlineLevelBox::textBoxTrim const): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLevelBoxInlines.h:
(WebCore::Layout::m_style):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:
(WebCore::Layout::LineBoxBuilder::setVerticalPropertiesForInlineLevelBox const): remove old behavior.
(WebCore::Layout::effectiveTextBoxEdge):
(WebCore::Layout::LineBoxBuilder::applyTextBoxTrimIfNeeded const):
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::textBoxEdge):
(WebCore::LayoutIntegration::LineLayout::layout):
* Source/WebCore/rendering/RenderLayoutState.h:
* Source/WebCore/rendering/TextBoxTrimmer.cpp:
(WebCore::TextBoxTrimmer::adjustTextBoxTrimStatusBeforeLayout):
Canonical link: https://commits.webkit.org/282408@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