diff --git a/components/style/gecko/selector_parser.rs b/components/style/gecko/selector_parser.rs index c63bc81c95b..0a7e2922c93 100644 --- a/components/style/gecko/selector_parser.rs +++ b/components/style/gecko/selector_parser.rs @@ -121,6 +121,7 @@ impl NonTSPseudoClass { "-moz-full-screen" => Some(NonTSPseudoClass::Fullscreen), "-moz-read-only" => Some(NonTSPseudoClass::ReadOnly), "-moz-read-write" => Some(NonTSPseudoClass::ReadWrite), + "-webkit-autofill" => Some(NonTSPseudoClass::Autofill), _ => None, } } @@ -155,9 +156,12 @@ impl NonTSPseudoClass { /// Returns whether the pseudo-class is enabled in content sheets. #[inline] fn is_enabled_in_content(&self) -> bool { - if matches!(*self, NonTSPseudoClass::FocusVisible) { + if let NonTSPseudoClass::FocusVisible = *self { return static_prefs::pref!("layout.css.focus-visible.enabled"); } + if let NonTSPseudoClass::Autofill = *self { + return static_prefs::pref!("layout.css.autofill.enabled"); + } !self.has_any_flag(NonTSPseudoClassFlag::PSEUDO_CLASS_ENABLED_IN_UA_SHEETS_AND_CHROME) }