style: Expose :autofill behind a pref to content, and add :-webkit-autofill as a compat alias.

Nightly only until we get resolutions on the relevant spec issues.

Differential Revision: https://phabricator.services.mozilla.com/D99296
This commit is contained in:
Emilio Cobos Álvarez 2020-12-16 08:16:16 +00:00
parent 019e6a3e2a
commit 72a0dbacc7

View file

@ -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)
}