瀏覽代碼

LibWeb: Implement more of the grid spec

This is a small change that implements more of the CSS Grid spec.
martinfalisse 2 年之前
父節點
當前提交
4745a0c20a
共有 1 個文件被更改,包括 10 次插入3 次删除
  1. 10 3
      Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp

+ 10 - 3
Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp

@@ -652,6 +652,11 @@ void GridFormattingContext::run(Box const& box, LayoutMode, AvailableSpace const
         default:
         default:
             VERIFY_NOT_REACHED();
             VERIFY_NOT_REACHED();
         }
         }
+
+        // In all cases, if the growth limit is less than the base size, increase the growth limit to match
+        // the base size.
+        if (grid_column.growth_limit != -1 && grid_column.growth_limit < grid_column.base_size)
+            grid_column.growth_limit = grid_column.base_size;
     }
     }
 
 
     // Initialize each track’s base size and growth limit.
     // Initialize each track’s base size and growth limit.
@@ -698,10 +703,12 @@ void GridFormattingContext::run(Box const& box, LayoutMode, AvailableSpace const
         default:
         default:
             VERIFY_NOT_REACHED();
             VERIFY_NOT_REACHED();
         }
         }
-    }
 
 
-    // FIXME: In all cases, if the growth limit is less than the base size, increase the growth limit to match
-    // the base size.
+        // In all cases, if the growth limit is less than the base size, increase the growth limit to match
+        // the base size.
+        if (grid_row.growth_limit != -1 && grid_row.growth_limit < grid_row.base_size)
+            grid_row.growth_limit = grid_row.base_size;
+    }
 
 
     // https://www.w3.org/TR/css-grid-2/#algo-content
     // https://www.w3.org/TR/css-grid-2/#algo-content
     // 12.5. Resolve Intrinsic Track Sizes
     // 12.5. Resolve Intrinsic Track Sizes