Bug 140615 - [CSS Grid Layout] Size tracks using a list of all items sorted by span
Summary: [CSS Grid Layout] Size tracks using a list of all items sorted by span
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: CSS (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Sergio Villar Senin
URL:
Keywords:
Depends on:
Blocks: 60731 140540 140720
  Show dependency treegraph
 
Reported: 2015-01-19 02:46 PST by Sergio Villar Senin
Modified: 2015-01-22 00:36 PST (History)
13 users (show)

See Also:


Attachments
Patch (23.57 KB, patch)
2015-01-19 03:01 PST, Sergio Villar Senin
no flags Details | Formatted Diff | Diff
Patch (22.78 KB, patch)
2015-01-19 03:36 PST, Sergio Villar Senin
kling: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sergio Villar Senin 2015-01-19 02:46:59 PST
The track sizing algorithm processes a list of items sorted by increasing span in order to size content sized columns. Our implementation instead processes content sized columns, meaning that an item spanning multiple content sized columns will be processed many times.

Apart from that we're doing extra sorts and hast table lookups because we're reseting the list of items after processing each track.
Comment 1 Sergio Villar Senin 2015-01-19 02:59:08 PST
(In reply to comment #0)
> The track sizing algorithm processes a list of items sorted by increasing
> span in order to size content sized columns. Our implementation instead
> processes content sized columns, meaning that an item spanning multiple
> content sized columns will be processed many times.
> 
> Apart from that we're doing extra sorts and hast table lookups because we're
> reseting the list of items after processing each track.

Actually this was already implemented in bug 135701 but it has 2 important bugs:
 1- the hash table is reset after processing each track, that means that is actually doing nothing (there are no duplicates inside the same track).
 2- we're only sorting the items inside each track, we have to sort them all (all the items in the grid spanning through content sized columns).
Comment 2 Sergio Villar Senin 2015-01-19 03:01:51 PST
Created attachment 244892 [details]
Patch
Comment 3 Sergio Villar Senin 2015-01-19 03:36:15 PST
Created attachment 244893 [details]
Patch

Removed a change in TestExpectations already included in master
Comment 4 Andreas Kling 2015-01-21 09:10:12 PST
Comment on attachment 244893 [details]
Patch

r=me
Comment 5 Sergio Villar Senin 2015-01-22 00:36:15 PST
Committed r178893: <http://trac.webkit.org/changeset/178893>