Commit graph

25370 commits

Author SHA1 Message Date
Emilio Cobos Álvarez
fa840e1666 style: Implement transform: perspective(none)
Differential Revision: https://phabricator.services.mozilla.com/D123350
2023-05-24 18:32:43 +02:00
Nicolas Silva
ce45f68d9c style: Update euclid in stylo
Differential Revision: https://phabricator.services.mozilla.com/D85762
2023-05-24 18:32:43 +02:00
Emilio Cobos Álvarez
db1ada85dc style: Workaround GCC-calling-into-LLVM ABI issue by making GenericFontFamily larger
This enum being a bit larger doesn't cause many common data structures
to grow, so this should be fine.

Differential Revision: https://phabricator.services.mozilla.com/D123146
2023-05-24 18:32:43 +02:00
Matt Woodrow
79893116e7 style: Return an infinite perspective in TransformOperation::Perspective::to_animated_zero
Differential Revision: https://phabricator.services.mozilla.com/D122919
2023-05-24 18:32:42 +02:00
Emilio Cobos Álvarez
26c5db6a6e style: Respect transparent and system color border colors in forced-colors mode
Differential Revision: https://phabricator.services.mozilla.com/D123111
2023-05-24 18:32:42 +02:00
Emilio Cobos Álvarez
f31f541125 style: Add a use counter for content-visibility
Differential Revision: https://phabricator.services.mozilla.com/D122873
2023-05-24 18:32:42 +02:00
Oriol Brufau
6ea5fdc40e Further changes required by Servo 2023-05-24 18:32:42 +02:00
Mats Palmgren
0cb64672f4 style: [css-fonts] Implement 'font-synthesis: small-caps'
Differential Revision: https://phabricator.services.mozilla.com/D114313
2023-05-24 18:32:42 +02:00
Oriol Brufau
fd3d12e214 Further changes required by Servo 2023-05-24 18:32:41 +02:00
Barret Rennie
c241182d09 style: Support color-mix() in non-sRGB color spaces
Out of gamut colours are currently clipped into sRGB.

Differential Revision: https://phabricator.services.mozilla.com/D120561
2023-05-24 18:32:41 +02:00
Oriol Brufau
d564f200aa Further changes required by Servo 2023-05-24 18:32:41 +02:00
Emilio Cobos Álvarez
5530f7e90c style: Support break-inside: avoid-{page,column}
break-before/after: page|column seem harder because you need to deal
with nested breaks, I think, but this should be straight-forward.

Differential Revision: https://phabricator.services.mozilla.com/D121206
2023-05-24 18:32:41 +02:00
Emilio Cobos Álvarez
cf44eb3e77 style: Don't alias -apple-system to system-ui for now, to keep /css/css-fonts/animations/system-fonts.html happy
We probably want to do this when they do something different, but for
now behavior should be the same and it causes some subtests to fail
because `getComputedStyle(..).fontFamily` for system fonts seems to
return -apple-system, but `.style.fontFamily = "-apple-system"` returns
`system-ui`.

MANUAL PUSH: Orange fix on a CLOSED TREE
2023-05-24 18:32:41 +02:00
Nazım Can Altınova
d9719a3946 style: Remove the unused "gecko_profiler" feature from servo
This was being used when we had special code for gecko profiler in the servo
codebase but we just removed the last one. This is safe to remove now. The
"enabled" feature in the gecko-profiler crate is being controlled by
gkrust-shared directly now.

Differential Revision: https://phabricator.services.mozilla.com/D120796
2023-05-24 18:32:41 +02:00
Oriol Brufau
2376747273 Further changes required by Servo 2023-05-24 18:32:40 +02:00
Nazım Can Altınova
5a9fae3fb5 style: Remove the old profiler label frames code in the servo codebase and replace it with the new API
Differential Revision: https://phabricator.services.mozilla.com/D120795
2023-05-24 18:32:40 +02:00
Mike Hommey
9e33a154fd style: Setup bindgen flags for servo similarly to cranelift and neqo
While the use of toml allows the flags to be separated, the split is
done via some shell shenanigans anyways, and servo's build.rs can
handle the same just fine.

Differential Revision: https://phabricator.services.mozilla.com/D121042
2023-05-24 18:32:40 +02:00
Morgan Reschenberg
9b070745c9 style: Add MozNativevisitedhyperlinktext color, use it to style visited links
Differential Revision: https://phabricator.services.mozilla.com/D120657
2023-05-24 18:32:40 +02:00
Oriol Brufau
e617ece91e Further changes required by Servo 2023-05-24 18:32:40 +02:00
Emilio Cobos Álvarez
028f2f95d2 style: Initial support for the color-scheme CSS property
Add initial support for the color-scheme CSS property, allowing pages to
choose between light and dark system colors per-element, and such.

Things that are left to do so that this can be enabled by default:

 * Dark system colors on Windows / Android / Standins.
 * Dark Canvas/CanvasText/Link visited colors (which right now are set
   via PreferenceSheet).
 * Dark form controls in nsNativeBasicTheme.
 * Processing the color-scheme meta tag to fill-in
   Document::mColorSchemeBits.

But this seems like enough progress to be landable on its own.

Differential Revision: https://phabricator.services.mozilla.com/D120843
2023-05-24 18:32:40 +02:00
Oriol Brufau
fd41056ca5 Further changes required by Servo 2023-05-24 18:32:39 +02:00
Emilio Cobos Álvarez
d86e449e8c style: Add system-ui boilerplate
Alias -apple-system to it, and put it behind a pref for now. This is
pretty boring (read: uncontroversial hopefully) code. The follow-up work
is modifying StaticPresData to look up the fonts using system APIs,
probably. Maybe a bit more work if on macOS they can't be named.

Differential Revision: https://phabricator.services.mozilla.com/D119984
2023-05-24 18:32:39 +02:00
Oriol Brufau
9cf7df1f31 Further changes required by Servo 2023-05-24 18:32:39 +02:00
Emilio Cobos Álvarez
7d1823563e style: Remove layout.css.image-set.enabled
We shipped this in 88.

Differential Revision: https://phabricator.services.mozilla.com/D120899
2023-05-24 18:32:39 +02:00
Emilio Cobos Álvarez
eca66dba72 style: Factor PreferenceSheet colors to its own struct
This will come handy in the next patch.

Depends on D120678

Differential Revision: https://phabricator.services.mozilla.com/D120679
2023-05-24 18:32:39 +02:00
Emily McDonough
c2a50c92fa style: Remove the paper size variant of GenericPageSize and add an implied default to the paper size and orientation variant
Differential Revision: https://phabricator.services.mozilla.com/D119915
2023-05-24 18:32:38 +02:00
Sonia Singla
45d6e64d51 style: Remove layout.css.clip-path-path.enabled
Differential Revision: https://phabricator.services.mozilla.com/D120235
2023-05-24 18:32:38 +02:00
Emilio Cobos Álvarez
8f4d782952 style: Don't EnsureUniqueInner from the cssRules getter
Instead, fix up the various content data structures when the stylesheet
is mutated. This makes reading a stylesheet not disable style sharing.

Differential Revision: https://phabricator.services.mozilla.com/D115203
2023-05-24 18:32:38 +02:00
Sonia Singla
c0a2b99c4f style: Remove layout.css.prefixes.columns
Differential Revision: https://phabricator.services.mozilla.com/D120057
2023-05-24 18:32:38 +02:00
Emilio Cobos Álvarez
2634ad10de style: Blockify outside markers at used value time rather than at computed value time
Trusting the display value in style_adjuster is wrong, as some elements
force a given kind of frame (like <details>).

Differential Revision: https://phabricator.services.mozilla.com/D119609
2023-05-24 18:32:38 +02:00
Emilio Cobos Álvarez
d7d407a9ae style: Fix mixed indentation in style_adjuster.rs
Differential Revision: https://phabricator.services.mozilla.com/D119579
2023-05-24 18:32:38 +02:00
Emilio Cobos Álvarez
1918c1c203 style: Inline GeckoNode::prev_sibling
It's very hot when matching some kind of selectors like the ones in bug
1717267, and the two function calls show up in the profiles.

Differential Revision: https://phabricator.services.mozilla.com/D119505
2023-05-24 18:32:37 +02:00
Jonathan Kew
695ff236c8 style: Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288
Differential Revision: https://phabricator.services.mozilla.com/D118198
2023-05-24 18:32:37 +02:00
Emilio Cobos Álvarez
25edb3c21b style: More fine-grained viewport units invalidation
This should speed up window resize significantly.

Differential Revision: https://phabricator.services.mozilla.com/D118878
2023-05-24 18:32:37 +02:00
Emilio Cobos Álvarez
85b7a60a69 style: Reduce code size of shorthand serialization
Differential Revision: https://phabricator.services.mozilla.com/D118835
2023-05-24 18:32:37 +02:00
Emilio Cobos Álvarez
58e9ee4d1e style: Make get_shorthand_appendable_value less generic
This will allow to save some codesize from longhands_to_css.

Differential Revision: https://phabricator.services.mozilla.com/D118834
2023-05-24 18:32:37 +02:00
Matt Woodrow
f81ffda69d style: Clamp perspective() values to a minimum of 1px
Differential Revision: https://phabricator.services.mozilla.com/D118250
2023-05-24 18:32:36 +02:00
Oriol Brufau
2c5aa34bb0 Further changes required by Servo 2023-05-24 18:32:36 +02:00
Mats Palmgren
d92f66246e style: [css-content] Implement 'content: none' for elements
Differential Revision: https://phabricator.services.mozilla.com/D114130
2023-05-24 18:32:36 +02:00
Mats Palmgren
183ec78be5 style: Implement 'content: none' for ::marker
Differential Revision: https://phabricator.services.mozilla.com/D111707
2023-05-24 18:32:36 +02:00
Emily McDonough
c9d4f812e5 style: Use a computed type for page-size which converts paper sizes to a Size2D
Differential Revision: https://phabricator.services.mozilla.com/D115842
2023-05-24 18:32:36 +02:00
Oriol Brufau
4f0e0c888c Further changes required by Servo 2023-05-24 18:32:36 +02:00
Emilio Cobos Álvarez
67f9b97735 style: Unify font-family storage
This changes font-family storage to reuse the rust types, removing a
bunch of code while at it. This allows us to, for example, use a single
static font family for -moz-bullet and clone it, rather than creating a
lot of expensive copies.

Differential Revision: https://phabricator.services.mozilla.com/D118011
2023-05-24 18:32:35 +02:00
Emilio Cobos Álvarez
837e41c8eb style: Remove -moz-outline-radius
It does nothing since 88 and we unshipped it in 89.

Differential Revision: https://phabricator.services.mozilla.com/D117532
2023-05-24 18:32:35 +02:00
Emilio Cobos Álvarez
ed806afe52 style: Expose text selection foreground / background colors to chrome code
Differential Revision: https://phabricator.services.mozilla.com/D117417
2023-05-24 18:32:35 +02:00
Oriol Brufau
2bf074e434 Further changes required by Servo 2023-05-24 18:32:35 +02:00
Emilio Cobos Álvarez
9eb244fc0c style: Add an internal -moz-system-color() function to expose both light and dark system colors
Differential Revision: https://phabricator.services.mozilla.com/D117416
2023-05-24 18:32:35 +02:00
Oriol Brufau
0ebad03ab5 Further changes required by Servo 2023-05-24 18:32:35 +02:00
Jonathan Kew
16168fe4e7 style: Implement CSS support for the optional adjustment-basis metric keywords for the font-size-adjust property (enabled on Nightly only for now)
Differential Revision: https://phabricator.services.mozilla.com/D115596
2023-05-24 18:32:34 +02:00
Oriol Brufau
d1936e6a4a Further changes required by Servo 2023-05-24 18:32:34 +02:00