<!-- Please describe your changes on the following line: -->
We're using `keyword_list` to generate code for some of the animation properties. This could be achieved with `single_keyword` (passing `vector=True`).
---
<!-- 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 build-geckolib` does not report any errors
<!-- Either: -->
- [x] These changes do not require tests because it's a cleanup
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: b3ad71353bf264770bf0b3a87b32d86928eb09d4
This is a rebased version of PR #11595
---
<!-- 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#11485
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because: no code logic was changed
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: f70fc6644ddb142627c188ebbde2cc0a0282f9b4
(fixes#14222)
Five minutes early for "tomorrow", _shrug_.
I'm not entirely sure of this fix. It depends on properties going through the cascade in source order all else being the same. I think that's the case.
Fixes wikipedia though.
r? @emilio or @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c6703637ff82e3a6063cfb032e6179e3dc4d18a
This PR is intended to add basic support for all CSSOM interfaces, with the ability to index `document.styleSheets` and css rule lists, and serializing individual css rules. Handling individual interface methods for CSSRule subclasses can probably be done with easy/medium bugs.
Mutation safety isn't dealt with here; if the css rule list is mutated the CSSOM will be in an inconsistent state. I intend to deal with this via zero sized tokens, see https://groups.google.com/forum/#!topic/mozilla.dev.servo/AnxJoVmtMXQ . I'll handle that when I start making the CSSOM mutable. (Getting the immutable bit landed first opens this up for easy bugs)
This doesn't really change style aside from adding an extra arc in the CSS rule list as discussed in the linked thread. So far this same design can be used by stylo as well when the time comes.
f? @SimonSapin @emilio
cc @upsuper
part of #11420
Todo:
- [x] Stubs for rest of the CSSRule subclasses
- [x] <s>ToCSS impls for CSSRules.</s> May make into easy bugs and stub out in this PR https://github.com/servo/servo/issues/14195
- [x] Cache CSSStyleSheet on the relevant node
Source-Repo: https://github.com/servo/servo
Source-Revision: afc60bee2809059b8b754a1c6d6d10c1d36326fb
<!-- Please describe your changes on the following line: -->
In addition to minor changes for Windows, this forces Windows Python to
be used for all Windows builds (instead of using Windows Python only for
pc-windows-msvc builds).
---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because testing the tests is too meta for me
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 17bf6aed21cb966c52382e7cef23d2bd66144874
Implemented parsing/serialization for text-emphasis-position
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix#13850
- [X] There are tests for these changes
Source-Repo: https://github.com/servo/servo
Source-Revision: 00f229d615980dbd23612f64b7a60a70b76d3f97
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they should not change behavior.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
The WebRender display list is now similar to the Servo display list,
which simplifies the conversion.
Source-Repo: https://github.com/servo/servo
Source-Revision: 3fdce3942915e2ef461280d4908641580473ad94
<!-- Please describe your changes on the following line: -->
At the moment, storage notifications are only sent within a script thread, not to same-origin pipelines in different script threads. This PR fixes that.
---
<!-- 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#5196
- [X] These changes do not require tests because existing tests now pass
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 07b9dbe05a3d27b2623195f0c77ea7d7c45a4783
<!-- Please describe your changes on the following line: -->
r? @shinglyu
The oldest commit is from #14220 which hasn't merged yet. The second commit is the update for the sync: https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=88d68e17f03c1f8b9f688081902a3369ea83e627
The newest commit is just regenerating bindings again with an updated rust-bindgen (since the previous few bindings updates were done with an old rust-bindgen).
I ran `./mach test-stylo` and all the tests pass.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 969c7ec06fa51226ae97a9b1f066e3d0da48e536
<!-- Please describe your changes on the following line: -->
r? @Manishearth
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Bindings update for
00ef34eaec
Source-Repo: https://github.com/servo/servo
Source-Revision: 544f2385726fade765e2d1b58d2c8b9b18d1c755
<!-- Please describe your changes on the following line: -->
The current work queue had a really annoying constraint: The size of the node had to be the size of the work unit data.
This makes it impractical for the new restyling model where we plan to pass down a bunch of data.
Rayon by default makes you wait for the result of the work unit, which makes it impractical for the current model (it's mostly sequential).
I added an API to rayon that allows us to push work to the queue without waiting (https://github.com/nikomatsakis/rayon/pull/103).
This still needs some work (for example, we're loosing the memory reporting functionality), but I wanted feedback on this.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 9467fbe26d25dfc633d5ab8973fe459d14eff9dc
<!-- Please describe your changes on the following line: -->
1. Fix for a comment typo in `bluetooth.rs `.
2. Simplify caling `self.request_bluetooth_devices` in `bluetooth.rs` in `Step 2`.
We already have a check in `Step 1` to prevent calling `request_bluetooth_devices` with a `Some` value if `option.acceptAllDevices` is true, and `option.filters` is already an `Option`, so there is no need for the `None` in the else branch.
3. Updating the bluetooth extension in `Navigator.webidl `, to match the [specification](https://webbluetoothcg.github.io/web-bluetooth/#navigator-extensions).
4. Replace the `_` separating the characteristic property strings with `-` as described [here](http://git.kernel.org/cgit/bluetooth/bluez.git/tree/doc/gatt-api.txt#n142)
---
<!-- 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
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 4f53626c23e0affc6fca3bf1f4f1f3c722f58074
<!-- Please describe your changes on the following line: -->
Reduces msi file size from 102 MB to 94 MB and installation size from 394 MB to 334 MB.
---
<!-- 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
Source-Repo: https://github.com/servo/servo
Source-Revision: b7eb36fa84e6c6c77727ea2cd02c57f6750dc7af
<!-- Please describe your changes on the following line: -->
Implementation of border-image shorthand.
r? Manishearth
---
<!-- 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
<!-- Either: -->
- [X] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: e9fa69bb2d2210563f774393b40913154ad43d22
The Fetch standard defines this value as twenty; there is no good reason to
allow changing that at runtime.
Source-Repo: https://github.com/servo/servo
Source-Revision: bcd409cf4af7cdef6527af853f1c27410c8a6781
<!-- Please describe your changes on the following line: -->
Update CSSRule naming from 'CSSRule' to 'CssRule'
---
<!-- 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 https://github.com/servo/servo/issues/14196 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because I just rename CSSRule to CssRule.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: b63c85c31b10e449b7334890becacb08def81f96
<!-- Please describe your changes on the following line: -->
Follow up to #14017
---
r=Manishearth
<!-- 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
<!-- Either: -->
- [X] There are tests for these changes `scroll_snap_type::should_serialize_to_single_value_if_sub_types_are_equal`, `scroll_snap_type::should_serialize_to_empty_string_if_sub_types_not_equal`
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 395981742475612eac7ef0bd484b4ae1bc1dd4a8
<!-- 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
<!-- Either: -->
- [x] These changes do not require tests because moves stuff around without adding functionality.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
This commit itself only moves things around and adds an extra parameter to the
`apply_declarations` function to eventually handle #14079 correctly.
Probably needs a more granular API to query fonts, á la nsFontMetrics, but
that's trivial to do once this is landed.
Then we should make the font provider mandatory, and implement the missing stylo
bits.
Source-Repo: https://github.com/servo/servo
Source-Revision: 57c4db7c670f34fffbee0c179077e8afdadf09f8
<!-- Please describe your changes on the following line: -->
Upgrade webdriver crate dependency to 0.15.
---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because _dependency upgrade_
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 9fd6f0acd50343f5c9bf3be28d9e0a6d5abf40d6
Update dwrote-rs to not panic on non-en-US locales
Source-Repo: https://github.com/servo/servo
Source-Revision: 32991370a1a01d1038aa819586fe7aa84c524b47
<!-- Please describe your changes on the following line: -->
Since tidy is a package, it shouldn't contain our WPT lint. This PR changes the file list generator (we already have) into an object, and allows tidy to run custom python lint scripts (specified in the config file) under the context of `LintRunner`. The errors are then chained into our mechanism.
r? @frewsxcv (cc @jdm @edunham @aneeshusa and anyone else interested in reviewing it)
---
<!-- 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
<!-- Either: -->
- [x] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 290a1696dc6b16c421a40dc08abdc072a2fb4cf2
--HG--
rename : servo/python/tidy/servo_tidy_tests/dir_check/only_webidl/test.webidl => servo/python/tidy/servo_tidy_tests/lints/not_script
Do nothing instead of triggering the default action for a tab event.
Hitting the tab key in an html text input shouldn't submit the form, and for any text input, the tab key should have a particular action associated, not the default action.
This cleans up #12701.
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
Source-Repo: https://github.com/servo/servo
Source-Revision: f04033a13972faea9efd9689e6949406241ca85f
Full implementation of EventSource, complete with closing and reopening streams.
Fixes#8925.
Source-Repo: https://github.com/servo/servo
Source-Revision: 579ab2d99cd8c07a31c3b68a4659c484d5189ada
`opts::Opt` is a pretty big structure, so cloning everything is
excessive when we only need a few items.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2d0c7166f118efed9f25fbe7b4f01f9521829418
<!-- Please describe your changes on the following line: -->
Fixes the race causing #14154. Service workers are ok because they contain explicit synchronization.
r? @asajeffrey or @jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6911a2f652468acd9eef2c35d9e27b55d28788fc
<!-- Please describe your changes on the following line: -->
Moved parse functions to a Parse trait in style. r? @Manishearth
---
<!-- 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#14101 (github issue number if applicable).
<!-- Either: -->
- [x] There are tests for these changes OR
- [X] These changes do not require tests because new functionalities weren't added
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 6adae66f9c7ff58e0e31f3913471e575910a5861
This builds on @emilio's rule tree work. The goal is to raise the boundary between rule node computation and property cascading higher up the callstack, so that the new traversal architecture can decide to do one but not the other.
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b2e3dcfb98464d24ad721a03009a1d31f54b31d
Adds support for the logical block-end/inline-start/etc properties. These properties (like `border-block-end-color`) map to "physical" properties (e.g. `border-top-color`) depending on the writing mode.
Todo:
- [x] Handle shorthands
- [x] Make geckolib setters work
- [x] Handle padding/offset logical properties
- [x] Perhaps handle `-block-size`, `-inline-size` type logical properties?
- [x] Tests?
This will overall add 16 new longhands and 4 new shorthands, taking a big bite out of the [remaining properties work](https://manishearth.github.io/css-properties-list/?stylo=hide&servo=hide&firefox=only&chrome=show&mdn=false&alexa=false)
f? @emilio @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 4b9693cf81c5953a062e138e37fed0e00f2c1cc1
<!-- 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
<!-- Either: -->
- [x] There are tests for these changes OR
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
We can't assume all our siblings are alive because they may very well be in the
free list too.
This tempts to happen when the rule nodes are destroyed as part of the last GC,
the one that runs in the root destructor.
Also, properly put the next sibling back into the list when the rules are GCd.
Source-Repo: https://github.com/servo/servo
Source-Revision: d49840eeec30967cc6f482bc2db9055ab6404ea4
<!-- Please describe your changes on the following line: -->
This PR adds support for DirectWrite text rendering using a thin wrapper for dwrite, as well as similar functionality added to WebRender. In doing so it removes the FreeType dep from the Windows build.
There is still work to be done here, but this is a good starting point for future cleanup and fixes.
---
<!-- 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
- [ ] `./mach test-tidy` does not report any errors
- [X] These changes fix#13371 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are already tested by other tests
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 796fae4bbe966a4e6e32b01fa44f6123c7162992
--HG--
rename : servo/components/style/servo/mod.rs => servo/resources/shaders/cs_text_run.glsl
rename : servo/resources/shaders/ps_clear.fs.glsl => servo/resources/shaders/ps_cache_image.fs.glsl
rename : servo/resources/shaders/ps_clear.glsl => servo/resources/shaders/ps_cache_image.glsl
<!-- Please describe your changes on the following line: -->
Add a `LogicalMargin::start_end()` method that receives a `Direction' parameter. This is useful for some layout that is symmetric in inline and block directions, like flexbox.
Part of #14123.
---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because refactoring
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: d16f3124640be647b4ed67cc4a68cebd55cdb7cc
This reduces a decent amount of overhead in #13778.
r? @SimonSapin
---
<!-- 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
<!-- Either: -->
- [x] There are tests for these changes OR
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 164e956944db0d1d873d2f6eeb9eb59e3f46dc5f
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: c3dc50b7ac553acc7116a2fca4c4498e8b3a8a72
<!-- Please describe your changes on the following line: -->
Bindings update from [the latest incubator/stylo push](https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=c5170a72424e7175020506586fa775077f5307a9).
r? @Manishearth
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 29a55e5cbd36e57cd1fad20898200fe2470d7db1
<!-- Please describe your changes on the following line: -->
r? @aneeshusa (or anyone else really).
Source-Repo: https://github.com/servo/servo
Source-Revision: 77c1f6fb553d3dbe7890d15dd1c29c16d400bf61