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

Unified Diff: third_party/WebKit/Source/core/dom/StyleEngine.cpp

Issue 2455943003: Backend for css rule tracking (Closed)
Patch Set: Backend for css rule tracking Created 4 years, 1 month 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: third_party/WebKit/Source/core/dom/StyleEngine.cpp
diff --git a/third_party/WebKit/Source/core/dom/StyleEngine.cpp b/third_party/WebKit/Source/core/dom/StyleEngine.cpp
index 2c1ab5550ef6c6a909628ea901a1c6758c288845..cff169cdff6b6a4708ccdb467aea52c5f3a4aae6 100644
--- a/third_party/WebKit/Source/core/dom/StyleEngine.cpp
+++ b/third_party/WebKit/Source/core/dom/StyleEngine.cpp
@@ -37,6 +37,7 @@
#include "core/css/StyleSheetContents.h"
#include "core/css/invalidation/InvalidationSet.h"
#include "core/css/resolver/ScopedStyleResolver.h"
+#include "core/css/resolver/StyleRuleUsageTracker.h"
#include "core/css/resolver/ViewportStyleResolver.h"
#include "core/dom/DocumentStyleSheetCollector.h"
#include "core/dom/Element.h"
@@ -432,9 +433,18 @@ void StyleEngine::appendActiveAuthorStyleSheets() {
m_resolver->finishAppendAuthorStyleSheets();
}
+void StyleEngine::setRuleUsageTracker(StyleRuleUsageTracker* tracker) {
+ m_tracker = tracker;
+
+ if (m_tracker && m_resolver)
+ m_resolver->setRuleUsageTracker(m_tracker);
pfeldman 2016/10/31 21:03:35 m_resolver->setRuleUsageTracker(true);
caseq 2016/10/31 21:06:46 I think what you mean here is if (m_resolver) m_
+}
+
void StyleEngine::createResolver() {
m_resolver = StyleResolver::create(*m_document);
+ m_resolver->setRuleUsageTracker(m_tracker);
pfeldman 2016/10/31 21:03:35 if (m_tracker) m_resolved->setRuleUsageTracker(t
caseq 2016/10/31 21:06:46 This is fine, we're just creating the new resolver
+
// A scoped style resolver for document will be created during
// appendActiveAuthorStyleSheets if needed.
appendActiveAuthorStyleSheets();
@@ -1014,6 +1024,7 @@ DEFINE_TRACE(StyleEngine) {
visitor->trace(m_fontSelector);
visitor->trace(m_textToSheetCache);
visitor->trace(m_sheetToTextCache);
+ visitor->trace(m_tracker);
CSSFontSelectorClient::trace(visitor);
}

Powered by Google App Engine
This is Rietveld 408576698