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

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

Issue 2557533005: Collect active stylesheets and and apply asynchronously. (Closed)
Patch Set: Rebased. Created 4 years 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/Document.cpp
diff --git a/third_party/WebKit/Source/core/dom/Document.cpp b/third_party/WebKit/Source/core/dom/Document.cpp
index a8551c088d591a4b9c6e1a032ff699b959a36993..ada10d8cd839af05103b6d214ea3b6045d82de1a 100644
--- a/third_party/WebKit/Source/core/dom/Document.cpp
+++ b/third_party/WebKit/Source/core/dom/Document.cpp
@@ -570,8 +570,11 @@ MediaQueryMatcher& Document::mediaQueryMatcher() {
}
void Document::mediaQueryAffectingValueChanged() {
- m_evaluateMediaQueriesOnStyleRecalc = true;
styleEngine().mediaQueryAffectingValueChanged();
+ if (needsLayoutTreeUpdate())
+ m_evaluateMediaQueriesOnStyleRecalc = true;
+ else
+ evaluateMediaQueryList();
InspectorInstrumentation::mediaQueryResultChanged(this);
}
@@ -2227,8 +2230,9 @@ void Document::updateStyleAndLayoutTreeIgnorePendingStylesheets() {
if (bodyElement && !bodyElement->layoutObject() &&
m_pendingSheetLayout == NoLayoutWithPendingSheets) {
m_pendingSheetLayout = DidLayoutWithPendingSheets;
- styleEngine().resolverChanged(FullStyleUpdate);
- } else if (m_hasNodesWithPlaceholderStyle) {
+ styleEngine().markAllTreeScopesDirty();
+ }
+ if (m_hasNodesWithPlaceholderStyle) {
// If new nodes have been added or style recalc has been done with style
// sheets still pending, some nodes may not have had their real style
// calculated yet. Normally this gets cleaned when style sheets arrive

Powered by Google App Engine
This is Rietveld 408576698