style: Fix relevant-link-visited logic in presence of nested links.

MozReview-Commit-ID: LIjpTAgrPBY
This commit is contained in:
Emilio Cobos Álvarez 2017-07-23 15:05:36 +02:00
parent aea24fa81e
commit 04e855c38d
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
3 changed files with 19 additions and 7 deletions

View file

@ -12,7 +12,7 @@ use dom::TElement;
use log::LogLevel::Trace;
use matching::{CascadeVisitedMode, MatchMethods};
use properties::{AnimationRules, CascadeFlags, ComputedValues};
use properties::{IS_ROOT_ELEMENT, IS_VISITED_LINK, PROHIBIT_DISPLAY_CONTENTS, SKIP_ROOT_AND_ITEM_BASED_DISPLAY_FIXUP};
use properties::{IS_LINK, IS_ROOT_ELEMENT, IS_VISITED_LINK, PROHIBIT_DISPLAY_CONTENTS, SKIP_ROOT_AND_ITEM_BASED_DISPLAY_FIXUP};
use properties::{VISITED_DEPENDENT_ONLY, cascade};
use rule_tree::StrongRuleNode;
use selector_parser::{PseudoElement, SelectorImpl};
@ -474,8 +474,11 @@ where
cascade_flags.insert(SKIP_ROOT_AND_ITEM_BASED_DISPLAY_FIXUP);
}
if pseudo.is_none() && self.element.is_visited_link() {
cascade_flags.insert(IS_VISITED_LINK);
if pseudo.is_none() && self.element.is_link() {
cascade_flags.insert(IS_LINK);
if self.element.is_visited_link() {
cascade_flags.insert(IS_VISITED_LINK);
}
}
if cascade_visited.visited_dependent_only() {