aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/incremental.rs
Commit message (Collapse)AuthorAgeFilesLines
* Strict import formatting (grouping and granularity) (#30325)Samson2023-09-111-1/+2
| | | | | * strict imports formatting * Reformat all imports
* remove `extern crate` (#30311)Samson2023-09-081-0/+1
| | | | | | | | | | | * remove extern crate * Update components/script_plugins/lib.rs Co-authored-by: Martin Robinson <mrobinson@igalia.com> --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* build(deps): bump bitflags from 1.3.2 to 2.3.1 (#30273)Martin Robinson2023-09-011-2/+2
| | | | | | Bumps [bitflags](https://github.com/bitflags/bitflags) from 1.3.2 to 2.3.1. - [Release notes](https://github.com/bitflags/bitflags/releases) - [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md) - [Commits](https://github.com/bitflags/bitflags/compare/1.3.2...2.3.1)
* Remove LayoutDamageComputationAnthony Ramine2019-01-141-8/+3
|
* Rustfmt has changed its default style :/Simon Sapin2018-12-281-5/+6
|
* Update MPL license to https (part 4)Jan Andre Ikenmeyer2018-11-191-1/+1
|
* `cargo fix --edition-idioms`Simon Sapin2018-11-081-2/+2
|
* Reorder importsPyfisch2018-11-061-1/+1
|
* `cargo fix --edition`Simon Sapin2018-11-061-1/+1
|
* Rustfmt layout cratePyfisch2018-09-011-18/+37
|
* Turn flow::base and friends into methodsMatt Brubeck2017-12-141-9/+9
|
* style: Make all keywords CamelCase for consistency.Emilio Cobos Álvarez2017-12-061-2/+2
| | | | This prevents confusion and paves the ground for derive(Parse) of them.
* Bump bitflags to 1.0 in every servo crateBastien Orivel2017-10-301-13/+13
|
* Backed out changeset e64e659c077d: servo PR #18809 and revendor for reftest ↵Gecko Backout2017-10-191-13/+13
| | | | | | failures, e.g. in layout/reftests/bugs/392435-1.html. r=backout on a CLOSED TREE Backs out https://github.com/servo/servo/pull/18809
* Update bitflags to 1.0 in every servo crateBastien Orivel2017-10-191-13/+13
| | | | | It still needs dependencies update to remove all the other bitflags versions.
* Force reflow in the sequential fallback of block format contextPu Xingyu2017-04-231-0/+7
| | | | | | When reflowing a block format context during the inorder traversal, propagate restyle damage manually to its children since they were already reflowed.
* Make Restyle tracking more granular.Bobby Holley2016-12-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The primary idea of this patch is to ditch the rigid enum of Previous/Current styles, and replace it with a series of indicators for the various types of work that needs to be performed (expanding snapshots, rematching, recascading, and damage processing). This loses us a little bit of sanity checking (since the up-to-date-ness of our style is no longer baked into the type system), but gives us a lot more flexibility that we'll need going forward (especially when we separate matching from cascading). We also eliminate get_styling_mode in favor of a method on the traversal. This patch does a few other things as ridealongs: * Temporarily eliminates the handling for transfering ownership of styles to the frame. We'll need this again at some point, but for now it's causing too much complexity for a half-implemented feature. * Ditches TRestyleDamage, which is no longer necessary post-crate-merge, and is a constant source of compilation failures from either needing to be imported or being unnecessarily imported (which varies between gecko and servo). * Expands Snapshots for the traversal root, which was missing before. * Fixes up the skip_root stuff to avoid visiting the skipped root. * Unifies parallel traversal and avoids spawning for a single work item. * Adds an explicit pre_traverse step do any pre-processing and determine whether we need to traverse at all. MozReview-Commit-ID: IKhLAkAigXE
* Rename selector_impl.rs to selector_parser.rsSimon Sapin2016-11-201-1/+1
| | | | This makes it consistent with an upcoming update of the selectors crate.
* Stop using associated types for the concrete TRestyleDamage implementation.Bobby Holley2016-11-071-1/+2
| | | | MozReview-Commit-ID: LfaZFCVlIb1
* Introduce a script_layout_interface crate and move RestyleDamage to it.Ms2ger2016-06-201-254/+2
|
* Auto merge of #11417 - stshine:flex-longhand-properties, r=mbrubeckbors-servo2016-05-311-1/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support remaining longhand flexbox style properties for servo - [x] `./mach build -d` does not report any errors - [X] `./mach test-tidy --faster` does not report any errors - [X] There are tests for these changes Add the remaining longhand CSS properties of flexbox for servo, including `flex-wrap`, `flex-grow`, `flex-shrink`, `justify-content`, `align-items`, `align-self` and `align-content`. Tests for the remaining longhand properties are also enabled. Test for default value of `align-self` is modified because the new default value for this property is "auto" is current flexbox CR. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11417) <!-- Reviewable:end -->
| * Add remaining longhand flexbox style propertiesPu Xingyu2016-05-251-1/+8
| | | | | | | | | | | | | | | | | | | | Add the remaining longhand CSS properties of flexbox for servo, including `flex-wrap`, `flex-grow`, `flex-shrink`, `justify-content`, `align-items`, `align-self` and `align-content`. tests for the remaining longhand properties are also enabled. Test for default value of `align-self` is modified because the new default value for this property is "auto" is current flexbox CR.
* | Stop generating flows under display: none.Matt Brubeck2016-05-251-0/+1
|/ | | | Because this is a bottom-up traversal it can generates flows and throw them away. To prevent that, this cascades an internal `-servo-under-display-none` property and then checks that during flow construction. Fixes #1536.
* Don't let restyle damage infect siblingsMatt Brubeck2016-05-051-4/+6
| | | | | | | | | | | | | | | | Currently `compute_layout_damage` does the following for each child of the node it's processing. 1. Update the child with damage from the parent. 2. Update the parent with damage from the child. When these steps are repeated for the next child, the parent's damage may include flags that came from its previous sibling(s). This means that damage ends up propagating to later siblings, and not just between parents and children as indended. This patch propagates the same damage to all children, not including any damage from their siblings.
* Move width and height from Box to Position.Cameron McCormack2016-05-041-1/+1
| | | | This helps with style struct alignment between Servo and Gecko.
* Upgrade to bitflags 0.6.0 and selectors 0.5.6Matt Brubeck2016-04-301-2/+2
| | | | | Types generated by `bitflags!` are now private by default. This PR marks them `pub` where necessary.
* Add style property for flex-basisDaniel Robertson2016-04-241-1/+3
| | | | | Add the style property for flex-basis. The property should allow all values acceptable for `width`|`height` with the addition of `content`.
* Generate a fragment for an empty elements with borders or paddingMatt Brubeck2016-04-161-2/+12
|
* Auto merge of #10407 - mauricioc:issue10403, r=bholleybors-servo2016-04-071-8/+8
|\ | | | | | | | | | | | | | | | | | | | | Move some CSS properties to match Gecko's representation Fixes #10403. Animation had an extra transition-delay property, which was also moved to Box. Let me know if I should squash the commits. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10407) <!-- Reviewable:end -->
| * Move CSS line-height property from InheritedBox to InheritedTextMauricio Collares2016-04-051-1/+1
| |
| * Move CSS flex-direction property from Flex to Position and delete FlexMauricio Collares2016-04-051-1/+1
| |
| * Move some CSS properties from Box to PositionMauricio Collares2016-04-051-1/+1
| |
| * Rename PositionOffsets to PositionMauricio Collares2016-04-051-2/+2
| |
| * Move CSS content property from Box to CountersMauricio Collares2016-04-051-1/+1
| |
| * Move CSS text-shadow property from Effects to InheritedTextMauricio Collares2016-04-051-1/+1
| |
| * Move CSS text-overflow property from InheritedText to TextMauricio Collares2016-04-051-1/+1
| |
* | Move CSS image-rendering property from Effects to InheritedBoxMauricio Collares2016-04-041-1/+1
|/
* 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-6/+7
| | | | 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.
* Parameterize the rest of the style system on TNode.Bobby Holley2016-03-241-1/+2
|
* Add missing properties to compute_damageMatt Brubeck2016-03-211-3/+34
|
* Short-circuit more of compute_damageMatt Brubeck2016-03-211-37/+31
|
* layout: Minor whitespace cleanup.Patrick Walton2016-03-211-1/+0
|
* layout: Repaint when `z-index` is modified.Patrick Walton2016-03-211-1/+1
|
* layout: Make transform changes require incremental repaint.Patrick Walton2016-03-211-1/+2
| | | | | | The progress bar in browser.html was only accidentally working before, so actually making use of `REPAINT` makes it stop working without this change.
* layout: Move overflow calculation to be a separate, sequential,Patrick Walton2016-03-181-11/+24
| | | | | | | | | | | | bottom-up pass. Right now, the only reason that overflow calculation works is that we rely on script inducing extra reflows that are sent for display. This was preventing #10021 from landing. This change regresses layout performance by about 1% in my tests. Fixes #7797 properly.
* style: Refactor the per_pseudo map from StyleData to avoid having an option ↵Emilio Cobos Álvarez2016-02-131-7/+6
| | | | | | value type. This make the layout code way clearer.
* Introduce a concept of restyle damage to the style system.Bobby Holley2016-01-041-11/+16
| | | | | We can't hoist RestyleDamage itself, because it's very layout-dependent. But this should be enough to let us hoist the things we need.
* Separate style+layout and layout-specific wrapper functionality.Bobby Holley2015-12-291-0/+1
| | | | | | | | | | | This patch does a number of things, unfortunately all at once: * Hoists a large subset of the layout wrapper functionality into the style system. * Merges TElementAttributes into the newly-created TElement. * Reorganizes LayoutData by style vs layout, and removes LayoutDataShared. * Simplifies the API for borrowing style/layout data. There's still more to do to make the style system usable standalone, but this is a good start.
* Include transform changes in list that cause incremental reflows.Glenn Watson2015-11-181-0/+6
| | | | | | Also ensure that 3d translations get layers. Fixes #8329.