aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/flex.rs
Commit message (Collapse)AuthorAgeFilesLines
...
* | Move CSS flex-direction property from Flex to Position and delete FlexMauricio Collares2016-04-051-6/+1
| |
* | Compute size of the axes of flex containersDaniel Robertson2016-03-311-30/+92
|/ | | | | Compute the available main and cross size of flex containers, and add a helper for min/main constraints
* Renamed TComputedValues to ComputedValuesPer Lundberg2016-03-291-1/+1
| | | | This is a followup to #10210, and a continuation of #10185.
* ComputedValues is now ServoComputedValuesPer Lundberg2016-03-271-2/+2
| | | | This is the first part of #10185. More to follow. I have built this locally with both servo and geckolib without errors; let's see if it succeeds on all platforms as well.
* layout: Rewrite the block formatting context/float inline-sizePatrick Walton2016-03-251-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | speculation code. The old code tried to do the speculation as a single bottom-up pass after intrinsic inline-size calculation, which was unable to handle cases like this: <div> <div style="float: left">Foo</div> </div> <div> <div style="overflow: hidden">Bar</div> </div> No single bottom-up pass could possibly handle this case, because the inline-size of the float flowing out of the "Foo" block could never make it down to the "Bar" block, where it is needed for speculation. On the pages I tried, this regresses layout performance by 1%-2%. I first noticed this breaking some pages, like the Google SERPs, several months ago.
* Parameterize the rest of the style system on TNode.Bobby Holley2016-03-241-1/+1
|
* layout: Remove the `validate_display_list_geometry` debugging tool.Patrick Walton2016-03-031-5/+0
| | | | | I don't think anyone was using it, and it's incompatible with taking display lists out of flows.
* gfx: Box stacking contexts to minimize `memmove` traffic.Patrick Walton2016-03-031-1/+1
| | | | | | `memmove` was showing up high in the profile when concatenating and shorting display lists. This change drastically reduces the `memmove` cost in exchange for some minor additional allocation cost.
* Flatten display list structureMartin Robinson2016-03-011-4/+11
| | | | | | | | | | | | | | | | | | | | | | | Instead of producing a tree of stacking contexts, display list generation now produces a flat list of display items and a tree of stacking contexts. This will eventually allow display list construction to produce and modify WebRender vertex buffers directly, removing the overhead of display list conversion. This change also moves layerization of the display list to the paint thread, since it isn't currently useful for WebRender. To accomplish this, display list generation now takes three passes of the flow tree: 1. Calculation of absolute positions. 2. Collection of a tree of stacking contexts. 3. Creation of a list of display items. After collection of display items, they are sorted based upon the index of their parent stacking contexts and their position in CSS 2.1 Appendeix E stacking order. This is a big change, but it actually simplifies display list generation.
* Move util::logical_geometry to styleAnthony Ramine2016-02-181-1/+1
|
* layout: Separate out overflow-for-scrolling from overflow-for-paint.Patrick Walton2016-02-031-3/+3
| | | | Closes #9484.
* Remove unused imports in layoutKishor Bhat2016-01-171-1/+0
|
* Split Au type into separate crate, with minimal dependencies.Glenn Watson2015-10-011-1/+1
|
* Fix reported test-tidy errors for unmerged import blocksBrandon Fairchild2015-09-191-7/+6
| | | | This merges import blocks that were reported by tidy as unmerged.
* Fix match_refs and let_returns in layout, address review changesManish Goregaokar2015-09-041-4/+2
|
* Elide most 'a lifetimesManish Goregaokar2015-09-041-1/+1
|
* Merge branch 'master' into calcSimon Sapin2015-09-011-0/+4
|\
| * implemented a pass-through mark_as_root for FlexFlowPrabhjyot Singh Sodhi2015-08-311-0/+4
| |
* | Address review commentsDavid Zbarsky2015-08-261-0/+1
|/
* prevent division by 0Paul Rouget2015-08-241-2/+8
| | | | Fix 7316
* layout: Fix merge fallout.Patrick Walton2015-08-211-4/+5
|
* Sort imports.Simon Sapin2015-08-211-4/+4
|
* Implement FlexFlow::assign_block_size().Kyle Zentner2015-08-211-0/+71
|
* Implement FlexFlow::assign_inline_sizes().Kyle Zentner2015-08-211-1/+134
|
* Create FlexFlow's for 'display: flex' nodes.Kyle Zentner2015-08-211-0/+241
This commit doesn't implement any flexbox behavior at all. It just constructs FlexFlow's, which act just like the BlockFlow from which they "inherit."