Title: [294237] trunk/Source/WebCore
Revision
294237
Author
za...@apple.com
Date
2022-05-16 09:33:38 -0700 (Mon, 16 May 2022)

Log Message

[LFC][FFC] Add "flex-direction: column-reverse" basic visual/logical conversion
https://bugs.webkit.org/show_bug.cgi?id=240434

Reviewed by Antti Koivisto.

With "flex-direction: column-reverse" the main axis progression is from visual bottom to top (with default writing mode and all that).

* layout/formattingContexts/flex/FlexFormattingContext.cpp:
(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (294236 => 294237)


--- trunk/Source/WebCore/ChangeLog	2022-05-16 16:18:10 UTC (rev 294236)
+++ trunk/Source/WebCore/ChangeLog	2022-05-16 16:33:38 UTC (rev 294237)
@@ -1,3 +1,15 @@
+2022-05-16  Alan Bujtas  <za...@apple.com>
+
+        [LFC][FFC] Add "flex-direction: column-reverse" basic visual/logical conversion
+        https://bugs.webkit.org/show_bug.cgi?id=240434
+
+        Reviewed by Antti Koivisto.
+
+        With "flex-direction: column-reverse" the main axis progression is from visual bottom to top (with default writing mode and all that).
+
+        * layout/formattingContexts/flex/FlexFormattingContext.cpp:
+        (WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):
+
 2022-05-16  Patrick Angle  <pan...@apple.com>
 
         Web Inspector: Regression(r266885) Crash sometimes when rehydrating imported audit results

Modified: trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp (294236 => 294237)


--- trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp	2022-05-16 16:18:10 UTC (rev 294236)
+++ trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp	2022-05-16 16:33:38 UTC (rev 294237)
@@ -144,11 +144,9 @@
                 logicalSize = { flexItemGeometry.marginBoxWidth(), flexItemGeometry.marginBoxHeight() };
                 break;
             case FlexDirection::Column:
+            case FlexDirection::ColumnReverse:
                 logicalSize = { flexItemGeometry.marginBoxHeight(), flexItemGeometry.marginBoxWidth() };
                 break;
-            case FlexDirection::ColumnReverse:
-                ASSERT_NOT_IMPLEMENTED_YET();
-                break;
             default:
                 ASSERT_NOT_REACHED();
                 break;
@@ -168,6 +166,7 @@
 
     auto convertLogicalToVisual = [&] {
         // FIXME: Convert logical coordinates to visual.
+        auto logicalWidth = logicalFlexItemList.last().rect.right() - logicalFlexItemList.first().rect.left();
         auto direction = root().style().flexDirection();
         for (auto& logicalFlexItem : logicalFlexItemList) {
             auto& flexItemGeometry = formattingState.boxGeometry(logicalFlexItem.flexItem);
@@ -186,7 +185,7 @@
                 break;
             }
             case FlexDirection::ColumnReverse:
-                ASSERT_NOT_IMPLEMENTED_YET();
+                topLeft = { constraints.horizontal().logicalLeft + logicalFlexItem.rect.top(), constraints.logicalTop() + logicalWidth - logicalFlexItem.rect.right() };
                 break;
             default:
                 ASSERT_NOT_REACHED();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to