Summary: | [meta] [css-grid] Isolate track sizing and items placement data from RenderGrid internal state | ||
---|---|---|---|
Product: | WebKit | Reporter: | Sergio Villar Senin <svillar> |
Component: | Layout and Rendering | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | simon.fraser |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Bug Depends on: | 165006, 165042, 165065, 165094, 165250, 165654, 166530 | ||
Bug Blocks: | 60731 |
Description
Sergio Villar Senin
2016-11-21 03:30:11 PST
I'm adding here the steps required to complete this isolation process: 1- Split gridColumnCount()/gridRowCount() so there are 2 different pairs of methods: one pair which returns the actual size of the grid and another which returns the size of the data structure used to represent it 2- Create a new class called Grid which encapsulates grid's internal representation 3- Move items' placement caches to the Grid class 4- Pass the Grid class to all the items' placement methods 5- Use a different Grid object for the intrinsic size computation. Layout will be still using m_grid 6- Const-ify all items' placement methods, including placeItemsOnGrid() 7- Remove ugly const_cast<> in computeIntrinsicLogicalWidths and that's it. Closing this as it was completed. |