aboutsummaryrefslogtreecommitdiffstats
path: root/components/script_layout_interface
Commit message (Collapse)AuthorAgeFilesLines
* Update app_units to 0.4.1Manish Goregaokar2017-05-191-1/+1
|
* Simplify rust-selectors API for attribute selectorsSimon Sapin2017-05-181-0/+3
|
* Bug 1364850: Move PseudoElement to be just another combinator in selectors. ↵Emilio Cobos Álvarez2017-05-171-2/+0
| | | | | | | r=bholley MozReview-Commit-ID: 8OoOIodkKJ5 Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
* Auto merge of #16876 - asajeffrey:constellation-rename-frames, r=cbrewsterbors-servo2017-05-161-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed constellation::Frame to constellation::BrowsingContext <!-- Please describe your changes on the following line: --> Now that script has `WindowProxy` rather than `BrowsingContext` objects, we can rename `Frame` in the constellation to `BrowsingContext`. In particular, this means that `FrameId`s are now `BrowsingContextid`s, which better captures their purpose (and they are used in a lot of places, not just the constellation). --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes do not require tests because renaming <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16876) <!-- Reviewable:end -->
| * Renamed constellation::Frame to constellation::BrowsingContext.Alan Jeffrey2017-05-151-3/+3
| |
* | Properly handle scroll offsets in hit testingMartin Robinson2017-05-161-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | Scroll roots are no longer nested containers holding items, so instead we need to track the offsets of each, carefully handling fixed position items and stacking contexts that create new reference frames. Additionally, we remove the complexity of the pre-computed page scroll offset, instead opting to send script scrolls to the layout task in order to more quickly have a ScrollState there that matches the script's idea of the scroll world. Fixes #16405.
* | Bug 1364412: Use the pseudo selector to reject state selectors. r=bholleyEmilio Cobos Álvarez2017-05-161-0/+2
|/ | | | | MozReview-Commit-ID: 73dnp6nZpdU Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
* Send information to script as part of finishing layout.Josh Matthews2017-05-152-14/+12
| | | | | | | This avoids the need for multiple layout RPC operations immediately following return of control to script. This means that layout and script can continue to operate in parallel at this point, rather than one potentially waiting on the shared mutex to be unlocked.
* Root nodes for the duration of their CSS transitions.Josh Matthews2017-05-151-0/+2
| | | | | | | | This ensures that we can pass a node address as part of the asynchronous transition end notification, making it safe to fire the corresponding DOM event on the node from the script thread. Without explicitly rooting this node when the transition starts, we risk the node being GCed before the transition is complete.
* Auto merge of #16833 - MortimerGoro:layout_alignment, r=SimonSapinbors-servo2017-05-121-0/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix unsafe AtomicRefCell<T> transmutes in Layout component <!-- Please describe your changes on the following line: --> Fixes unsafe transmute between `AtomicRefCell<PersistentLayoutData>` and `AtomicRefCell<PartialPersistentLayoutData>` which have different memory alignment in 32 bit archs leading to SEGV crashes. See https://github.com/servo/servo/issues/16817 and https://github.com/servo/servo/pull/16816 mem::align_of values in 32 bit archs (e.g. Android): ``` PersistentLayoutData 8 PersistentLayoutData 4 AtomicRefCell<PersistentLayoutData> 8 AtomicRefCell<PartialPersistentLayoutData> 4 ``` mem::align_of values in 64 bit archs ``` PersistentLayoutData 8 PersistentLayoutData 8 AtomicRefCell<PersistentLayoutData> 8 AtomicRefCell<PartialPersistentLayoutData> 8 ``` --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #16817 (github issue number if applicable). <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because _____ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16833) <!-- Reviewable:end -->
| * Fix unsafe AtomicRefCell<PersistentLayoutData> transmute due to memory ↵Imanol Fernandez2017-05-121-0/+5
| | | | | | | | alignment differences
* | Auto merge of #16506 - cbrewster:about_chaos, r=asajeffreybors-servo2017-05-121-1/+5
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make non-initial about:blank loads async <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #14856 (github issue number if applicable). <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because _____ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16506) <!-- Reviewable:end -->
| * Make non-initial about:blank loads asynchronousConnor Brewster2017-05-121-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't update iframe pipeline until load completes To preserve the previous functionality of delaying load events when a new navigation is triggered, pending pipeline id represents the current pending load. The load event is only fired if the load message's pipeline id matches the pending pipeline id. Track frame size on Frame instead of Pipeline Disabled matchMedia test Track creator pipeline id
* | Auto merge of #16785 - aethanyc:fix-typo-and-simplify, r=mbrubeckbors-servo2017-05-121-2/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix typo and simplify for PresentationalHintsSynthesizer <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes do not require tests because it only affects build. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16785) <!-- Reviewable:end -->
| * | Fix typo for PresentationalHintsSynthesizerTing-Yu Lin2017-05-101-2/+2
| |/
* / Bump cssparser to 0.13.3Manish Goregaokar2017-05-111-1/+1
|/
* Auto merge of #16689 - servo:m5e, r=noxbors-servo2017-05-033-3/+3
|\ | | | | | | | | | | | | | | Upgrade to html5ever 0.16 <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16689) <!-- Reviewable:end -->
| * Upgrade to html5ever 0.16Simon Sapin2017-05-023-3/+3
| |
* | Fix up script and layout.Bobby Holley2017-05-022-3/+3
|/
* Make Stylist::quirks_mode hold a QuirksModeAnthony Ramine2017-04-261-3/+3
|
* Update to cssparser 0.13Simon Sapin2017-04-251-1/+1
|
* Eliminate ScrollRootIdMartin Robinson2017-04-204-5/+9
| | | | | | | Just use WebRender's ClipId directly. This will allow us to create and use ReferenceFrames in the future, if we need to do that. It will also make it easier to have Servo responsible for creating the root scrolling area, which will allow removing some old hacks in the future.
* Fix indentation errors in servo rust code that tidy now finds.coalman2017-04-181-19/+19
|
* Support line number offsets for inline stylesheetsmckaymatt2017-04-131-2/+4
|
* stylo: Store font metrics provider in thread local style contextManish Goregaokar2017-04-091-2/+5
|
* Update string-cache.Emilio Cobos Álvarez2017-04-071-1/+1
|
* Update cssparser in Cargo.toml.Xidorn Quan2017-04-071-1/+1
|
* Use a more compact representation to store eager pseudo-elements.Bobby Holley2017-04-031-19/+15
| | | | | | This means that ElementStyles only need a single word to store eager pseudos. MozReview-Commit-ID: 5bDXlDweN46
* Use empty pseudo to cascade only inheritable properties for textPu Xingyu2017-04-011-3/+6
| | | | | | Since for nested inline elements non-inheritable properties are properly stored in the inline context of an inline fragment, so get rid of them on the style.
* Make image cache per-document rather than globalFernando Jiménez Moreno2017-03-272-3/+3
|
* Replace RwLock<StyleRule> with Locked<StyleRule>Simon Sapin2017-03-191-0/+2
|
* Remove never-sent ReflowWithNewlyLoadedWebFont message, fix #16026Simon Sapin2017-03-191-3/+0
|
* style: Avoid cloning all over the error reporter.Emilio Cobos Álvarez2017-03-141-11/+11
|
* style: Kill SharedStyleContext::default_computed_values.Emilio Cobos Álvarez2017-03-141-3/+1
| | | | | | | Now that cascade() gets a Device, we can use the default computed values from there to avoid propagating that state all over the place. Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
* Add support for skipping display fixup for pseudos.Boris Zbarsky2017-03-131-2/+2
| | | | This is needed for https://bugzilla.mozilla.org/show_bug.cgi?id=1346481
* Add ServoUrl as a parameter to report_error(...) of ParseErrorReporteravinash2017-03-061-5/+8
| | | | | | | | | | | | | | | | | passes test-tidy removed match and used map added new test test_report_error_passing_correct_url(...) and modified old unit tests removed the option for servourl and tidied up removed the duplicate test. made a few more changes after @cbrewster suggestions. changed _url to url in few places fixed the indenting
* s/nodes_from_point/nodes_from_point_response and change test from reftest to ↵Fernando Jiménez Moreno2017-03-021-1/+1
| | | | regular test checking only the fixed crash
* Trigger reflow on document.elementsFromPointFernando Jiménez Moreno2017-03-022-1/+3
|
* Update cssparser for https://github.com/servo/rust-cssparser/pull/123Simon Sapin2017-02-281-1/+1
|
* Update to cssparser 0.11Simon Sapin2017-02-261-1/+1
|
* Make script thread initiate requests for images needed by layout.Josh Matthews2017-02-222-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In support of this goal, the layout thread collects information about CSS images that are missing image data and hands it off to the script thread after layout completes. The script thread stores a list of nodes that will need to be reflowed after the associated network request is complete. The script thread ensures that the nodes are not GCed while a request is ongoing, which the layout thread is incapable of guaranteeing. The image cache's API has also been redesigned in support of this work. No network requests are made by the new image cache, since it does not possess the document-specific information necessary to initiate them. Instead, there is now a single, synchronous query operation that optionally reserves a slot when a cache entry for a URL cannot be found. This reserved slot is then the responsibility of the queryer to populate with the contents of the network response for the URL once it is complete. Any subsequent queries for the same URL will be informed that the response is pending until that occurs. The changes to layout also remove the synchronous image loading code path, which means that reftests now test the same code that non-test binaries execute. The decision to take a screenshot now considers whether there are any outstanding image requests for layout in order to avoid intermittent failures in reftests that use CSS images.
* Kill the plugins crate and its clippy supportAnthony Ramine2017-02-212-3/+0
| | | | | | Sometimes clippy gets outdated by months, and its current support setup means that each Servo component need to opt into it by depending on the plugins crate manually, and not all components do that.
* Update serde to 0.9 (fixes #15325)Anthony Ramine2017-02-181-5/+5
|
* Update ipc-channel to 0.6.3Anthony Ramine2017-02-161-1/+1
|
* Update cssparser to 0.9Simon Sapin2017-02-151-1/+1
|
* style: Unbox a bunch of color properties.Emilio Cobos Álvarez2017-02-141-1/+1
| | | | This builds on https://github.com/servo/rust-cssparser/pull/118.
* Allow the ComputedValues in ComputedStyle to be null.Bobby Holley2017-02-101-7/+7
| | | | | This is necessary to start synthesizing the styles in match_element and avoid round-tripping them through the caller.
* Bug 1336646 - Apply selector flags during traversal. r=emilioBobby Holley2017-02-081-1/+10
|
* Move rust-selectors in-tree.Bobby Holley2017-02-071-1/+1
|
* Update selectors to 0.17Anthony Ramine2017-02-071-1/+1
|