aboutsummaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
...
| * Further changes required by ServoOriol Brufau2023-06-091-2/+2
| |
| * style: Use preferred color scheme when forcing colors with system colors ↵Emilio Cobos Álvarez2023-06-093-19/+20
| | | | | | | | | | | | | | | | | | (except windows HCM) This causes (among other things) pages to be dark when using regular windows system colors and forcing colors to "always", which is nice. Differential Revision: https://phabricator.services.mozilla.com/D131165
| * style: [css-lists] Remove the internal '-moz-list-reversed' CSS property ↵Mats Palmgren2023-06-096-39/+0
| | | | | | | | | | | | that is no longer needed Differential Revision: https://phabricator.services.mozilla.com/D129957
| * style: [css-lists] Style system changes to support 'reversed(<counter-name>)'Mats Palmgren2023-06-096-29/+141
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D129955
| * style: Add a foreground color to attention selectionEmilio Cobos Álvarez2023-06-091-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | In some platforms (like macOS, windows dark mode, android, and some gtk themes) the foreground selection color might be `currentcolor`, and that doesn't generally guarantee enough contrast with the attention background. Remove HeadlessLookAndFeelGTK's handling of this color since it's useless (always overridden by prefs in all.js) Differential Revision: https://phabricator.services.mozilla.com/D130617
| * style: Remove some prefs for pseudo-classes that we have shipped/unshipped ↵Emilio Cobos Álvarez2023-06-094-11/+1
| | | | | | | | | | | | | | | | successfully And remove code for :-moz-submit-invalid completely. Differential Revision: https://phabricator.services.mozilla.com/D130737
| * style: Unexpose :-moz-locale-dir and :-moz-lwtheme* from contentEmilio Cobos Álvarez2023-06-092-4/+10
| | | | | | | | | | | | | | | | | | | | Behind a pref for now. Given these selectors do nothing on non-chrome documents (they just don't match) it seems worth trying. A cursory search seems to indicate they're not used for UA detection or something like that (or at least I haven't found such an usage). Differential Revision: https://phabricator.services.mozilla.com/D130736
| * Further changes required by ServoOriol Brufau2023-06-093-20/+18
| |
| * style: Allow matches() / querySelector() / etc on chrome docs to access ↵Emilio Cobos Álvarez2023-06-093-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | chrome-only selectors. r=boris Without this some tests fail with the previous patch because code like: https://searchfox.org/mozilla-central/rev/267682a8f45221bf0bfe999d4a0239706a43bc56/browser/base/content/browser-gestureSupport.js#651 starts throwing. Unfortunately I had missed that on my try run, because the error message didn't include that exception (it seemed like an intermittent browser-chrome failure instead). We could expose a ChromeOnly API for this, but this seems better. This fixes it trivially, and also removes the "no url data" situation from the selector parser, which is nice. Differential Revision: https://phabricator.services.mozilla.com/D130818
| * style: Refactor :-moz-lwtheme pseudo-classes to get invalidated correctlyEmilio Cobos Álvarez2023-06-093-40/+35
| | | | | | | | | | | | | | | | | | | | | | | | Use the same document state mechanism we have for :moz-locale-dir. Also, simplify the setup of the later to be the same as :dir(), allowing the matching code to be less repetitive. This should fix some flakiness in chrome mochitests, but we have no existing tests for these pseudo-classes more generally and since they're just chrome-only I'm not super-excited about adding more. Differential Revision: https://phabricator.services.mozilla.com/D130735
| * style: Simplify :dir() implementationEmilio Cobos Álvarez2023-06-094-34/+6
| | | | | | | | | | | | | | | | | | | | | | This I noticed while working on the following patches. Shouldn't have any behavior change: the behavior does in fact match the element state flag semantics correctly if we do this. We did split the dir flags into two element bits a while ago. :not(:dir()) still behaves correctly of course, and we have tests for that. Differential Revision: https://phabricator.services.mozilla.com/D130734
| * style: Make #[css(field_bound)] and #[css(iterable)] work properlyEmilio Cobos Álvarez2023-06-092-10/+22
| | | | | | | | | | | | | | | | | | For now, use IntoIterator to figure the right type to add the bound. If we need this on types that are iterable but don't provide IntoIterator, we can add another attribute field or something. Differential Revision: https://phabricator.services.mozilla.com/D129962
| * style: Make #[css(represents_keyword)] convert underscore in the field name ↵Mats Palmgren2023-06-091-1/+1
| | | | | | | | | | | | to dash Differential Revision: https://phabricator.services.mozilla.com/D128668
* | Auto merge of #29859 - mrobinson:float-negative-block-margin, r=Loirooriolbors-servo2023-06-121-4/+11
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Layout 2020: Properly handle negative margins in floats If a float has negative block margins, it should be pushed upward, but shouldn't affect the positioning of any floats that came before it. It should lower the ceiling though when it still has some non-negative block contribution. In order to implement this behavior, we should only place the float considering its non-negative block length contribution. If the float is pushed up completely past it's "natural" position, it should be placed like a float with zero block size. <!-- 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 - [x] There are tests for these changes <!-- 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. -->
| * | Layout 2020: Properly handle negative block margins in floatsMartin Robinson2023-06-111-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a float has negative block margins, it should be pushed upward, but shouldn't affect the positioning of any floats that came before it. It should lower the ceiling though when it still has some non-negative block contribution. In order to implement this behavior, we should only place the float considering its non-negative block length contribution. If the float is pushed up completely past it's "natural" position, it should be placed like a float with zero block size.
* | | Auto merge of #29863 - nicoburns:fix-infinite-loop-when-shrinking, r=Loirooriolbors-servo2023-06-101-4/+6
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix infinite loop in flexbox algorithm Only apply step 5c of "resolve flexible lengths" if sum of scaled flexible shrink factors > 0 Probably fixes #29852 (but speculative as I can't get mach to run). --- <!-- 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 ___
| * | Fix infinite loop in flexbox algorithm: Only apply step c if sum of scaled ↵Nico Burns2023-06-081-4/+6
| | | | | | | | | | | | flexible shrink factors > 0
* | | Auto merge of #29856 - Loirooriol:improve-margin-collapse, r=mrobinsonbors-servo2023-06-091-5/+6
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve margin collapse in layout-2020 According to https://drafts.csswg.org/css2/#collapsing-margins, bottom margins should only collapse with the last child if `height` is `auto`. Also, the note mentions `min-height: 0`, but the normative text doesn't have such requirement, so I'm dropping it, matching WebKit. The previous logic is moved into the case of collapsing the top and bottom margins of the same element, since this can happen either with `height: auto` or `height: 0`, and requires `min-height: 0`. --- - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #29858 - [X] There are tests for these changes <!-- 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. -->
| * | Improve margin collapse in layout-2020Oriol Brufau2023-06-081-5/+6
| |/ | | | | | | | | | | | | | | | | | | | | According to https://drafts.csswg.org/css2/#collapsing-margins, bottom margins should only collapse with the last child if `height` is `auto`. Also, the note mentions `min-height: 0`, but the normative text doesn't have such requirement, so I'm dropping it, matching WebKit. The previous logic is moved into the case of collapsing the top and bottom margins of the same element, since this can happen either with `height: auto` or `height: 0`, and requires `min-height: 0`.
* / Remove an unneeded arc reference count bump on each pref access.Emilio Cobos Álvarez2023-06-081-5/+5
|/
* Auto merge of #29827 - mrobinson:fragment-tree-directory, r=atbrakhibors-servo2023-06-0420-558/+592
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Layout 2020: Move all Fragment code to the `fragment_tree` directory This is a simple code organization change with no behavior change with the idea of making Layout 2020 easier to understand by new folks to the project. The idea is that we will have a cleaner separation between the different parts of layout ie one directory for the fragment tree and one (currently multiple) directory for the box tree. <!-- 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 - [x] These changes do not require tests because they do not change behavior. <!-- 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. -->
| * Layout 2020: Move all Fragment code to the `fragment_tree` directoryMartin Robinson2023-06-0420-558/+592
| | | | | | | | | | | | | | | | This is a simple code organization change with no behavior change with the idea of making Layout 2020 easier to understand by new folks to the project. The idea is that we will have a cleaner separation between the different parts of layout ie one directory for the fragment tree and one (currently multiple) directory for the box tree.
* | layout_2020: Allow end margin to collapse with children if height isPu Xingyu2023-06-041-1/+1
|/ | | | | | | set to zero Previously, end margin was allowed to collapse only when block size is not set.
* Auto merge of #29757 - Loirooriol:sequential-context-2020, r=Loirooriolbors-servo2023-06-0315-269/+907
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lay out floats and handle clearance in layout 2020, but don't flow text around them yet This is a crude rebase of #27539 <!-- 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. -->
| * Fix the unit testMartin Robinson2023-06-032-47/+63
| | | | | | | | These were broken for various issues.
| * Do not hoist floated fragmentsMartin Robinson2023-06-0310-252/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of hoisting floated fragments to be siblings of the fragment created by their containing block formatting context, keep them in "normal" fragment tree position and adjust their positioning to be relative to the containing block. This means that float fragments follow the existing invariants of the fragment tree and properly handle hit testing, painting order, and relative positioning. The tradeoff here is more complexity tracking the containing block offsets from the block formatting context (including handling collapsed margins), but less complexity dealing with hoisting / shared ownership in addition to the correctness benefits. Some tests are failing now because this change revealed some additional shortcomings with clearing block formatting context content size past the end of their contained floats. This will be fixed in a followup change. Co-authored-by: Oriol Brufau <obrufau@igalia.com>
| * Place floats in layout 2020, but don't flow text around the floats yet.Patrick Walton2023-06-0315-222/+853
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit puts floats behind the `layout.floats.enabled` pref, because of the following issues and unimplemented features: * Inline formatting contexts don't take floats into account, so text doesn't flow around the floats yet. * Non-floated block formatting contexts don't take floats into account, so BFCs can overlap floats. * Block formatting contexts that contain floats don't expand vertically to contain all the floats. That is, floats can stick out the bottom of BFCs, contra spec.
* | Auto merge of #29755 - stshine:automatic-min-size, r=Loirooriolbors-servo2023-06-033-9/+73
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | layout_2020: Implement automatic minimum size of flex items Implement the algorithm described in https://drafts.csswg.org/css-flexbox/#min-size-auto. <!-- 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. -->
| * | layout_2020: Implement automatic minimum size of flex itemsPu Xingyu2023-06-023-9/+73
| | | | | | | | | | | | | | | Implement the algorithm described in https://drafts.csswg.org/css-flexbox/#min-size-auto.
* | | Auto merge of #29835 - mukilan:fix-double-borrow-in-hoisted, r=mrobinsonbors-servo2023-06-031-0/+15
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clear PositioningContext for speculative layouts <!-- Please describe your changes on the following line: --> Developed in collaboration with @mrobinson `try_layout` is used for laying out absolutely positioned descendants multiple times when min/max-{width, height} properties are set. When the same PositioningContext instance is used between successive attempts without clearing the accumulated descendants, we will generate multiple fragments which reference the same box, which then will lead to a double borrow error when layout is performed in parallel. --- <!-- 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 crash testing is currently not working in servo. New tests will be added once #29832 is fixed. <!-- 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. -->
| * | Clear PositioningContext for speculative layoutsMukilan Thiyagarajan2023-06-021-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `try_layout` is used for laying out absolutely positioned descendants multiple times when min/max-{width, height} properties are set. When the same PositioningContext instance is used between successive attempts without clearing the accumulated descendants, we will generate multiple fragments which reference the same box, which then will lead to a double borrow error when layout is performed in parallel. Signed-off-by: Mukilan Thiyagarajan <me@mukilan.in>
* | | Auto merge of #29803 - stshine:no-margins, r=Loirooriolbors-servo2023-06-031-7/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | layout_2020: Only count for content size for height of non-replaced inline elements <!-- Please describe your changes on the following line: --> Accorinding to https://drafts.csswg.org/css2/#inline-non-replaced, The vertical padding, border and margin of an inline, non-replaced box start at the top and bottom of the content area, and has nothing to do with the line-height. But only the line-height is used when calculating the height of the line box. --- <!-- 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. -->
| * | | layout_2020: Only count for content size for height of non-replacedPu Xingyu2023-06-011-7/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | inline elements Accorinding to https://drafts.csswg.org/css2/#inline-non-replaced, The vertical padding, border and margin of an inline, non-replaced box start at the top and bottom of the content area, and has nothing to do with the line-height. But only the line-height is used when calculating the height of the line box.
* | | Auto merge of #29799 - stshine:align-self-stretch, r=Loirooriolbors-servo2023-06-015-2/+13
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | layout_2020: Specify the used cross size when replaced item is stretched According to spec, if the flex item has [align-self: stretch](https://drafts.csswg.org/css-flexbox/#propdef-align-self), redo layout for its contents, treating this used size as its definite cross size so that percentage-sized children can be resolved. <!-- 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 - [x] These changes fix #29788 (GitHub issue number if applicable) <!-- 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. -->
| * | | layout_2020: Specify the used cross size when replaced item is stretchedPu Xingyu2023-05-271-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | If the flex item has align-self: stretch, redo layout for its contents, reating this used size as its definite cross size so that percentage-sized children can be resolved.
| * | | layout_2020: Add an optional box size parameter to ↵Pu Xingyu2023-05-275-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ReplacedContent::used_size_as_if_inline_element This allow us to specify the used size when calculating size of replaced content.
* | | | Auto merge of #29822 - mrobinson:rustdoc, r=mukilanbors-servo2023-06-011-30/+30
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert some comments into rustdoc These were always meant to be rustdoc and converting them makes them show up in the IDE in a more helpful way. <!-- 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 - [x] These changes do not require tests because they do not change behavior. <!-- 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. -->
| * | | Convert some comments into rustdocMartin Robinson2023-06-011-30/+30
| | | | | | | | | | | | | | | | | | | | These were always meant to be rustdoc and converting them makes them show up in the IDE in a more helpful way.
* | | | Auto merge of #29805 - jdm:dom-protos, r=mrobinsonbors-servo2023-06-01201-611/+2655
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support extending DOM classes in JS Adds support for determining the correct prototype as part of a `new` call for non-HTML constructors. Support for HTML constructors [was added](https://github.com/servo/servo/blob/master/components/script/dom/bindings/htmlconstructor.rs#L116) as part of the custom element work, but that wasn't enough for extending other DOM objects like `EventTarget`. This work is based on Gecko's code in https://searchfox.org/mozilla-central/rev/2d678a843ceab81e43f7ffb83212197dc10e944a/dom/bindings/BindingUtils.cpp#3667, and is split into two parts: 1) the actualy new implementation (demonstrating that extending `EventTarget` works as expected) 2) plumbing the new prototype through all of the rest of the DOM object construction code. This ends up being more complex than the way it's done in Gecko because they have lazy DOM reflectors, so their native DOM objects can be constructed without any knowledge of a JS prototype. Servo's reflectors are eager, however, so we need to propagate prototype information into individual constructors. As a result, this was a tedious set of changes to make. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #29770 - [x] There are tests for these changes
| * | | | Rename reflect_dom_object2.Josh Matthews2023-05-31113-228/+254
| | | | |
| * | | | Assert that we're constructing.Josh Matthews2023-05-301-1/+2
| | | | |
| * | | | Throw type error when calling DOM constructor without new.Josh Matthews2023-05-303-15/+45
| | | | |
| * | | | Don't root a Realm that's used for one call.dom-protosJosh Matthews2023-05-291-3/+3
| | | | |
| * | | | Formatting.Josh Matthews2023-05-2881-206/+588
| | | | |
| * | | | Support arbitrary protos when wrapping DOM objects with constructors.Josh Matthews2023-05-28197-586/+2028
| | | | |
| * | | | Support arbitrary protos when wrapping EventTarget objects.Josh Matthews2023-05-286-22/+185
| | |_|/ | |/| |
* | | | Auto merge of #29816 - Loirooriol:sync, r=mrobinsonbors-servo2023-05-3158-696/+2118
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport several style changes from Gecko (3) <!-- Please describe your changes on the following line: --> This continues https://github.com/servo/servo/pull/29772. --- <!-- 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. -->
| * | | Further changes required by ServoOriol Brufau2023-05-311-1/+1
| | | |
| * | | style: Merge branches in some ComputedValues functionsEmilio Cobos Álvarez2023-05-311-20/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This should mitigate the code size impact. Also make get_resolved_value non-generic to avoid monomorphizing it multiple times. Differential Revision: https://phabricator.services.mozilla.com/D130354
| * | | style: Remove other Widget* colorsEmilio Cobos Álvarez2023-05-311-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are only used for frameset painting and the non-e10s <select> dropdown focus codepath. We have other more appropriate standard colors for this. Differential Revision: https://phabricator.services.mozilla.com/D129992