aboutsummaryrefslogtreecommitdiffstats
path: root/components/util/geometry.rs
Commit message (Collapse)AuthorAgeFilesLines
* Removed util.Alan Jeffrey2016-12-141-50/+0
|
* Remove unused `ExpandToPixelBoundaries` trait from `util`.Corey Farwell2016-12-091-17/+0
|
* Update to euclid 0.8Martin Robinson2016-08-121-10/+4
|
* Move some unit type definitions to style_traits.Ms2ger2016-07-111-29/+1
|
* Make it possible to build the style_traits crate with a stable compiler.Simon Sapin2016-06-221-3/+5
| | | | Testing this on CI to make sure we don’t regress it is blocked on #11806
* Say farewell to in-tree HeapSizeOfAnthony Ramine2016-02-041-3/+3
|
* Fix warnings.Ms2ger2015-12-041-1/+0
|
* Auto merge of #8796 - cheba:zero-point, r=SimonSapinbors-servo2015-12-041-5/+0
|\ | | | | | | | | | | | | | | | | | | | | | | Replaced ZERO_POINT with Point2D::zero() This is a proposed in servo/servo#8792 clean up. Fixes #8792. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8796) <!-- Reviewable:end -->
| * Replaced ZERO_POINT with Point2D::zero()Alexander Mankuta2015-12-031-5/+0
| |
* | Auto merge of #8797 - cheba:rect-contains, r=Manishearthbors-servo2015-12-041-10/+0
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | Replaced rect_contains_point with Rect.contains() This is a proposed in servo/servo#8791 clean up. Fixes #8791. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8797) <!-- Reviewable:end -->
| * Replaced rect_contains_point with Rect.contains()Alexander Mankuta2015-12-031-10/+0
| |
* | Replaced ZERO_RECT with Rect::zero()Alexander Mankuta2015-12-031-11/+0
|/
* Expand DisplayList layer bounds to whole pixelsMartin Robinson2015-10-281-0/+17
| | | | | | | | Before passing these layers to the paint task, expand them to pixel boundaries. This ensures that subpixel edges of the layer will not be clipped away and helps prevent rounding issues with layer contents. Fixes #8166.
* Use a where clause for rect_contains_point to bring the line under 100 columns.Ms2ger2015-10-231-1/+3
|
* Split Au type into separate crate, with minimal dependencies.Glenn Watson2015-10-011-157/+2
|
* A few clean ups for Au typeGlenn Watson2015-09-281-40/+0
|
* sorted the extern crate, mod & use declarationsRavi Shankar2015-09-241-2/+2
|
* Fix reported test-tidy errors for unmerged import blocksBrandon Fairchild2015-09-191-4/+1
| | | | This merges import blocks that were reported by tidy as unmerged.
* Snap to screen pixels instead of pxMatt Brubeck2015-09-181-0/+5
| | | | Fixes #7665.
* util: Make the number of app units per pixel a constant instead ofPatrick Walton2015-09-171-12/+15
| | | | | | | repeating the literal value everywhere. Factoring this value out into a public constant makes it easier to create `Au` constants in other modules.
* sort all usesJohann Tuffe2015-08-201-2/+2
|
* Fix existing syntactics nits.Josh Matthews2015-08-161-1/+1
|
* Support transforms for display list optimization. Prevents clipping in #6643.Glenn Watson2015-08-051-0/+5
|
* Implement getComputedStyleDavid Zbarsky2015-07-291-1/+10
|
* layout: Make the `LayoutControlChan` use IPC.Patrick Walton2015-07-141-1/+1
|
* Use euclid from crates.ioecoal952015-06-191-6/+6
|
* rust-geom API changesCorey Farwell2015-06-131-2/+2
| | | | https://github.com/servo/rust-geom/pull/81
* Make most Au methods take self by value. (It’s a i32 wrapper.)Simon Sapin2015-05-051-7/+7
|
* Used `foo.0` tuple access notation instead of `let Au(a) = a;`Simon Sapin2015-05-051-32/+16
|
* Use i32 instead of isize in Au methods.Simon Sapin2015-05-051-9/+9
|
* Rename Au methods with f32/f64 instead of frac32/frac/subpxSimon Sapin2015-05-051-9/+9
|
* Replace Au-related free functions in util::geometry with Au methods.Simon Sapin2015-05-051-44/+8
|
* Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8.Simon Sapin2015-05-051-52/+17
|
* Implement Clone for Copy types.Ms2ger2015-04-281-3/+3
|
* layout: Implement most of `border-collapse` per CSS 2.1 § 17.6.2.Patrick Walton2015-04-271-0/+14
| | | | | | | | | | | | | | | | 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.
* Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev.Ms2ger2015-03-181-3/+3
|
* layout: Implement 2D CSS transforms per CSS-TRANSFORMS § 5, 6, 7, and 8.Patrick Walton2015-03-171-0/+6
|
* Remove uint/int inside `components/util` (partial #4745).Alexandru Cojocaru2015-02-281-7/+7
| | | | This leaves range.rs alone.
* Upgrade to rustc ba2f13ef0 2015-02-04Simon Sapin2015-02-111-4/+4
|
* Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev.Josh Matthews2015-01-281-32/+46
|
* Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19.Ms2ger2015-01-081-4/+4
|
* gfx: Refactor the border drawing code and split out fragment displayPatrick Walton2014-12-221-1/+1
| | | | | | list building into multiple functions. This should have no functional changes; it's just code cleanup.
* layout: Implement `clip` per CSS 2.1 § 11.1.2.Patrick Walton2014-12-181-0/+1
| | | | Only the recommended, comma-separated syntax is supported.
* Remove usage of the deprecated std::num::Zero trait.Simon Sapin2014-12-181-2/+10
|
* Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d.Ms2ger2014-12-171-1/+1
|
* gfx: Implement `letter-spacing` per CSS 2.1 § 16.4.Patrick Walton2014-12-121-1/+1
| | | | | | | | | | The ligature disabling code has been manually verified, but I was unable to reftest it. (The only way I could think of would be to create an Ahem-like font with a ligature table, but that would be an awful lot of work.) Near as I can tell, the method used to apply the spacing (manually inserting extra advance post-shaping) matches Gecko.
* gfx: Rewrite display list construction to make stacking-contexts morePatrick Walton2014-11-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | first-class. This implements the scheme described here: https://groups.google.com/forum/#!topic/mozilla.dev.servo/sZVPSfPVfkg This commit changes Servo to generate one display list per stacking context instead of one display list per layer. This is purely a refactoring; there are no functional changes. Performance is essentially the same as before. However, there should be numerous future benefits that this is intended to allow for: * It makes the code simpler to understand because the "new layer needed" vs. "no new layer needed" code paths are more consolidated. * It makes it easy to support CSS properties that did not fit into our previous flat display list model (without unconditionally layerizing them): o `opacity` should be easy to support because the stacking context provides the higher-level grouping of display items to which opacity is to be applied. o `transform` can be easily supported because the stacking context provides a place to stash the transformation matrix. This has the side benefit of nicely separating the transformation matrix from the clipping regions. * The `flatten` logic is now O(1) instead of O(n) and now only needs to be invoked for pseudo-stacking contexts (right now: just floats), instead of for every stacking context. * Layers are now a proper tree instead of a flat list as far as layout is concerned, bringing us closer to a production-quality compositing/layers framework. * This commit opens the door to incremental display list construction at the level of stacking contexts. Future performance improvements could come from optimizing allocation of display list items, and, of course, incremental display list construction.
* Rust upgrade to rustc hash b03a2755193cd756583bcf5831cf4545d75ecb8aJack Moffitt2014-11-131-5/+5
|
* layout: Rewrite clipping to be per-display-item instead of havingPatrick Walton2014-10-131-0/+23
| | | | | | | | | | | | | | | | | | | a separate `ClipDisplayItem`. We push down clipping areas during absolute position calculation. This makes display items into a flat list, improving cache locality. It dramatically simplifies the code all around. Because we need to push down clip rects even for absolutely-positioned children of non-absolutely-positioned flows, this patch alters the parallel traversal to compute absolute positions for absolutely-positioned children at the same time it computes absolute positions for other children. This doesn't seem to break anything either in theory (since the overall order remains correct) or in practice. It simplifies the parallel traversal code quite a bit. See the relevant Gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=615734
* gfx: Use subpixel positioning for glyphs.Patrick Walton2014-10-021-0/+6
| | | | Improves text rendering significantly.