Bug 140615

Summary: [CSS Grid Layout] Size tracks using a list of all items sorted by span
Product: WebKit Reporter: Sergio Villar Senin <svillar>
Component: CSSAssignee: Sergio Villar Senin <svillar>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, commit-queue, darin, dino, esprehn+autocc, glenn, hyatt, jfernandez, kling, koivisto, kondapallykalyan, rego, svillar
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 60731, 140540, 140720    
Attachments:
Description Flags
Patch
none
Patch kling: review+

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>