aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/table_wrapper.rs
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove some type aliases that are now just re-exports.Simon Sapin2016-07-201-1/+1
|
* Remove the ComputedValue traits and style_struct_traitsSimon Sapin2016-07-201-1/+1
|
* Move util::print_tree to gfx_traitsAnthony Ramine2016-07-041-1/+1
|
* Pass SharedStyleContext to assign_inline_sizes.Ms2ger2016-06-221-5/+4
|
* Pass SharedStyleContext to propagate_assigned_inline_size_to_children.Ms2ger2016-06-221-2/+2
|
* Pass SharedStyleContext to TableWrapperFlow::compute_used_inline_size.Ms2ger2016-06-221-5/+5
|
* Pass SharedStyleContext to compute_inline_size_constraint_inputs.Ms2ger2016-06-221-3/+4
|
* Pass SharedStyleContext to initial_computed_inline_size.Ms2ger2016-06-221-7/+6
|
* Pass SharedStyleContext to containing_block_inline_size.Ms2ger2016-06-221-5/+7
|
* Remove unused argument to place_float_if_applicable.Ms2ger2016-06-201-2/+2
|
* script: Keep the DOM-side viewport up to date when scrolling happens inPatrick Walton2016-05-311-1/+2
| | | | | | | | | | | | | | | WebRender. This happens asynchronously, just as it does in non-WebRender mode. This functionality is a prerequisite for doing proper display-list-based hit testing in WebRender, since it moves the scroll offsets into Servo (and, specifically, into the script thread, enabling iframe event forwarding) instead of keeping them private to WebRender. Requires servo/webrender_traits#55 and servo/webrender#277. Partially addresses #11108.
* Rename imm_child_iter() and child_iter(). Fixes #10286malayaleecoder2016-04-091-3/+3
|
* 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-7/+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
|
* 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-2/+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.
* Add Multicolumn support block fragmentation.Simon Sapin2016-01-281-3/+5
|
* Improve readability of flow tree dumpMartin Robinson2015-11-231-2/+7
| | | | | | | Use the PrintTree utility to improve the readability of flow tree dumps. Blocks and fragments are now split over two dump levels, because otherwise they are impenetrable. Also start printing the restyle damage of fragments.
* Split Au type into separate crate, with minimal dependencies.Glenn Watson2015-10-011-1/+1
|
* sorted the extern crate, mod & use declarationsRavi Shankar2015-09-241-3/+2
|
* Fix reported test-tidy errors for unmerged import blocksBrandon Fairchild2015-09-191-4/+3
| | | | This merges import blocks that were reported by tidy as unmerged.
* Elide most 'a lifetimesManish Goregaokar2015-09-041-4/+4
|
* Inline constraint resolver for absolutely positioned tables.Michael Howell2015-08-311-2/+73
| | | | Fixes #7425.
* sort all usesJohann Tuffe2015-08-201-2/+2
|
* flow::Flow should follow *_mut naming conventionsCorey Farwell2015-08-181-5/+5
| | | | Fixes #7148
* Replace uses of `for foo in bar.iter()` and `for foo in bar.iter_mut()`João Oliveira2015-08-151-2/+1
| | | | closes #7197
* layout: Make sure anonymous table flows are statically positioned.Patrick Walton2015-08-061-6/+2
| | | | | | | | | | The failing `float-applies-to-*` CSS 2.1 tests never really should have been passing in the first place; they depend on floats inside fixed-layout tables working properly, which they don't. Closes #6078. Closes #6709. Closes #6858.
* layout: Don't use the block container inline size as the initialPatrick Walton2015-08-041-4/+17
| | | | | | computed table inline size. Makes google.com fully centered.
* Implement offsetParent/Top/Left/Width/Height.Glenn Watson2015-08-031-1/+2
|
* Fix panic when html element has display: table.Glenn Watson2015-07-311-0/+8
|
* Use euclid from crates.ioecoal952015-06-191-1/+1
|
* compositing: Implement display ports and avoid creating display listsPatrick Walton2015-05-191-2/+2
| | | | | | for items outside it. This improves Servo's performance on large pages.
* Fix layout of RTL tables in LTR flowMatt Brubeck2015-05-151-6/+14
| | | | Fixes #6006.
* layout: Allow inline elements to be containing blocks forPatrick Walton2015-05-131-4/+4
| | | | | | | | | | absolutely-positioned elements. This also implements a little bit of the infrastructure needed to support for fragmentation via support for multiple positioned fragments in one flow. Improves Google.
* Fix direction of columns in mixed LTR/RTL tables.Matt Brubeck2015-05-081-9/+6
| | | | | | | | | | | | | | Table columns should be layed out according to the 'direction' property of the table flow, regardless of the 'direction' property of any table-row, table-rowgroup, etc. flows. This fixes a number of the `direction-applies-to-*` tests in the CSS2.1 test suite. This also simplifies `propagate_column_inline_sizes_to_child` by separating the code used for table cells from the code for non-cell flows. r? @pcwalton
* Rename Au methods with f32/f64 instead of frac32/frac/subpxSimon Sapin2015-05-051-5/+5
|
* Replace Au-related free functions in util::geometry with Au methods.Simon Sapin2015-05-051-3/+2
|
* Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8.Simon Sapin2015-05-051-6/+6
|
* Remove an as_slice() call.Ms2ger2015-05-011-1/+1
|
* Auto merge of #5480 - SimonSapin:multicol, r=pcwaltonbors-servo2015-04-281-21/+4
|\ | | | | | | | | | | | | | | This add some properties to the style system and a new flow type, but the larger issues of dealing with fragmentation in the flow tree is still an open question. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5480) <!-- Reviewable:end -->
| * Refactor flow construction to make `float` less of a special case.Simon Sapin2015-04-291-21/+4
| |
* | Implement Clone for Copy types.Ms2ger2015-04-281-2/+2
|/
* Ignore border-spacing for tables with zero cellsMatt Brubeck2015-04-281-2/+1
|
* layout: Make `margin: auto` work properly with tables.Patrick Walton2015-04-281-47/+156
| | | | Improves the Amazon home page.
* Remove some usage of `.as_slice()`.Simon Sapin2015-04-271-1/+1
|
* layout: Implement most of `border-collapse` per CSS 2.1 § 17.6.2.Patrick Walton2015-04-271-29/+56
| | | | | | | | | | | | | | | | Known issues: * Collapsed borders do not correctly affect the border-box of the table itself. * The content widths of all cells in a column and the content height of all cells in a row is the same in this patch, but not in Gecko and WebKit. * Corners are not painted well. The spec does not say what to do here. * Column spans are not handled well. The spec does not say what to do here either.