Remove XBL as a separate cascading level in Stylo.

In Gecko, we handle XBL rules like author rules everywhere, except that
XBL rules are added and sorted in an independent step, behave as if it
has a separate level.

It is not clear to me why Stylo chose to add a separate level for XBL
rules, but it doesn't seem that there is anything special to do with
XBL rules.

This bug happens because we don't handle XBL important rules which are
handled as part of author rules in Gecko due to lack of the additional
level there. We should just follow what Gecko does here and handle them
all the same.
This commit is contained in:
Xidorn Quan 2017-10-23 17:33:49 +11:00
parent a296e386af
commit 9c23594e74
2 changed files with 1 additions and 4 deletions

View file

@ -488,8 +488,6 @@ pub enum CascadeLevel {
PresHints, PresHints,
/// User normal rules. /// User normal rules.
UserNormal, UserNormal,
/// XBL <stylesheet> rules.
XBL,
/// Author normal rules. /// Author normal rules.
AuthorNormal, AuthorNormal,
/// Style attribute normal rules. /// Style attribute normal rules.
@ -1258,7 +1256,6 @@ impl StrongRuleNode {
} }
// Author rules: // Author rules:
CascadeLevel::PresHints | CascadeLevel::PresHints |
CascadeLevel::XBL |
CascadeLevel::AuthorNormal | CascadeLevel::AuthorNormal |
CascadeLevel::StyleAttributeNormal | CascadeLevel::StyleAttributeNormal |
CascadeLevel::SMILOverride | CascadeLevel::SMILOverride |

View file

@ -1309,7 +1309,7 @@ impl Stylist {
&mut matching_context, &mut matching_context,
stylist.quirks_mode, stylist.quirks_mode,
flags_setter, flags_setter,
CascadeLevel::XBL, CascadeLevel::AuthorNormal,
); );
} }
}); });