Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge r228729 - Use selector filter when invalidating descendants
https://bugs.webkit.org/show_bug.cgi?id=182839 <rdar://problem/37581072> Reviewed by Zalan Bujtas. We can make descendant invalidation faster by enabling filtering. * css/SelectorFilter.cpp: (WebCore::SelectorFilter::initializeParentStack): Traverse and reverse the ancestor chain, and push it. (WebCore::SelectorFilter::pushParent): (WebCore::SelectorFilter::pushParentInitializingIfNeeded): Add a version of pushParent that can initialize the stack. (WebCore::SelectorFilter::popParent): (WebCore::SelectorFilter::popParentsUntil): Pop until a given parent element. (WebCore::SelectorFilter::pushParentStackFrame): Deleted. (WebCore::SelectorFilter::popParentStackFrame): Deleted. These were the same as push/popParent. * css/SelectorFilter.h: (WebCore::SelectorFilter::popParent): Deleted. * style/StyleInvalidator.cpp: (WebCore::Style::Invalidator::invalidateStyleForDescendants): Use pushParentInitializingIfNeeded. (WebCore::Style::Invalidator::invalidateStyleWithMatchElement): Use selector filter when doing descendant tree invalidation. Make sure to pop it until the parent when reusing.
- Loading branch information
1 parent
2084e19
commit b5261c1
Showing
4 changed files
with
83 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters