Commit graph

45801 commits

Author SHA1 Message Date
Boris Chiou
fa6ab91acd style: Part 1: Add SVG d property in CSS
Add d property for style system. d property only supports path() for now
and it has the functional notation without fill rule.

https://github.com/w3c/svgwg/issues/320#issuecomment-414462645

Differential Revision: https://phabricator.services.mozilla.com/D81237
2023-05-24 18:32:33 +02:00
Oriol Brufau
4c7ddd63b3 Further changes required by Servo 2023-05-24 18:32:33 +02:00
Nazım Can Altınova
8ca41ccf9e style: Replace the old profiler thread registration FFIs with the new API in servo
Differential Revision: https://phabricator.services.mozilla.com/D116517
2023-05-24 18:32:32 +02:00
Oriol Brufau
9273921fd3 Further changes required by Servo 2023-05-24 18:32:32 +02:00
Boris Chiou
d103785c4b style: Part 2: Support fit-content() in style
Support fit-content for preferred size, min size, and max size. This
patch only implement the style system. For layout part, we will do that
in the following patches.

Differential Revision: https://phabricator.services.mozilla.com/D107161
2023-05-24 18:32:32 +02:00
Michelle Goossens
77cab0edc3 style: Remove browser.proton.doorhangers.enabled pref
Differential Revision: https://phabricator.services.mozilla.com/D117091
2023-05-24 18:32:32 +02:00
Xidorn Quan
4934b747ef style: Make predefined symbolic counter styles not overridable
Differential Revision: https://phabricator.services.mozilla.com/D116938
2023-05-24 18:32:32 +02:00
Emilio Cobos Álvarez
b4546993b4 style: Fix whitespace handling inside CSS variables
As per w3c/csswg-drafts#881 and w3c/csswg-drafts#774.

Differential Revision: https://phabricator.services.mozilla.com/D116459
2023-05-24 18:32:31 +02:00
Emilio Cobos Álvarez
832807f15f style: Reserve -- as a custom property name
I think this should be fairly low risk, let's try to get it done sooner
rather than later.

Differential Revision: https://phabricator.services.mozilla.com/D116456
2023-05-24 18:32:31 +02:00
Emilio Cobos Álvarez
44b94f66f9 style: Use a nicer media query for proton context menus
Differential Revision: https://phabricator.services.mozilla.com/D116736
2023-05-24 18:32:31 +02:00
Emilio Cobos Álvarez
908c952ab0 style: Don't simplify percentages that resolve to lengths in min/max/clamp
Those can't be ordered at specified / computed value time, since the
percentage basis could be negative.

Needs tests of course, running through try atm.

Differential Revision: https://phabricator.services.mozilla.com/D115591
2023-05-24 18:32:31 +02:00
Emilio Cobos Álvarez
204cb7a9c0 style: Look at the right element for exportparts in each_applicable_non_document_style_rule_data
Otherwise we might not find those rules for invalidation.

Differential Revision: https://phabricator.services.mozilla.com/D115130
2023-05-24 18:32:31 +02:00
Oriol Brufau
4df282dab7 Further changes required by Servo 2023-05-24 18:32:31 +02:00
Emilio Cobos Álvarez
1ddd3b09c2 style: Refactor the author sheet cache to keep alive the relevant StylesheetContents
This prevents incorrectly reusing cached results when the contents go
away and new contents are allocated with the same address.

Note that these keep alive transitively everything else under them, so
all other medialist keys don't need this.

By making this a proper hashmap it should also improve cache lookup
times if the cache grows too big.

Differential Revision: https://phabricator.services.mozilla.com/D115202
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
9c32836913 style: Avoid returning fmt::Errors for things that are not formatting errors
They are not. The serialization code already checks if the result is
empty, which can happen for other reasons. This makes the code a bit
more resilient to misuse.

Differential Revision: https://phabricator.services.mozilla.com/D115133
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
4bcf4573db style: Avoid trying to serialize 'all' with stuff that isn't variable references or CSS wide keywords
All is special, and that'd cause an error later on.

Differential Revision: https://phabricator.services.mozilla.com/D115132
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
dd28d22cee style: Use titlebar colors when using CSD rather than -moz-menubartext
As the titlebar may be different when active / inactive, and have
other colors than a menubar.

Differential Revision: https://phabricator.services.mozilla.com/D114875
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
55f20759b2 style: Properly hide -moz-context-properties from content
Depends on D114481

Differential Revision: https://phabricator.services.mozilla.com/D114482
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
87a3f2598a style: Properly hide -moz-control-character-visibility from content
Differential Revision: https://phabricator.services.mozilla.com/D114481
2023-05-24 18:32:30 +02:00
Emilio Cobos Álvarez
6d6ea6cfe4 style: Remove support for unused gtk infobar widget and colors
Presumably they were for notifications and now we use native notifications?

Differential Revision: https://phabricator.services.mozilla.com/D114874
2023-05-24 18:32:29 +02:00
Emilio Cobos Álvarez
3cf8c19313 style: Support -webkit-image-set as a parse-time alias to image-set()
The webkit syntax is an strict subset of the modern one, so this should
be doable, and is the simplest.

If my reading of the WebKit code is correct it should also be the way
WebKit deals with this (except they restrict -webkit-image-set() syntax
artificially).

 * https://github.com/w3c/csswg-drafts/issues/6285
 * https://github.com/whatwg/compat/issues/144

Differential Revision: https://phabricator.services.mozilla.com/D114912
2023-05-24 18:32:29 +02:00
Mukilan Thiyagarajan
a5238ed7a5 Upload nightly builds for layout2020 variant
We'd like to start offering servo nightly builds
with layout 2020 engine so that users can test
the new layout without building servo. These new
builds will be offered in addition to the current
2013 builds until we switch over to 2020 as the default.
2023-05-24 21:54:43 +05:30
Manuel Rego Casasnovas
c7edd7ad2c Remove outdated note on README (fix #29786)
This patch just removes a note about building only servo vs
libsimpleservo binaries, as that's no longer working.
2023-05-24 15:59:01 +02:00
bors-servo
032cf64d1b
Auto merge of #29789 - Loirooriol:do-not-skip-css-variables-tests, r=mrobinson
Stop skipping css-variables tests in layout-2020

<!-- 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 ___

<!-- 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. -->
2023-05-24 15:48:20 +02:00
Oriol Brufau
68a8fe909b Stop skipping css-variables tests in layout-2020 2023-05-24 15:07:01 +02:00
Martin Robinson
4d3625ec80
Clean up and document the send_display_list interface
This moves more members to the CompositorDisplayListInfo struct, which
now holds all miscellaneous, non-WebRender data when sending display
lists. It also documents what each things sent with a display list does.
2023-05-24 09:16:25 +02:00
bors-servo
0377a1853a
Auto merge of #29774 - michaelgrigoryan25:issue#29773, r=jdm
Remove MagicLeap support

<!-- Please describe your changes on the following line: -->

Discussed in more detail in #29773.

---
<!-- 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 #29773 (GitHub issue number if applicable)

<!-- 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. -->
2023-05-23 22:38:01 +02:00
Michael Grigoryan
d0c87d6c31
Merge branch 'servo:master' into issue#29773 2023-05-23 18:25:07 +04:00
bors-servo
ec4d90d572
Auto merge of #29745 - mrobinson:compositor-side-scroll-tree, r=mukilan
Add a compositor-side scroll tree

This will allow the compositor to properly chain scrolling requests up
when a node has reached the extent of the scroll area. In addition, it
removes the use of the deprecated WebRender `scroll()` API. This fixes
scrolling on servo.org.

---
<!-- 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 #29402.
  - Fix #27996.
  - Fix #27624.
  - Fix #24028.
  - Fix #23918.
  - Fix #21165.
- [x] There are tests for these changes
2023-05-23 10:51:11 +02:00
bors-servo
a30f9d6f17
Auto merge of #29779 - fabricedesre:update-phf, r=jdm
De-dupe phf

<!-- Please describe your changes on the following line: -->

Update phf to 0.10 in the `script` and `selector` crates to remove the dupe and only use 0.10. `phf` actually has a 0.11 version but we'll need an update to `markup5ever` to be able to pick it.

This removes 9 crates from a Linux debug build.

---
<!-- 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 no code change.

<!-- 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. -->
2023-05-23 04:39:50 +02:00
The Capyloon Team
11b7a756e8 De-dupe phf 2023-05-23 00:53:09 +00:00
bors-servo
a4f936cd72
Auto merge of #29771 - michaelgrigoryan25:libmlservo#29768, r=jdm
Fix #29768

<!-- Please describe your changes on the following line: -->

Fixes #29768.

---
<!-- 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 #29768 (GitHub issue number if applicable)

<!-- Either: -->

<!-- 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. -->
2023-05-23 00:14:45 +02:00
Michael Grigoryan
0f3e17818b
Merge branch 'servo:master' into libmlservo#29768 2023-05-22 23:21:16 +04:00
bors-servo
d1bb22dca6
Auto merge of #29765 - servo:wpt_update_21-05-2023, r=jdm
Sync WPT with upstream (21-05-2023)

Automated downstream sync of changes from upstream as of 21-05-2023
[no-wpt-sync]
r? @servo-wpt-sync
2023-05-22 20:10:41 +02:00
Josh Matthews
ed5986a094
remove timeout result. 2023-05-22 12:21:07 -04:00
Josh Matthews
14d1cfc796
remove timeout result. 2023-05-22 12:20:44 -04:00
bors-servo
b1f9126163
Auto merge of #29750 - stshine:fix-flex-resolve, r=mrobinson
layout_2020: fix target main size not get clamped in flexbox

When Resolving flexible lengths, the clamp result of item's target main size is not actually saved when it should.

<!-- 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

<!-- 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. -->
2023-05-22 17:51:57 +02:00
michaelgrigoryan25
24cccfc404 Remove unused import 2023-05-22 19:47:21 +04:00
michaelgrigoryan25
67ca730ec5 Apply some review fixes 2023-05-22 19:41:32 +04:00
michaelgrigoryan25
f0690ec7c1 Remove ports/libmlservo 2023-05-22 19:31:08 +04:00
Michael Grigoryan
e3fed81a2f
Merge branch 'servo:master' into issue#29773 2023-05-23 09:51:22 +04:00
michaelgrigoryan25
545c8a0ded Undo deletion of ports/libmlservo/Cargo.toml 2023-05-22 19:20:28 +04:00
michaelgrigoryan25
62f924c74d Patched a bug 2023-05-22 19:16:53 +04:00
michaelgrigoryan25
b25f9c2d75 Removed MagicLeap occurrences from Python files 2023-05-22 19:12:34 +04:00
michaelgrigoryan25
05e1e0ea9e Merge branch 'master' into issue#29773 2023-05-22 19:05:25 +04:00
michaelgrigoryan25
53d7ded8c6 Remove magicleap command from command_base.py 2023-05-22 18:43:14 +04:00
michaelgrigoryan25
ab6e451de6 Removed support/magicleap 2023-05-22 18:41:35 +04:00
michaelgrigoryan25
44390874e5 Remove magicleap related references from config files 2023-05-22 16:26:30 +04:00
Michael Grigoryan
9c5119b951
Merge branch 'servo:master' into issue#29773 2023-05-23 00:03:11 +04:00
bors-servo
b7674fcec0
Auto merge of #29767 - mukilan:fix-slowness-in-macos-copy-dependencies, r=mrobinson
Fix slowness in macos copy_dependencies

The `copy_dependencies` logic is invoking `change_non_system_libraries_path` with absolute paths to gstreamer *plugin dylibs*.
`change_non_system_libraries_path` skips editing links in servo binary to relocatable dylibs, but the since the plugins have absolute paths, they are treated as 'non-relocable' and it will try to edit the *non-existent* link (since plugins are loaded dynamically) in servo bin . These unnecessary calls to change_link_name is the cause of the slowness identified in #29764

This PR fixes the issue by ensuring plugin dylibs are not passed to the first call to change_non_system_libraries_path that patches the links in the main servo binary.

With this fix, the time taken by copy_dependencies is reduced to ~3 seconds on my system.

---
<!-- 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 #29764

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they fix slowness in build step
2023-05-22 14:20:59 +02:00