diff --git a/components/style/properties/longhands/ui.mako.rs b/components/style/properties/longhands/ui.mako.rs index b73792104cb..c077d4d8ba8 100644 --- a/components/style/properties/longhands/ui.mako.rs +++ b/components/style/properties/longhands/ui.mako.rs @@ -39,7 +39,6 @@ ${helpers.predefined_type( gecko_ffi_name="mUserSelect", alias="-webkit-user-select", animation_value_type="discrete", - needs_context=False, spec="https://drafts.csswg.org/css-ui-4/#propdef-user-select", )} diff --git a/components/style/values/specified/ui.rs b/components/style/values/specified/ui.rs index 6dbf910a655..067ce312102 100644 --- a/components/style/values/specified/ui.rs +++ b/components/style/values/specified/ui.rs @@ -141,6 +141,11 @@ impl Parse for ScrollbarColor { } } +fn in_ua_sheet(context: &ParserContext) -> bool { + use crate::stylesheets::Origin; + context.stylesheet_origin == Origin::UserAgent +} + /// The specified value for the `user-select` property. /// /// https://drafts.csswg.org/css-ui-4/#propdef-user-select @@ -167,5 +172,11 @@ pub enum UserSelect { All, /// Like `text`, except that it won't get overridden by ancestors having /// `all`. + /// + /// FIXME(emilio): This only has one use in contenteditable.css, can we find + /// a better way to do this? + /// + /// See bug 1181130. + #[parse(condition = "in_ua_sheet")] MozText, }