-
Notifications
You must be signed in to change notification settings - Fork 719
[css-inline] Is text-box-edge
inherited or not?
#10904
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
The reason I didn't make But I'm not 100% sure about this interaction, so I agree it's good to discuss it. |
Chatted with @jensimmons yesterday; her intuition is the same as yours, @kojiishi, that |
The CSS Working Group just discussed
The full IRC log of that discussion |
For clarity, the proposal adopted was: Switch |
https://bugs.webkit.org/show_bug.cgi?id=281590 rdar://138049359 Reviewed by NOBODY (OOPS!). See w3c/csswg-drafts#10904 * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-accumulation-001.html: * Source/WebCore/css/CSSProperties.json: * Source/WebCore/rendering/style/RenderStyle.cpp: (WebCore::rareDataChangeRequiresLayout): (WebCore::rareInheritedDataChangeRequiresLayout): (WebCore::RenderStyle::conservativelyCollectChangedAnimatableProperties const): (WebCore::RenderStyle::textBoxEdge const): (WebCore::RenderStyle::setTextBoxEdge): (WebCore::RenderStyle::setLineFitEdge): * Source/WebCore/rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareInheritedData.h: * Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareNonInheritedData.h:
https://bugs.webkit.org/show_bug.cgi?id=281590 rdar://138049359 Reviewed by Antti Koivisto. See w3c/csswg-drafts#10904 1. Make text-box-edge inherited (credit goes to Tim Nguyen) 2. Remove text-box-edge value propagation where we ignore text-box-edge at the trimming site if said trimming is initiated by an ancestors. (test case credit goes to fantasai) * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-accumulation-001-expected.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-accumulation-001.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-expected.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-ref.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge.html. * Source/WebCore/css/CSSProperties.json: * Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp: (WebCore::LayoutIntegration::LineLayout::layout): (WebCore::LayoutIntegration::textBoxEdge): Deleted. * Source/WebCore/rendering/RenderLayoutState.h: * Source/WebCore/rendering/TextBoxTrimmer.cpp: (WebCore::TextBoxTrimmer::adjustTextBoxTrimStatusBeforeLayout): * Source/WebCore/rendering/style/RenderStyle.cpp: (WebCore::rareDataChangeRequiresLayout): (WebCore::rareInheritedDataChangeRequiresLayout): (WebCore::RenderStyle::conservativelyCollectChangedAnimatableProperties const): (WebCore::RenderStyle::textBoxEdge const): (WebCore::RenderStyle::setTextBoxEdge): (WebCore::RenderStyle::setLineFitEdge): * Source/WebCore/rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareInheritedData.h: * Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareNonInheritedData.h: Canonical link: https://commits.webkit.org/285489@main
We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main@{#1388218}
We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] 288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main@{#1388218}
We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] 288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main@{#1388218}
…pagation restriction, a=testonly Automatic update from web-platform-tests [text-box-trim] Retire text-box-edge propagation restriction We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main@{#1388218} -- wpt-commits: 7a76ca95714d34551bbd07245b270f2f1af07cab wpt-pr: 49375
…pagation restriction, a=testonly Automatic update from web-platform-tests [text-box-trim] Retire text-box-edge propagation restriction We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main@{#1388218} -- wpt-commits: 7a76ca95714d34551bbd07245b270f2f1af07cab wpt-pr: 49375
…pagation restriction, a=testonly Automatic update from web-platform-tests [text-box-trim] Retire text-box-edge propagation restriction We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main{#1388218} -- wpt-commits: 7a76ca95714d34551bbd07245b270f2f1af07cab wpt-pr: 49375 UltraBlame original commit: 9fea7f5a6e611fcddfaef2c74adc386e59576821
…pagation restriction, a=testonly Automatic update from web-platform-tests [text-box-trim] Retire text-box-edge propagation restriction We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main{#1388218} -- wpt-commits: 7a76ca95714d34551bbd07245b270f2f1af07cab wpt-pr: 49375 UltraBlame original commit: 9fea7f5a6e611fcddfaef2c74adc386e59576821
…pagation restriction, a=testonly Automatic update from web-platform-tests [text-box-trim] Retire text-box-edge propagation restriction We added a restriction that the effective text-box-edge can be propagated to its child only if the same node defines a non-initial text-box-trim value when text-box-edge is not inherited. But now the specification is updated[1] which marks text-box-edge as inherited, and we no longer need this restriction. This CL also removes text-box-trim/text-box-trim-ignore-nested-text-box-edge.html from the web-test. This test was replaces by text-box-trim-not-ignore-nested-text-box-edge.html (each test disagrees with the other) since [2], but for some reasons still stays at the wpt codebase. A follow-up will retire the EffectiveTextBoxEdge field. [1] w3c/csswg-drafts#10904 [2] web-platform-tests/wpt@288ee9d Bug: 367766472, 374787320, 40254880 Change-Id: I789136ef54fa2d0c8b7a97b08caf1217512d10c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6038647 Commit-Queue: Koji IshiiReviewed-by: Koji Ishii Cr-Commit-Position: refs/heads/main{#1388218} -- wpt-commits: 7a76ca95714d34551bbd07245b270f2f1af07cab wpt-pr: 49375 UltraBlame original commit: 9fea7f5a6e611fcddfaef2c74adc386e59576821
[text-box] Make `text-box-edge` inherited per spec update https://bugs.webkit.org/show_bug.cgi?id=281590 rdar://138049359 Reviewed by Antti Koivisto. See w3c/csswg-drafts#10904 1. Make text-box-edge inherited (credit goes to Tim Nguyen) 2. Remove text-box-edge value propagation where we ignore text-box-edge at the trimming site if said trimming is initiated by an ancestors. (test case credit goes to fantasai) * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/parsing/inheritance.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-accumulation-001-expected.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-accumulation-001.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-expected.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge-ref.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-not-ignore-nested-text-box-edge.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-inline/text-box-trim/text-box-trim-ignore-nested-text-box-edge.html. * Source/WebCore/css/CSSProperties.json: * Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp: (WebCore::LayoutIntegration::LineLayout::layout): (WebCore::LayoutIntegration::textBoxEdge): Deleted. * Source/WebCore/rendering/RenderLayoutState.h: * Source/WebCore/rendering/TextBoxTrimmer.cpp: (WebCore::TextBoxTrimmer::adjustTextBoxTrimStatusBeforeLayout): * Source/WebCore/rendering/style/RenderStyle.cpp: (WebCore::rareDataChangeRequiresLayout): (WebCore::rareInheritedDataChangeRequiresLayout): (WebCore::RenderStyle::conservativelyCollectChangedAnimatableProperties const): (WebCore::RenderStyle::textBoxEdge const): (WebCore::RenderStyle::setTextBoxEdge): (WebCore::RenderStyle::setLineFitEdge): * Source/WebCore/rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareInheritedData.h: * Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator== const): * Source/WebCore/rendering/style/StyleRareNonInheritedData.h: Canonical link: https://commits.webkit.org/285489@main Canonical link: https://commits.webkit.org/283286.337@safari-7620-branch
Recently, the
text-box-edge
property was changed to a non-inherited property in the spec and tests.IIUC, the original motivation to split the feature into two properties (
text-box-trim
andtext-box-edge
) was to make the former non-inherited while the latter inherited, so that i18n authors can set the default edges to all descendants depending on their scripts, but now this doesn't seem possible.If we don't need the use case and both properties are non-inherited, can we merge the two properties back to one property?
I re-read #10675 but I couldn't read this point very well. Can we discuss this point?
@fantasai @nt1m @vitorroriz @Clqsin45 @bfgeek @chrishtr @jfkthame @kidayasuo
The text was updated successfully, but these errors were encountered: