Bug 1639756 - Enable :is() and :where() in UA sheets. r=jwatt
authorEmilio Cobos Álvarez <emilio@crisal.io>
Thu, 21 May 2020 12:10:34 +0000
changeset 531883 67dcbffe8b5b4873ed8719089c6dddc5e2c9060d
parent 531882 f60ba533e3943462c9d75e4475a0b1ee6317682f
child 531884 c161d7a53845bad9e2bebc9f76af9e6633507efb
push id116937
push userealvarez@mozilla.com
push dateMon, 25 May 2020 10:22:46 +0000
treeherderautoland@9d8f9a2cd37f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjwatt
bugs1639756
milestone78.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1639756 - Enable :is() and :where() in UA sheets. r=jwatt This will allow us to clean them up. Differential Revision: https://phabricator.services.mozilla.com/D76262
servo/components/style/gecko/selector_parser.rs
--- a/servo/components/style/gecko/selector_parser.rs
+++ b/servo/components/style/gecko/selector_parser.rs
@@ -349,17 +349,17 @@ impl<'a, 'i> ::selectors::Parser<'i> for
 
     #[inline]
     fn parse_host(&self) -> bool {
         true
     }
 
     #[inline]
     fn parse_is_and_where(&self) -> bool {
-        static_prefs::pref!("layout.css.is-where-selectors.enabled")
+        self.in_user_agent_stylesheet() || static_prefs::pref!("layout.css.is-where-selectors.enabled")
     }
 
     #[inline]
     fn parse_part(&self) -> bool {
         self.chrome_rules_enabled() || static_prefs::pref!("layout.css.shadow-parts.enabled")
     }
 
     fn parse_non_ts_pseudo_class(