mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
style: Don't allow to parse XUL tree pseudo-elements with a single colon.
Now that they're not exposed to the web we can remove this special case. Differential Revision: https://phabricator.services.mozilla.com/D28071
This commit is contained in:
parent
c0b17cc844
commit
52026f602b
2 changed files with 2 additions and 13 deletions
|
@ -191,12 +191,6 @@ pub trait Parser<'i> {
|
|||
type Impl: SelectorImpl;
|
||||
type Error: 'i + From<SelectorParseErrorKind<'i>>;
|
||||
|
||||
/// Whether the name is a pseudo-element that can be specified with
|
||||
/// the single colon syntax in addition to the double-colon syntax.
|
||||
fn pseudo_element_allows_single_colon(name: &str) -> bool {
|
||||
is_css2_pseudo_element(name)
|
||||
}
|
||||
|
||||
/// Whether to parse the `::slotted()` pseudo-element.
|
||||
fn parse_slotted(&self) -> bool {
|
||||
false
|
||||
|
@ -2038,7 +2032,7 @@ where
|
|||
/// Returns whether the name corresponds to a CSS2 pseudo-element that
|
||||
/// can be specified with the single colon syntax (in addition to the
|
||||
/// double-colon syntax, which can be used for all pseudo-elements).
|
||||
pub fn is_css2_pseudo_element(name: &str) -> bool {
|
||||
fn is_css2_pseudo_element(name: &str) -> bool {
|
||||
// ** Do not add to this list! **
|
||||
match_ignore_ascii_case! { name,
|
||||
"before" | "after" | "first-line" | "first-letter" => true,
|
||||
|
@ -2114,7 +2108,7 @@ where
|
|||
},
|
||||
};
|
||||
let is_pseudo_element =
|
||||
!is_single_colon || P::pseudo_element_allows_single_colon(&name);
|
||||
!is_single_colon || is_css2_pseudo_element(&name);
|
||||
if is_pseudo_element {
|
||||
if state.intersects(SelectorParsingState::AFTER_PSEUDO_ELEMENT) {
|
||||
return Err(input.new_custom_error(SelectorParseErrorKind::InvalidState));
|
||||
|
|
|
@ -351,11 +351,6 @@ impl<'a, 'i> ::selectors::Parser<'i> for SelectorParser<'a> {
|
|||
self.parse_slotted()
|
||||
}
|
||||
|
||||
fn pseudo_element_allows_single_colon(name: &str) -> bool {
|
||||
// FIXME: -moz-tree check should probably be ascii-case-insensitive.
|
||||
::selectors::parser::is_css2_pseudo_element(name) || name.starts_with("-moz-tree-")
|
||||
}
|
||||
|
||||
fn parse_non_ts_pseudo_class(
|
||||
&self,
|
||||
location: SourceLocation,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue