Emilio Cobos Álvarez
daefa22bbe
Bug 1820280 - Be consistent for which URIs we expose chrome rules. r=dshin
...
Differential Revision: https://phabricator.services.mozilla.com/D171640
2023-03-07 20:22:23 +00:00
Emilio Cobos Álvarez
0df1d1fb3c
Bug 1812868 - Expose scrollbar-inline-size as a chrome-only environment variable. r=mstange
...
After the previous patches this is rather straight-forward.
Reviewed in: https://phabricator.services.mozilla.com/D168148
2023-02-20 00:01:12 +01:00
Sandor Molnar
27b6b5d6cd
Backed out 2 changesets (bug 1812868) for causing bug 1817539. CLOSED TREE
...
Backed out changeset 07c689de250c (bug 1812868)
Backed out changeset e7d370501c50 (bug 1812868)
2023-02-18 09:34:04 +02:00
Emilio Cobos Álvarez
ccf6b1a711
Bug 1812868 - Expose scrollbar-inline-size as a CSS variable to chrome code. r=mstange
...
For that we need to:
* Make GetDPIRatioForScrollbarPart thread-safe: This was using the
widget for bug 1727289, but just looking at the print preview scale
is enough to fix that.
* Make nsPresContext::UseOverlayScrollbars() thread-safe: We store the
RDM pane stuff in the pres context.
The rest is pretty straight-forward.
Differential Revision: https://phabricator.services.mozilla.com/D168148
2023-02-17 21:15:06 +00:00
Ting-Yu Lin
a6d1bf0cc4
Bug 1792615 - Run "cargo +nightly fmt" for style components in servo. r=emilio
...
The directories changed:
* servo/components/selectors/
* servo/components/style/
* servo/components/style_derive/
* servo/ports/geckolib/
Per review request, disable rustfmt in `components_to_transform_3d_matrix()` to
preserve the format for a call to `Transform3D::new`.
My mozilla-central is at
https://hg.mozilla.org/mozilla-central/rev/d1ae84015c22f2034435b47194fdced878072035
My nightly rust is 1.66.0-nightly (8b705839c 2022-09-26).
Differential Revision: https://phabricator.services.mozilla.com/D158234
2022-09-28 07:10:52 +00:00
Emilio Cobos Álvarez
cfc8a1c90e
Bug 1762298 - Inherit used color-scheme from embedder <browser> elements. r=nika,dao,Gijs
...
This allows popups and sidebars to use the chrome preferred
color-scheme.
This moves the responsibility of setting the content-preferred color
scheme to the appropriate browsers to the front-end (via tabs.css).
We still return the PreferredColorSchemeForContent() when there's no
pres context (e.g., for display:none in-process iframes). We could
potentially move a bunch of the pres-context data to the document
instead, but that should be acceptable IMO as for general web content
there's no behavior change in any case.
Differential Revision: https://phabricator.services.mozilla.com/D142578
2022-04-04 18:22:04 +00:00
Emilio Cobos Álvarez
f709accd98
Bug 1758974 - Reuse inherited custom properties if they didn't change after resolution. r=jwatt
...
This should be cheap and gives us a lot of memory savings for the page
on the bug, by deduplicating the inherited properties between parent and
children.
WebKit implements a similar optimization.
Differential Revision: https://phabricator.services.mozilla.com/D140826
2022-03-11 18:12:56 +00:00
Emilio Cobos Álvarez
934ff03686
Bug 1758974 - Make custom-property substitution only traverse variables which could have references. r=jwatt
...
If a name is not in self.seen, it means we've inherited it from our
parent. That in turn means that it can't have any variable reference
(because we inherit the computed variables) and we can skip the work of
traversing it, as we'd hit the early-return in traverse() anyways.
This doesn't fix the memory usage issue of the page on the bug, which
has a giant list of properties on the root and then a custom property
specified on all elements, but should significantly reduce the time we
spend iterating over custom properties for all those elements.
Differential Revision: https://phabricator.services.mozilla.com/D140825
2022-03-11 18:12:55 +00:00
Emilio Cobos Álvarez
4eb1027ebf
Bug 1744102 - Remove servo/components/{hashglobe,fallible} in favor of try_reserve. r=xidorn
...
Differential Revision: https://phabricator.services.mozilla.com/D134194
2021-12-18 09:54:24 +00:00
Emilio Cobos Álvarez
8e5a6310b1
Bug 1699220 - Add support for the revert-layer keyword. r=boris
...
This patch looks bigger than it is, but it's mostly because
of plumbing.
To implement revert-layer we need not only the cascade origin of the
declaration, but the whole cascade level, plus also the layer order.
In order to do this, encapsulate these two things inside a 32-bit
`CascadePriority` struct and plumb it through the rule tree and so on.
This allows us to remove the packing and unpacking of CascadeLevel,
though I kept the ShadowCascadeOrder limit for now in case we need to
reintroduce it.
Fix `!important` behavior of layers while at it (implementing it in
`CascadeLevel::cmp`, spec quote included since it was tricky to find)
since some revert-layer tests were depending on it.
The style attribute test is failing now, but follow-up commit fixes
it, see spec issue.
In terms of the actual keyword implementation, it's sort of
straight-forward: We implement revert and revert-layer in a shared
way, by storing the cascade priority that reverted it.
Differential Revision: https://phabricator.services.mozilla.com/D133372
2021-12-14 15:38:34 +00:00
Emilio Cobos Álvarez
990d1f1a22
Bug 1432090 - Honor GTK button layout. r=stransky,desktop-theme-reviewers,dao
...
This is based off work by smurfd. But this patch doesn't support buttons
both at the left and right, which simplifies a lot the implementation.
Also, clean-up the existing env variables while at it.
Co-authored-by: Nicklas Boman <smurfd@gmail.com >
Differential Revision: https://phabricator.services.mozilla.com/D132073
2021-11-26 11:37:52 +00:00
Ting-Yu Lin
dc1ff8ffe0
Bug 1741990 - Run rustfmt on servo/components/style and servo/ports/geckolib. r=emilio,layout-reviewers
...
This patch is generated by running `cargo +nightly fmt` under
`servo/components/style/` and `servo/ports/geckolib` against mozilla-central
https://hg.mozilla.org/mozilla-central/rev/b193f2e7a6a5d1f042c957ea4acd5c89bf210512
My nightly version is: 1.58.0-nightly (c9c4b5d72 2021-11-17)
Manually remove the redundant braces in author_styles.rs to fix a warning.
Differential Revision: https://phabricator.services.mozilla.com/D131556
2021-11-19 00:14:27 +00:00
Norisz Fay
02dec3d1ea
Backed out changeset 00651c04ba31 (bug 1741990) for causing build bustages CLOSED TREE
2021-11-19 01:03:56 +02:00
Ting-Yu Lin
a450df4f51
Bug 1741990 - Run rustfmt on servo/components/style and servo/ports/geckolib. r=emilio,layout-reviewers
...
This patch is generated by running `cargo +nightly fmt` under
`servo/components/style/` and `servo/ports/geckolib` against mozilla-central
https://hg.mozilla.org/mozilla-central/rev/b193f2e7a6a5d1f042c957ea4acd5c89bf210512
My nightly version is: 1.58.0-nightly (c9c4b5d72 2021-11-17)
Differential Revision: https://phabricator.services.mozilla.com/D131556
2021-11-18 22:46:24 +00:00
Emilio Cobos Álvarez
d4748d26bb
Bug 1737676 - Use GTK menu radius on native context menus and panels. r=stransky
...
Differential Revision: https://phabricator.services.mozilla.com/D129439
2021-10-28 10:52:31 +00:00
Emilio Cobos Álvarez
95ecf8f7a6
Bug 1509931 - Expose titlebar radius as a chrome-only CSS environment variable. r=stransky
...
Mostly plumbing.
Differential Revision: https://phabricator.services.mozilla.com/D128680
2021-10-18 16:22:13 +00:00
Emilio Cobos Álvarez
37fe463642
Bug 1509931 - Add support for chrome-only environment variables. r=stransky
...
This bit is taken straight from D73454 (I reviewed it but I guess
another pair of eyes is ok, it's really straight-forward).
Co-authored-by: Nicklas Boman <smurfd@gmail.com >
Differential Revision: https://phabricator.services.mozilla.com/D128679
2021-10-18 16:22:13 +00:00
Emilio Cobos Álvarez
bd41ea3fde
Bug 1713787 - Fix whitespace handling inside CSS variables. r=xidorn
...
As per w3c/csswg-drafts#881 and w3c/csswg-drafts#774 .
Differential Revision: https://phabricator.services.mozilla.com/D116459
2021-06-07 10:16:39 +00:00
Narcis Beleuzu
82e7061a6d
Backed out 2 changesets (bug 1713787) for wpt failures on declarations-trim-whitespace.html . CLOSED TREE
...
Backed out changeset 1ddacb243ae6 (bug 1713787)
Backed out changeset 2dc1eff1effd (bug 1713787)
2021-06-06 17:16:55 +03:00
Emilio Cobos Álvarez
6664300729
Bug 1713787 - Fix whitespace handling inside CSS variables. r=xidorn
...
As per w3c/csswg-drafts#881 and w3c/csswg-drafts#774 .
Differential Revision: https://phabricator.services.mozilla.com/D116459
2021-06-06 12:10:28 +00:00
Emilio Cobos Álvarez
ec46191c35
Bug 1713787 - Make custom properties that are IACVT guaranteed-invalid. r=boris
...
This effectively backs out bug 1623396.
See:
https://github.com/w3c/csswg-drafts/pull/6006
https://drafts.csswg.org/css-variables/#guaranteed-invalid-value
And related discussion. Matches Chrome stable as per https://groups.google.com/a/chromium.org/g/blink-dev/c/0xrbzYe_vxU/m/7bsL76n9CgAJ
Depends on D116459
Differential Revision: https://phabricator.services.mozilla.com/D116460
2021-06-04 12:24:18 +00:00
Emilio Cobos Álvarez
44033440ba
Bug 1467309 - Reserve -- as a custom property name. r=xidorn
...
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
2021-06-04 10:55:41 +00:00
Emilio Cobos Álvarez
b6019069f0
Bug 1693886 - Increase custom property size limit a bit. r=xidorn
...
Differential Revision: https://phabricator.services.mozilla.com/D105978
2021-02-23 10:43:03 +00:00
Emilio Cobos Álvarez
d794656ed6
Bug 1675639 - Shrink custom property maps before making them immutable. r=boris
...
Differential Revision: https://phabricator.services.mozilla.com/D96132
2020-11-06 02:37:44 +00:00
Emilio Cobos Álvarez
16a7f461e5
Bug 1675639 - Don't waste string space before making values immutable. r=boris
...
Differential Revision: https://phabricator.services.mozilla.com/D96130
2020-11-06 02:37:44 +00:00
Narcis Beleuzu
cbd59786c5
Backed out 3 changesets (bug 1675639) for Bpgo bustages. CLOSED TREE
...
Backed out changeset 9a7b394ca845 (bug 1675639)
Backed out changeset 270207ea42c1 (bug 1675639)
Backed out changeset 3d38566d80c6 (bug 1675639)
2020-11-06 03:32:33 +02:00
Emilio Cobos Álvarez
efce2ee24c
Bug 1675639 - Shrink custom property maps before making them immutable. r=boris
...
Differential Revision: https://phabricator.services.mozilla.com/D96132
2020-11-05 23:24:13 +00:00
Emilio Cobos Álvarez
074d650acd
Bug 1675639 - Don't waste string space before making values immutable. r=boris
...
Differential Revision: https://phabricator.services.mozilla.com/D96130
2020-11-05 23:09:11 +00:00
Emilio Cobos Álvarez
7fd67ffb41
Bug 1646546 - Switch all callsites of try() to try_parse() in the style crate. r=boris
...
Fully automated via:
$ rg -l '\.try\(' | xargs sed -i 's/\.try(/.try_parse(/g'
$ cd servo/components/style && cargo +nightly fmt
Differential Revision: https://phabricator.services.mozilla.com/D80099
2020-06-17 22:27:37 +00:00
Emilio Cobos Álvarez
eb304854f3
Bug 1630676 - Reformat recent changes, various build fixes, and tidy fixes.
2020-04-16 21:17:50 +02:00
Ciure Andrei
b9f226f4e7
Backed out 11 changesets (bug 1630676) for causing multiple failures CLOSED TREE
...
Backed out changeset c1fbe364b76c (bug 1630676)
Backed out changeset 629970c8f0b7 (bug 1630676)
Backed out changeset 1530f4a9aef2 (bug 1630676)
Backed out changeset a5b60fb5a0e1 (bug 1630676)
Backed out changeset a6e1a31c3e0d (bug 1630676)
Backed out changeset 4df9717e28f0 (bug 1630676)
Backed out changeset c76b0b0e503b (bug 1630676)
Backed out changeset 3c89aec57d0a (bug 1630676)
Backed out changeset 369cf504584d (bug 1630676)
Backed out changeset d7eff4acb616 (bug 1630676)
Backed out changeset 1d47c9354eeb (bug 1630676)
2020-04-16 21:45:51 +03:00
Emilio Cobos Álvarez
73b359de08
Bug 1630676 - Reformat recent changes, various build fixes, and tidy fixes.
...
MANUAL PUSH: Review information for upstream patches would get lost otherwise.
2020-04-16 18:38:02 +02:00
Emilio Cobos Álvarez
5c0500dda0
Bug 1623396 - Custom properties with invalid variable references should be unset, not invalid. r=heycam
...
See https://github.com/w3c/csswg-drafts/issues/4075 .
There are tests that will get updated and this will make pass in bug 1623347.
Differential Revision: https://phabricator.services.mozilla.com/D67373
2020-03-26 11:34:12 +00:00
Emilio Cobos Álvarez
bdf0e6893c
Bug 1614394 - Rustfmt recent changes.
...
Differential Revision: https://phabricator.services.mozilla.com/D62307
2020-02-10 17:32:27 +00:00
Emilio Cobos Álvarez
583675431e
Bug 1609489 - Remove lazy_static usage from custom_properties.rs. r=m_kato
...
Differential Revision: https://phabricator.services.mozilla.com/D60039
2020-01-16 05:41:16 +00:00
Makoto Kato
d2447994b9
Bug 1503656 - Part 3. Don't use hardcoded value for safearea. r=emilio
...
To implement safe area support on Gecko, we should get safe area from Device.
Differential Revision: https://phabricator.services.mozilla.com/D52504
2020-01-08 11:56:25 +00:00
Makoto Kato
e8b3df25a8
Bug 1503656 - Part 2. Use Device for parameter instead of CssEnvironment. r=emilio
...
CssEnvironment alwasy is in Device, so use Device as parameter instead of CssEnvironment.
Differential Revision: https://phabricator.services.mozilla.com/D52507
2020-01-08 11:56:25 +00:00
Emilio Cobos Álvarez
209da50aea
Bug 1599115 - Simplify some code now that lifetimes are non-lexical. r=boris
...
Differential Revision: https://phabricator.services.mozilla.com/D54529
2019-11-25 19:14:37 +00:00
Cameron McCormack
325131e833
Bug 1474793 - Part 10.8: Add derived ToShmem implementations. r=emilio
...
Depends on D17196
Differential Revision: https://phabricator.services.mozilla.com/D17197
2019-03-30 00:16:25 +00:00
Emilio Cobos Álvarez
3b2667b7a6
Bug 1534726 - Reformat recent style system changes.
2019-03-12 19:01:28 +01:00
Emilio Cobos Álvarez
5854040efb
Bug 1215878 - Implement CSS revert keyword. r=heycam,birtles
...
The only fishy bit is the animation stuff. In particular, there are two places
where we just mint the revert behavior:
* When serializing web-animations keyframes (the custom properties stuff in
declaration_block.rs). That codepath is already not sound and I wanted to
get rid of it in bug 1501530, but what do I know.
* When getting an animation value from a property declaration. At that point
we no longer have the CSS rules that apply to the element to compute the
right revert value handy. It'd also use the wrong style anyway, I think,
given the way StyleBuilder::for_animation works.
We _could_ probably get them out of somewhere, but it seems like a whole lot
of code reinventing the wheel which is probably not useful, and that Blink
and WebKit just cannot implement either since they don't have a rule tree,
so it just doesn't seem worth the churn.
The custom properties code looks a bit different in order to minimize hash
lookups in the common case. FWIW, `revert` for custom properties doesn't seem
very useful either, but oh well.
Differential Revision: https://phabricator.services.mozilla.com/D21877
2019-03-07 11:59:36 +00:00
Shanavas M
905bede2e0
Bug 1519269 - Remove OrderedMap in favor of IndexMap. r=emilio
...
This cherry-picks https://github.com/servo/servo/pull/22656 .
2019-01-11 01:02:54 +01:00
Simon Sapin
07c1de366b
Bug 1518045 - Rustfmt has changed its default style. r=emilio
...
This cherry-picks the formatting parts of
https://github.com/servo/servo/pull/22385 .
2019-01-07 00:53:06 +01:00
Emilio Cobos Álvarez
dea05cdada
Bug 1511811 - Use https for the MPL license URL.
...
Cherry-picks https://github.com/servo/servo/pull/22198
2018-12-03 08:43:48 -05:00
shindli
3a4462fafb
Backed out 13 changesets (bug 1511811) for Btup bustages
...
Backed out changeset d71cde918f43 (bug 1511811)
Backed out changeset 0ae2634de8e1 (bug 1511811)
Backed out changeset 53d1f5ca4099 (bug 1511811)
Backed out changeset 5a08148928ef (bug 1511811)
Backed out changeset da7816ec50ef (bug 1511811)
Backed out changeset 5fe23889cccc (bug 1511811)
Backed out changeset 800bc60c75a7 (bug 1511811)
Backed out changeset 2392d8199cd0 (bug 1511811)
Backed out changeset 7bc486fbd195 (bug 1511811)
Backed out changeset d2c997426108 (bug 1511811)
Backed out changeset ddd573878432 (bug 1511811)
Backed out changeset 29c8ec1559a4 (bug 1511811)
Backed out changeset f5851346109d (bug 1511811)
2018-12-03 15:39:11 +02:00
Emilio Cobos Álvarez
11a665046f
Bug 1511811 - Use https for the MPL license URL.
...
Cherry-picks https://github.com/servo/servo/pull/22198
2018-12-03 08:15:21 -05:00
Emilio Cobos Álvarez
d4f2d2cc2b
Bug 1510862 - Prevent exponential blowup of custom properties. r=jwatt
...
Put a hard cap on the value length instead of counting substitutions, because it
works best, see the comment.
Differential Revision: https://phabricator.services.mozilla.com/D13352
2018-11-29 12:14:01 +01:00
Dorel Luca
f56de7958a
Backed out changeset 3e5ea9da2cbb (bug 1510862) for Linting failure. CLOSED TREE
2018-11-29 12:35:42 +02:00
Emilio Cobos Álvarez
a157ef9b7a
Bug 1510862 - Prevent exponential blowup of custom properties. r=jwatt
...
Put a hard cap on the value length instead of counting substitutions, because it
works best, see the comment.
Differential Revision: https://phabricator.services.mozilla.com/D13352
2018-11-29 10:16:38 +00:00
Emilio Cobos Álvarez
64a26b0685
Bug 1508026 - Fix formatting.
2018-11-17 10:01:24 +01:00