| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) |
| 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) | 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) |
| 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. |
| 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> | 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> |
| 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> | 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> |
| 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
| 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. | 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. |
| 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 #include "sky/engine/core/css/ElementRuleCollector.h" | 48 #include "sky/engine/core/css/ElementRuleCollector.h" |
| 49 #include "sky/engine/core/css/FontFace.h" | 49 #include "sky/engine/core/css/FontFace.h" |
| 50 #include "sky/engine/core/css/MediaQueryEvaluator.h" | 50 #include "sky/engine/core/css/MediaQueryEvaluator.h" |
| 51 #include "sky/engine/core/css/RuleSet.h" | 51 #include "sky/engine/core/css/RuleSet.h" |
| 52 #include "sky/engine/core/css/StyleKeyframe.h" | 52 #include "sky/engine/core/css/StyleKeyframe.h" |
| 53 #include "sky/engine/core/css/StylePropertySet.h" | 53 #include "sky/engine/core/css/StylePropertySet.h" |
| 54 #include "sky/engine/core/css/StyleSheetContents.h" | 54 #include "sky/engine/core/css/StyleSheetContents.h" |
| 55 #include "sky/engine/core/css/parser/BisonCSSParser.h" | 55 #include "sky/engine/core/css/parser/BisonCSSParser.h" |
| 56 #include "sky/engine/core/css/resolver/AnimatedStyleBuilder.h" | 56 #include "sky/engine/core/css/resolver/AnimatedStyleBuilder.h" |
| 57 #include "sky/engine/core/css/resolver/MatchResult.h" | 57 #include "sky/engine/core/css/resolver/MatchResult.h" |
| 58 #include "sky/engine/core/css/resolver/MediaQueryResult.h" | |
| 59 #include "sky/engine/core/css/resolver/SharedStyleFinder.h" | 58 #include "sky/engine/core/css/resolver/SharedStyleFinder.h" |
| 60 #include "sky/engine/core/css/resolver/StyleAdjuster.h" | 59 #include "sky/engine/core/css/resolver/StyleAdjuster.h" |
| 61 #include "sky/engine/core/css/resolver/StyleBuilder.h" | 60 #include "sky/engine/core/css/resolver/StyleBuilder.h" |
| 62 #include "sky/engine/core/css/resolver/StyleResolverState.h" | 61 #include "sky/engine/core/css/resolver/StyleResolverState.h" |
| 63 #include "sky/engine/core/css/resolver/StyleResolverStats.h" | 62 #include "sky/engine/core/css/resolver/StyleResolverStats.h" |
| 64 #include "sky/engine/core/dom/NodeRenderStyle.h" | 63 #include "sky/engine/core/dom/NodeRenderStyle.h" |
| 65 #include "sky/engine/core/dom/StyleEngine.h" | 64 #include "sky/engine/core/dom/StyleEngine.h" |
| 66 #include "sky/engine/core/dom/Text.h" | 65 #include "sky/engine/core/dom/Text.h" |
| 67 #include "sky/engine/core/dom/shadow/ElementShadow.h" | 66 #include "sky/engine/core/dom/shadow/ElementShadow.h" |
| 68 #include "sky/engine/core/dom/shadow/ShadowRoot.h" | 67 #include "sky/engine/core/dom/shadow/ShadowRoot.h" |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 styleSheet->parseString(cssText); | 110 styleSheet->parseString(cssText); |
| 112 | 111 |
| 113 ruleSet = RuleSet::create(); | 112 ruleSet = RuleSet::create(); |
| 114 ruleSet->addRulesFromSheet(styleSheet.get()); | 113 ruleSet->addRulesFromSheet(styleSheet.get()); |
| 115 | 114 |
| 116 return *ruleSet; | 115 return *ruleSet; |
| 117 } | 116 } |
| 118 | 117 |
| 119 StyleResolver::StyleResolver(Document& document) | 118 StyleResolver::StyleResolver(Document& document) |
| 120 : m_document(document) | 119 : m_document(document) |
| 121 , m_printMediaType(false) | |
| 122 , m_styleResourceLoader(document.fetcher()) | 120 , m_styleResourceLoader(document.fetcher()) |
| 123 , m_styleResolverStatsSequence(0) | 121 , m_styleResolverStatsSequence(0) |
| 124 , m_accessCount(0) | 122 , m_accessCount(0) |
| 125 { | 123 { |
| 126 FrameView* view = document.view(); | |
| 127 if (view) { | |
| 128 m_medium = adoptPtr(new MediaQueryEvaluator(&view->frame())); | |
| 129 m_printMediaType = equalIgnoringCase(view->mediaType(), MediaTypeNames::
print); | |
| 130 } else { | |
| 131 m_medium = adoptPtr(new MediaQueryEvaluator("all")); | |
| 132 } | |
| 133 } | 124 } |
| 134 | 125 |
| 135 void StyleResolver::addToStyleSharingList(Element& element) | 126 void StyleResolver::addToStyleSharingList(Element& element) |
| 136 { | 127 { |
| 137 // Never add elements to the style sharing list if we're not in a recalcStyl
e, | 128 // Never add elements to the style sharing list if we're not in a recalcStyl
e, |
| 138 // otherwise we could leave stale pointers in there. | 129 // otherwise we could leave stale pointers in there. |
| 139 if (!document().inStyleRecalc()) | 130 if (!document().inStyleRecalc()) |
| 140 return; | 131 return; |
| 141 ASSERT(element.supportsStyleSharing()); | 132 ASSERT(element.supportsStyleSharing()); |
| 142 INCREMENT_STYLE_STATS_COUNTER(*this, sharedStyleCandidates); | 133 INCREMENT_STYLE_STATS_COUNTER(*this, sharedStyleCandidates); |
| (...skipping 554 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 697 updateFont(state); | 688 updateFont(state); |
| 698 break; | 689 break; |
| 699 default: | 690 default: |
| 700 break; | 691 break; |
| 701 } | 692 } |
| 702 StyleBuilder::applyProperty(properties[i].property, state, propertie
s[i].value); | 693 StyleBuilder::applyProperty(properties[i].property, state, propertie
s[i].value); |
| 703 } | 694 } |
| 704 } | 695 } |
| 705 } | 696 } |
| 706 | 697 |
| 707 void StyleResolver::resetMediaQueryAffectedByViewportChange() | |
| 708 { | |
| 709 m_viewportDependentMediaQueryResults.clear(); | |
| 710 } | |
| 711 | |
| 712 void StyleResolver::addMediaQueryAffectedByViewportChange(const MediaQueryResult
List& list) | |
| 713 { | |
| 714 m_viewportDependentMediaQueryResults.appendVector(list); | |
| 715 } | |
| 716 | |
| 717 bool StyleResolver::mediaQueryAffectedByViewportChange() const | |
| 718 { | |
| 719 for (unsigned i = 0; i < m_viewportDependentMediaQueryResults.size(); ++i) { | |
| 720 if (m_medium->eval(m_viewportDependentMediaQueryResults[i]->expression()
) != m_viewportDependentMediaQueryResults[i]->result()) | |
| 721 return true; | |
| 722 } | |
| 723 return false; | |
| 724 } | |
| 725 | |
| 726 } // namespace blink | 698 } // namespace blink |
| OLD | NEW |