Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Unified Diff: Source/core/css/resolver/StyleResolver.h

Issue 418833002: Remove all members in ScopedStyleTree for preparing class removal (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: ifdef destructor Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/css/resolver/StyleResolver.h
diff --git a/Source/core/css/resolver/StyleResolver.h b/Source/core/css/resolver/StyleResolver.h
index 521943a4f1977e45b454d85d478d1aefd09655c9..480a0ce32320c2fe142bd06c7a258ca35b77d9f1 100644
--- a/Source/core/css/resolver/StyleResolver.h
+++ b/Source/core/css/resolver/StyleResolver.h
@@ -111,8 +111,6 @@ public:
// Using these during tree walk will allow style selector to optimize child and descendant selector lookups.
void pushParentElement(Element&);
void popParentElement(Element&);
- void pushParentShadowRoot(const ShadowRoot&);
- void popParentShadowRoot(const ShadowRoot&);
PassRefPtr<RenderStyle> styleForElement(Element*, RenderStyle* parentStyle = 0, StyleSharingBehavior = AllowStyleSharing,
RuleMatchingBehavior = MatchAllRules);
@@ -136,7 +134,7 @@ public:
// FIXME: It could be better to call appendAuthorStyleSheets() directly after we factor StyleResolver further.
// https://bugs.webkit.org/show_bug.cgi?id=108890
void appendAuthorStyleSheets(const WillBeHeapVector<RefPtrWillBeMember<CSSStyleSheet> >&);
- void resetAuthorStyle(const ContainerNode*);
+ void resetAuthorStyle(TreeScope&);
void finishAppendAuthorStyleSheets();
void processScopedRules(const RuleSet& authorRules, CSSStyleSheet*, ContainerNode& scope);
@@ -148,7 +146,7 @@ public:
SelectorFilter& selectorFilter() { return m_selectorFilter; }
- bool styleTreeHasOnlyScopedResolverForDocument() const { return m_styleTree.hasOnlyScopedResolverForDocument(); }
+ bool styleTreeHasOnlyScopedResolverForDocument() const { return m_scopedStyleResolvers.size() == 1; }
void styleTreeResolveScopedKeyframesRules(const Element* element, WillBeHeapVector<RawPtrWillBeMember<ScopedStyleResolver>, 8>& resolvers)
{
@@ -300,6 +298,8 @@ private:
WillBeHeapListHashSet<RawPtrWillBeMember<CSSStyleSheet>, 16> m_pendingStyleSheets;
ScopedStyleTree m_styleTree;
+ // FIXME: Probably this should move to StyleEngine eventually.
+ WillBeHeapHashSet<RawPtrWillBeMember<const ScopedStyleResolver> > m_scopedStyleResolvers;
// FIXME: The entire logic of collecting features on StyleResolver, as well as transferring them
// between various parts of machinery smells wrong. This needs to be better somehow.

Powered by Google App Engine
This is Rietveld 408576698