Chromium Code Reviews| Index: Source/core/css/resolver/ViewportStyleResolver.cpp |
| diff --git a/Source/core/css/resolver/ViewportStyleResolver.cpp b/Source/core/css/resolver/ViewportStyleResolver.cpp |
| index 7c957ea3d5f14e16d2fca85959c84dabd21a35e4..7ab40abd6cb4bdb80c63dfdd5d21689d978e1f50 100644 |
| --- a/Source/core/css/resolver/ViewportStyleResolver.cpp |
| +++ b/Source/core/css/resolver/ViewportStyleResolver.cpp |
| @@ -31,14 +31,18 @@ |
| #include "core/css/resolver/ViewportStyleResolver.h" |
| #include "core/CSSValueKeywords.h" |
| +#include "core/css/CSSDefaultStyleSheets.h" |
| #include "core/css/CSSPrimitiveValueMappings.h" |
| #include "core/css/CSSToLengthConversionData.h" |
| #include "core/css/StylePropertySet.h" |
| #include "core/css/StyleRule.h" |
| +#include "core/css/resolver/ScopedStyleResolver.h" |
| #include "core/dom/Document.h" |
| #include "core/dom/NodeLayoutStyle.h" |
| #include "core/dom/ViewportDescription.h" |
| #include "core/frame/FrameView.h" |
| +#include "core/frame/Settings.h" |
| +#include "core/inspector/InspectorInstrumentation.h" |
|
dgozman
2015/03/08 06:32:11
Not used anymore.
rune
2015/03/08 19:15:26
Done.
|
| namespace blink { |
| @@ -51,11 +55,33 @@ ViewportStyleResolver::ViewportStyleResolver(Document* document) |
| ASSERT(m_document); |
| } |
| +void ViewportStyleResolver::collectViewportRules() |
| +{ |
| + CSSDefaultStyleSheets& defaultStyleSheets = CSSDefaultStyleSheets::instance(); |
| + collectViewportRules(defaultStyleSheets.defaultStyle(), UserAgentOrigin); |
| + |
| + bool useMobileViewportStyle = m_document->settings() && m_document->settings()->useMobileViewportStyle(); |
| +#if OS(ANDROID) |
| + // FIXME: Remove when useMobileViewportStyle is set from chromium. |
| + useMobileViewportStyle = true; |
| +#endif |
| + if (useMobileViewportStyle) |
| + collectViewportRules(defaultStyleSheets.defaultMobileViewportStyle(), UserAgentOrigin); |
| + |
| + if (m_document->isMobileDocument()) |
| + collectViewportRules(defaultStyleSheets.defaultXHTMLMobileProfileStyle(), UserAgentOrigin); |
| + |
| + if (ScopedStyleResolver* scopedResolver = m_document->scopedStyleResolver()) |
| + scopedResolver->collectViewportRulesTo(this); |
| + |
| + resolve(); |
| +} |
| + |
| void ViewportStyleResolver::collectViewportRules(RuleSet* rules, Origin origin) |
| { |
| rules->compactRulesIfNeeded(); |
| - const WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport> >& viewportRules = rules->viewportRules(); |
| + const WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport>>& viewportRules = rules->viewportRules(); |
| for (size_t i = 0; i < viewportRules.size(); ++i) |
| addViewportRule(viewportRules[i], origin); |
| } |
| @@ -84,9 +110,6 @@ void ViewportStyleResolver::addViewportRule(StyleRuleViewport* viewportRule, Ori |
| void ViewportStyleResolver::resolve() |
| { |
| - if (!m_document) |
| - return; |
| - |
| if (!m_propertySet) { |
| m_document->setViewportDescription(ViewportDescription(ViewportDescription::UserAgentStyleSheet)); |
| return; |