servo/components/style/values/specified
Emilio Cobos Álvarez bb5de5833c style: Improve LookAndFeel color caching
To be honest, I'm a bit baffled that bug 1773795 caused a performance
regression, but I think it's because the standins codepath is not really
cached, so system colors that are "spoofed" always go through the
massive switch, which could potentially be expensive.

To fix, this, rejigger a bit the caches so that we key on both
color-scheme and use-standins. Also, while at it, make the set of colors
we spoof a single bitflag check, rather than relying on the compiler to
do something potentially smart with it.

I had to shuffle the order of colors around so that the expression to
initialize the bitfield is constexpr (doesn't go over 1 << 64), but
other than that this patch should be relatively straight-forward.

Differential Revision: https://phabricator.services.mozilla.com/D150100
2023-10-02 14:37:19 +00:00
..
align.rs style: Switch all callsites of try() to try_parse() in the style crate. 2020-06-18 23:51:14 +02:00
angle.rs style: Add experimental support for "e", "pi", and various trigonometric functions in calc() 2023-05-30 23:26:01 +02:00
background.rs style: Switch all callsites of try() to try_parse() in the style crate. 2020-06-18 23:51:14 +02:00
basic_shape.rs style: Remove layout.css.clip-path-path.enabled 2023-05-24 18:32:38 +02:00
border.rs style: Switch all callsites of try() to try_parse() in the style crate. 2020-06-18 23:51:14 +02:00
box.rs style: Implement CSS 'contain: style' 2023-10-02 14:37:19 +00:00
calc.rs style: Implement new *vi and *vb units 2023-08-16 17:46:41 +02:00
color.rs style: Improve LookAndFeel color caching 2023-10-02 14:37:19 +00:00
column.rs style: Improve #[derive(Parse)]. 2019-02-23 21:04:44 -08:00
counters.rs Make the choice of layout runtime setting 2023-07-06 14:49:24 +02:00
easing.rs style: Refactor function parsing branches for specified::easing::TimingFunction 2023-10-02 14:37:19 +00:00
effects.rs style: Fix some manual occurrences of try(). 2020-06-18 23:51:15 +02:00
flex.rs style: Improve #[derive(Parse)]. 2019-02-23 21:04:44 -08:00
font.rs style: Make viewport-relative units zoomable via "zoom text only" 2023-10-02 14:37:19 +00:00
gecko.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
grid.rs style: Switch all callsites of try() to try_parse() in the style crate. 2020-06-18 23:51:14 +02:00
image.rs style: Improve Percentage -> LengthPercentage conversion 2023-08-16 17:46:41 +02:00
length.rs style: Make viewport-relative units zoomable via "zoom text only" 2023-10-02 14:37:19 +00:00
list.rs style: [css-lists] Remove the internal '-moz-list-reversed' CSS property that is no longer needed 2023-06-09 10:22:19 +02:00
mod.rs style: Support scroll-timeline-axis longhand in style system 2023-10-02 14:37:19 +00:00
motion.rs Reformat with rustfmt 1.4.36-nightly (7de6968 2021-02-07) 2021-02-25 20:31:42 +01:00
outline.rs style: Switch all callsites of try() to try_parse() in the style crate. 2020-06-18 23:51:14 +02:00
page.rs style: Add support for parsing container-query-specific features 2023-08-16 17:46:41 +02:00
percentage.rs style: Use ColorMix for interpolated colors in the computed style rather than ComplexColorRatios 2023-08-16 17:46:41 +02:00
position.rs style: Allow to derive Parse/ToCss/SpecifiedValueInfo on bitflags 2023-08-16 17:46:41 +02:00
ratio.rs style: Move Ratio into independent files. 2021-02-26 16:44:05 +01:00
rect.rs style: Use Rust types for some misc properties. 2019-02-23 21:04:33 -08:00
resolution.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
source_size_list.rs style: Add support for parsing container-query-specific features 2023-08-16 17:46:41 +02:00
svg.rs style: Part 1: Add SVG d property in CSS 2023-05-24 18:32:33 +02:00
svg_path.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
table.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
text.rs style: Migrate <th> text-align behaviour from presentation hint to UA CSS 2023-08-16 17:46:41 +02:00
time.rs style: Centralize calc function parsing. 2020-02-12 02:43:12 +01:00
transform.rs style: Implement transform: perspective(none) 2023-05-24 18:32:43 +02:00
ui.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
url.rs style: Support full <image> syntax in list-style-image as per spec. 2021-02-26 16:44:05 +01:00