[css-align][css-flex][css-grid] 'auto' values of align-self and justify-self must...
authorjfernandez@igalia.com <jfernandez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2017 23:56:21 +0000 (23:56 +0000)
committerjfernandez@igalia.com <jfernandez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2017 23:56:21 +0000 (23:56 +0000)
commit1a306df17210d4af00402bdf4c983b41a3adf7ab
treeaaf257dda2350a93cf87a234c94be01fa4badd2f
parent48090d1be6c506791e00ec3e20b748ab714137a0
[css-align][css-flex][css-grid] 'auto' values of align-self and justify-self must not be resolved
https://bugs.webkit.org/show_bug.cgi?id=172707

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

This change makes all the cases of the test below to pass now, hence updated expectations accordingly.

* web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006-expected.txt:

Source/WebCore:

The CSS Box Alignment specification has been changed recently so that
now all the propeties have the specificed value as computed value. The
rationale of this change are at the associated W3C github issue [1].

This change implies that we don't need to execute the StyleAdjuter
logic we implemented specifically for supporting 'auto' values
resolution for computed style. We can live now with resolution at
layout time only.

[1] https://github.com/w3c/csswg-drafts/issues/440

No new tests, just updating the already defined tests.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle): Removed
* css/StyleResolver.h:
* html/shadow/TextControlInnerElements.cpp:
(WebCore::TextControlInnerElement::resolveCustomStyle):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::columnFlexItemHasStretchAlignment):
(WebCore::RenderBox::hasStretchedLogicalWidth):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::styleDidChange): Added
(WebCore::RenderFlexibleBox::alignmentForChild):
* rendering/RenderFlexibleBox.h:

LayoutTests:

Updated layout tests so that resolved value is as specified, even for 'auto' values.

* TestExpectations:
* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/css-properties.html:
* css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled-expected.txt:
* css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html:
* css3/parse-align-self.html:
* css3/parse-alignment-of-root-elements-expected.txt:
* css3/parse-alignment-of-root-elements.html:
* css3/parse-place-items.html:
* css3/parse-place-self.html:
* fast/css/ensure-flexbox-compatibility-with-initial-values-expected.txt:
* fast/css/parse-justify-self.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@219315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
31 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/css3/flexbox/css-properties-expected.txt
LayoutTests/css3/flexbox/css-properties.html
LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled-expected.txt
LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html
LayoutTests/css3/parse-align-self.html
LayoutTests/css3/parse-alignment-of-root-elements-expected.txt
LayoutTests/css3/parse-alignment-of-root-elements.html
LayoutTests/css3/parse-place-items.html
LayoutTests/css3/parse-place-self.html
LayoutTests/fast/css/ensure-flexbox-compatibility-with-initial-values-expected.txt
LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt
LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
LayoutTests/fast/css/parse-justify-self.html
LayoutTests/fast/repaint/align-items-change-expected.txt
LayoutTests/fast/repaint/align-items-overflow-change-expected.txt
LayoutTests/fast/repaint/justify-items-overflow-change-expected.txt
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006-expected.txt
LayoutTests/svg/css/getComputedStyle-basic-expected.txt
Source/WebCore/ChangeLog
Source/WebCore/css/CSSComputedStyleDeclaration.cpp
Source/WebCore/css/StyleResolver.cpp
Source/WebCore/css/StyleResolver.h
Source/WebCore/html/shadow/TextControlInnerElements.cpp
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderFlexibleBox.cpp
Source/WebCore/rendering/RenderFlexibleBox.h
Source/WebCore/rendering/RenderGrid.cpp
Source/WebCore/rendering/RenderGrid.h