Bug 153488 - [meta][css-grid] Support implicit grid before explicit grid
Summary: [meta][css-grid] Support implicit grid before explicit grid
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on: 153592 153868 154336 154818 154911 155014 155199 155230 155486 155489 155636
Blocks: 60731
  Show dependency treegraph
 
Reported: 2016-01-26 08:28 PST by Manuel Rego Casasnovas
Modified: 2016-03-18 07:04 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Manuel Rego Casasnovas 2016-01-26 08:28:34 PST
In our current implementation the implicit grid is only after the explicit grid.

For example, in a 2x2 grid, if you have an item with:
  grid-row: 3;
An implicit 3rd row is created.

However, if you have an item like:
  grid-column: -4;
We should be creating an implicit column before the first one.

This has been already implemented on Blink (http://crbug.com/444011)
following a plan described in this document (http://bit.ly/1j3CRdi).

We should port these patches to WebKit as the grid layout code has the same issues.

This will be used as meta-bug for all the patches related.

More info in the spec: http://dev.w3.org/csswg/css-grid/#line-placement
Comment 1 Manuel Rego Casasnovas 2016-03-15 01:36:17 PDT
We've a TODO in GridResolvedPosition class:
// TODO(rego): Rename class to GridPositionsResolver.

This was already done in Blink:
https://codereview.chromium.org/1648903002/
Comment 2 Manuel Rego Casasnovas 2016-03-15 01:36:58 PDT
(In reply to comment #1)
> We've a TODO in GridResolvedPosition class:
> // TODO(rego): Rename class to GridPositionsResolver.
> 
> This was already done in Blink:
> https://codereview.chromium.org/1648903002/

Sorry this comment was for bug #155486.
Comment 3 Manuel Rego Casasnovas 2016-03-18 07:04:35 PDT
With the last refactorings this task has been completed.