Title: [201218] trunk
Revision
201218
Author
[email protected]
Date
2016-05-20 11:48:53 -0700 (Fri, 20 May 2016)

Log Message

Scrolling broken in iTunes connect pages
https://bugs.webkit.org/show_bug.cgi?id=157678

Reviewed by Zalan Bujtas.

Source/WebCore:

Added fast/flexbox/nested-columns-min-intrinsic-disabled.html

Turn off minimum intrinsic size adjustment for flexboxes. This violates the spec,
but until we can produce good results that is what we need to do. Blink has also
turned off nested columns intrinsic sizing as well, so we match them with this
change.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):

LayoutTests:

* fast/flexbox/nested-column-intrinsic-min-disabled-expected.html: Added.
* fast/flexbox/nested-column-intrinsic-min-disabled.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (201217 => 201218)


--- trunk/LayoutTests/ChangeLog	2016-05-20 18:44:26 UTC (rev 201217)
+++ trunk/LayoutTests/ChangeLog	2016-05-20 18:48:53 UTC (rev 201218)
@@ -1,3 +1,13 @@
+2016-05-20  Dave Hyatt  <[email protected]>
+
+        Scrolling broken in iTunes connect pages
+        https://bugs.webkit.org/show_bug.cgi?id=157678
+
+        Reviewed by Zalan Bujtas.
+
+        * fast/flexbox/nested-column-intrinsic-min-disabled-expected.html: Added.
+        * fast/flexbox/nested-column-intrinsic-min-disabled.html: Added.
+
 2016-05-20  Joanmarie Diggs  <[email protected]>
 
         AX: Layout tests related to text alternative computation need to be done differently

Added: trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled-expected.html (0 => 201218)


--- trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled-expected.html	                        (rev 0)
+++ trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled-expected.html	2016-05-20 18:48:53 UTC (rev 201218)
@@ -0,0 +1,4 @@
+<html>
+<body>
+<div>This height should be 0. We are violating the spec (section 4.5) for now until we can implement nested column intrinsic sizing properly.</div>
+</body>

Added: trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled.html (0 => 201218)


--- trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled.html	                        (rev 0)
+++ trunk/LayoutTests/fast/flexbox/nested-column-intrinsic-min-disabled.html	2016-05-20 18:48:53 UTC (rev 201218)
@@ -0,0 +1,17 @@
+<html>
+<head>
+<style>
+
+.flexbox {
+    display: -webkit-flex;
+}
+
+.column {
+    -webkit-flex-direction: column;
+}
+</style>
+</head>
+<body>
+<div class="flexbox column" style="height:0px">
+<div style="display:flex;background-color:red">This height should be 0. We are violating the spec (section 4.5) for now until we can implement nested column intrinsic sizing properly.</div>
+</div>

Modified: trunk/Source/WebCore/ChangeLog (201217 => 201218)


--- trunk/Source/WebCore/ChangeLog	2016-05-20 18:44:26 UTC (rev 201217)
+++ trunk/Source/WebCore/ChangeLog	2016-05-20 18:48:53 UTC (rev 201218)
@@ -1,3 +1,20 @@
+2016-05-20  Dave Hyatt  <[email protected]>
+
+        Scrolling broken in iTunes connect pages
+        https://bugs.webkit.org/show_bug.cgi?id=157678
+
+        Reviewed by Zalan Bujtas.
+
+        Added fast/flexbox/nested-columns-min-intrinsic-disabled.html
+
+        Turn off minimum intrinsic size adjustment for flexboxes. This violates the spec,
+        but until we can produce good results that is what we need to do. Blink has also
+        turned off nested columns intrinsic sizing as well, so we match them with this
+        change.
+
+        * rendering/RenderFlexibleBox.cpp:
+        (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
+
 2016-05-20  Rawinder Singh  <[email protected]>
 
         Implement operator== for WeakPtr

Modified: trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp (201217 => 201218)


--- trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp	2016-05-20 18:44:26 UTC (rev 201217)
+++ trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp	2016-05-20 18:48:53 UTC (rev 201218)
@@ -868,10 +868,12 @@
     if (min.isSpecifiedOrIntrinsic())
         return std::max(childSize, computeMainAxisExtentForChild(child, MinSize, min).valueOr(childSize));
 
-    if (!isFlexibleBoxImpl() && min.isAuto() && mainAxisOverflowForChild(child) == OVISIBLE) {
+    if (!isFlexibleBoxImpl() && min.isAuto() && mainAxisOverflowForChild(child) == OVISIBLE && !(isColumnFlow() && is<RenderFlexibleBox>(child))) {
         // This is the implementation of CSS flexbox section 4.5 which defines the minimum size of "pure" flex
         // items. For any other item the value should be 0, this also includes RenderFlexibleBox's derived clases
         // (RenderButton, RenderFullScreen...) because that's just an implementation detail.
+        // FIXME: For now we don't handle nested column flexboxes. Need to implement better intrinsic
+        // size handling from the flex box spec first (4.5).
         LayoutUnit contentSize = computeMainAxisExtentForChild(child, MinSize, Length(MinContent)).value();
         ASSERT(contentSize >= 0);
         contentSize = std::min(contentSize, maxExtent.valueOr(contentSize));
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to