diff options
-rw-r--r-- | components/layout_thread/dom_wrapper.rs | 3 | ||||
-rw-r--r-- | components/script/dom/element.rs | 4 | ||||
-rw-r--r-- | components/style/servo/selector_parser.rs | 32 | ||||
-rw-r--r-- | resources/presentational-hints.css | 12 |
4 files changed, 10 insertions, 41 deletions
diff --git a/components/layout_thread/dom_wrapper.rs b/components/layout_thread/dom_wrapper.rs index 3a7f088a246..14c09923aec 100644 --- a/components/layout_thread/dom_wrapper.rs +++ b/components/layout_thread/dom_wrapper.rs @@ -817,9 +817,6 @@ impl<'le> ::selectors::Element for ServoLayoutElement<'le> { _ => true, } }, - NonTSPseudoClass::ServoCaseSensitiveTypeAttr(ref expected_value) => self - .get_attr_enum(&ns!(), &local_name!("type")) - .map_or(false, |attr| attr == expected_value), NonTSPseudoClass::ReadOnly => !self .element .get_state_for_layout() diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index 6da5d92fdb1..c3d5fbb55d0 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -2889,10 +2889,6 @@ impl<'a> SelectorsElement for DomRoot<Element> { }, }, - NonTSPseudoClass::ServoCaseSensitiveTypeAttr(ref expected_value) => self - .get_attribute(&ns!(), &local_name!("type")) - .map_or(false, |attr| attr.value().eq(expected_value)), - // FIXME(heycam): This is wrong, since extended_filtering accepts // a string containing commas (separating each language tag in // a list) but the pseudo-class instead should be parsing and diff --git a/components/style/servo/selector_parser.rs b/components/style/servo/selector_parser.rs index 2c316b2deed..9d94c467b58 100644 --- a/components/style/servo/selector_parser.rs +++ b/components/style/servo/selector_parser.rs @@ -282,7 +282,6 @@ pub enum NonTSPseudoClass { ReadWrite, ReadOnly, ServoNonZeroBorder, - ServoCaseSensitiveTypeAttr(Atom), Target, Visited, } @@ -302,18 +301,10 @@ impl ToCss for NonTSPseudoClass { W: fmt::Write, { use self::NonTSPseudoClass::*; - match *self { - Lang(ref lang) => { - dest.write_str(":lang(")?; - serialize_identifier(lang, dest)?; - return dest.write_str(")"); - }, - ServoCaseSensitiveTypeAttr(ref value) => { - dest.write_str(":-servo-case-sensitive-type-attr(")?; - serialize_identifier(value, dest)?; - return dest.write_str(")"); - }, - _ => {}, + if let Lang(ref lang) = *self { + dest.write_str(":lang(")?; + serialize_identifier(lang, dest)?; + return dest.write_str(")"); } dest.write_str(match *self { @@ -333,7 +324,7 @@ impl ToCss for NonTSPseudoClass { ServoNonZeroBorder => ":-servo-nonzero-border", Target => ":target", Visited => ":visited", - Lang(_) | ServoCaseSensitiveTypeAttr(_) => unreachable!(), + Lang(_) => unreachable!(), }) } } @@ -367,12 +358,7 @@ impl NonTSPseudoClass { PlaceholderShown => ElementState::IN_PLACEHOLDER_SHOWN_STATE, Target => ElementState::IN_TARGET_STATE, - AnyLink | - Lang(_) | - Link | - Visited | - ServoNonZeroBorder | - ServoCaseSensitiveTypeAttr(_) => ElementState::empty(), + AnyLink | Lang(_) | Link | Visited | ServoNonZeroBorder => ElementState::empty(), } } @@ -464,12 +450,6 @@ impl<'a, 'i> ::selectors::Parser<'i> for SelectorParser<'a> { "lang" => { Lang(parser.expect_ident_or_string()?.as_ref().into()) } - "-servo-case-sensitive-type-attr" => { - if !self.in_user_agent_stylesheet() { - return Err(parser.new_custom_error(SelectorParseErrorKind::UnexpectedIdent(name.clone()))); - } - ServoCaseSensitiveTypeAttr(Atom::from(parser.expect_ident()?.as_ref())) - } _ => return Err(parser.new_custom_error(SelectorParseErrorKind::UnexpectedIdent(name.clone()))) }; diff --git a/resources/presentational-hints.css b/resources/presentational-hints.css index 3c32bba4bcd..547bb42f96f 100644 --- a/resources/presentational-hints.css +++ b/resources/presentational-hints.css @@ -19,14 +19,10 @@ br[clear=all i], br[clear=both i] { clear: both; } ol[type="1"], li[type="1"] { list-style-type: decimal; } -ol:-servo-case-sensitive-type-attr(a), -li:-servo-case-sensitive-type-attr(a) { list-style-type: lower-alpha; } -ol:-servo-case-sensitive-type-attr(A), -li:-servo-case-sensitive-type-attr(A) { list-style-type: upper-alpha; } -ol:-servo-case-sensitive-type-attr(i), -li:-servo-case-sensitive-type-attr(i) { list-style-type: lower-roman; } -ol:-servo-case-sensitive-type-attr(I), -li:-servo-case-sensitive-type-attr(I) { list-style-type: upper-roman; } +ol[type=a s], li[type=a s] { list-style-type: lower-alpha; } +ol[type=A s], li[type=A s] { list-style-type: upper-alpha; } +ol[type=i s], li[type=i s] { list-style-type: lower-roman; } +ol[type=I s], li[type=I s] { list-style-type: upper-roman; } ul[type=none i], li[type=none i] { list-style-type: none; } ul[type=disc i], li[type=disc i] { list-style-type: disc; } ul[type=circle i], li[type=circle i] { list-style-type: circle; } |