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 |