Commit c660e93a authored by Christian Biesinger's avatar Christian Biesinger Committed by Commit Bot

[css-flexbox] Add a use counter for single-line align-content

The CSSWG would like to apply align-content to single-line flexboxes
as well:
https://lists.w3.org/Archives/Public/www-style/2018Nov/0007.html
https://github.com/w3c/csswg-drafts/issues/3052

Add a use counter for that to see if it is web-compatible.

TESTED=Manually using chrome://histograms
R=eae@chromium.org, tabatkins@google.com

Change-Id: I3af67474937c8c589e8235c451b358b839556d1f
Reviewed-on: https://chromium-review.googlesource.com/c/1354539
Commit-Queue: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: default avatarEmil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611984}
parent 11d8aa54
...@@ -2091,6 +2091,7 @@ enum WebFeature { ...@@ -2091,6 +2091,7 @@ enum WebFeature {
kWebKitUserModifyReadOnlyEffective = 2639, kWebKitUserModifyReadOnlyEffective = 2639,
kWebKitUserModifyPlainTextEffective = 2640, kWebKitUserModifyPlainTextEffective = 2640,
kCSSAtRuleFontFeatureValues = 2641, kCSSAtRuleFontFeatureValues = 2641,
kFlexboxSingleLineAlignContent = 2642,
// Add new features immediately above this line. Don't change assigned // Add new features immediately above this line. Don't change assigned
// numbers of any item, and don't reuse removed slots. // numbers of any item, and don't reuse removed slots.
......
...@@ -1511,14 +1511,19 @@ void LayoutFlexibleBox::LayoutColumnReverse(FlexItemVectorView& children, ...@@ -1511,14 +1511,19 @@ void LayoutFlexibleBox::LayoutColumnReverse(FlexItemVectorView& children,
} }
void LayoutFlexibleBox::AlignFlexLines(Vector<FlexLine>& line_contexts) { void LayoutFlexibleBox::AlignFlexLines(Vector<FlexLine>& line_contexts) {
if (line_contexts.IsEmpty() || !IsMultiline())
return;
const StyleContentAlignmentData align_content = const StyleContentAlignmentData align_content =
FlexLayoutAlgorithm::ResolvedAlignContent(StyleRef()); FlexLayoutAlgorithm::ResolvedAlignContent(StyleRef());
if (align_content.GetPosition() == ContentPosition::kFlexStart) if (align_content.GetPosition() == ContentPosition::kFlexStart)
return; return;
if (IsMultiline() && !line_contexts.IsEmpty()) {
UseCounter::Count(GetDocument(),
WebFeature::kFlexboxSingleLineAlignContent);
}
if (line_contexts.IsEmpty() || !IsMultiline())
return;
LayoutUnit available_cross_axis_space = CrossAxisContentExtent(); LayoutUnit available_cross_axis_space = CrossAxisContentExtent();
for (const FlexLine& line : line_contexts) for (const FlexLine& line : line_contexts)
available_cross_axis_space -= line.cross_axis_extent; available_cross_axis_space -= line.cross_axis_extent;
......
...@@ -20873,6 +20873,7 @@ Called by update_net_error_codes.py.--> ...@@ -20873,6 +20873,7 @@ Called by update_net_error_codes.py.-->
<int value="2639" label="WebKitUserModifyReadOnlyEffective"/> <int value="2639" label="WebKitUserModifyReadOnlyEffective"/>
<int value="2640" label="WebKitUserModifyPlainTextEffective"/> <int value="2640" label="WebKitUserModifyPlainTextEffective"/>
<int value="2641" label="CSSAtRuleFontFeatureValues"/> <int value="2641" label="CSSAtRuleFontFeatureValues"/>
<int value="2642" label="FlexboxSingleLineAlignContent"/>
</enum> </enum>
<enum name="FeaturePolicyFeature"> <enum name="FeaturePolicyFeature">
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment