Changeset 216071 in webkit
- Timestamp:
- May 2, 2017 9:22:53 AM (7 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r216069 r216071 1 2017-05-02 Ryan Haddad <ryanhaddad@apple.com> 2 3 Unreviewed, rolling out r216069. 4 5 This change broke the build. 6 7 Reverted changeset: 8 9 "Document style resolvers should share user rulesets" 10 https://bugs.webkit.org/show_bug.cgi?id=171549 11 http://trac.webkit.org/changeset/216069 12 1 13 2017-05-02 Antti Koivisto <antti@apple.com> 2 14 -
trunk/Source/WebCore/css/DocumentRuleSets.cpp
r216069 r216071 38 38 namespace WebCore { 39 39 40 DocumentRuleSets::DocumentRuleSets(StyleResolver& styleResolver) 41 : m_styleResolver(styleResolver) 40 DocumentRuleSets::DocumentRuleSets() 42 41 { 43 42 m_authorStyle = std::make_unique<RuleSet>(); … … 47 46 DocumentRuleSets::~DocumentRuleSets() 48 47 { 49 }50 51 RuleSet* DocumentRuleSets::userStyle() const52 {53 if (m_usesSharedUserStyle)54 return m_styleResolver.document().styleScope().resolver().ruleSets().userStyle();55 return m_userStyle.get();56 48 } 57 49 … … 121 113 if (m_authorStyle) 122 114 m_features.add(m_authorStyle->features()); 123 if ( auto* userStyle = this->userStyle())124 m_features.add( userStyle->features());115 if (m_userStyle) 116 m_features.add(m_userStyle->features()); 125 117 126 118 m_siblingRuleSet = makeRuleSet(m_features.siblingRules); -
trunk/Source/WebCore/css/DocumentRuleSets.h
r216069 r216071 41 41 class DocumentRuleSets { 42 42 public: 43 DocumentRuleSets( StyleResolver&);43 DocumentRuleSets(); 44 44 ~DocumentRuleSets(); 45 45 46 46 bool isAuthorStyleDefined() const { return m_isAuthorStyleDefined; } 47 47 RuleSet& authorStyle() const { return *m_authorStyle.get(); } 48 RuleSet* userStyle() const ;48 RuleSet* userStyle() const { return m_userStyle.get(); } 49 49 const RuleFeatureSet& features() const; 50 50 RuleSet* sibling() const { return m_siblingRuleSet.get(); } … … 60 60 const AttributeRules* ancestorAttributeRulesForHTML(const AtomicString&) const; 61 61 62 void setUsesSharedUserStyle(bool b) { m_usesSharedUserStyle = true; }63 62 void initUserStyle(ExtensionStyleSheets&, const MediaQueryEvaluator&, StyleResolver&); 64 65 63 void resetAuthorStyle(); 66 64 void appendAuthorStyleSheets(const Vector<RefPtr<CSSStyleSheet>>&, MediaQueryEvaluator*, InspectorCSSOMWrappers&, StyleResolver*); … … 75 73 std::unique_ptr<RuleSet> m_authorStyle; 76 74 std::unique_ptr<RuleSet> m_userStyle; 77 bool m_usesSharedUserStyle { false };78 75 79 StyleResolver& m_styleResolver;80 76 mutable RuleFeatureSet m_features; 81 77 mutable unsigned m_defaultStyleVersionOnFeatureCollection { 0 }; -
trunk/Source/WebCore/css/StyleResolver.cpp
r216069 r216071 229 229 230 230 StyleResolver::StyleResolver(Document& document) 231 : m_ruleSets(*this) 232 , m_matchedPropertiesCacheAdditionsSinceLastSweep(0) 231 : m_matchedPropertiesCacheAdditionsSinceLastSweep(0) 233 232 , m_matchedPropertiesCacheSweepTimer(*this, &StyleResolver::sweepMatchedPropertiesCache) 234 233 , m_document(document) … … 269 268 m_ruleSets.resetAuthorStyle(); 270 269 270 m_ruleSets.initUserStyle(m_document.extensionStyleSheets(), m_mediaQueryEvaluator, *this); 271 271 272 #if ENABLE(SVG_FONTS) 272 273 if (m_document.svgExtensions()) { … … 276 277 } 277 278 #endif 278 }279 280 void StyleResolver::initializeUserStyle()281 {282 m_ruleSets.initUserStyle(m_document.extensionStyleSheets(), m_mediaQueryEvaluator, *this);283 279 } 284 280 -
trunk/Source/WebCore/css/StyleResolver.h
r216069 r216071 153 153 const Settings& settings() const { return m_document.settings(); } 154 154 155 void initializeUserStyle();156 155 void appendAuthorStyleSheets(const Vector<RefPtr<CSSStyleSheet>>&); 157 156 -
trunk/Source/WebCore/style/StyleScope.cpp
r216069 r216071 97 97 SetForScope<bool> isUpdatingStyleResolver { m_isUpdatingStyleResolver, true }; 98 98 m_resolver = std::make_unique<StyleResolver>(m_document); 99 100 if (!m_shadowRoot)101 m_resolver->initializeUserStyle();102 else if (m_shadowRoot->mode() != ShadowRootMode::UserAgent)103 m_resolver->ruleSets().setUsesSharedUserStyle();104 105 99 m_resolver->appendAuthorStyleSheets(m_activeStyleSheets); 106 100 }
Note: See TracChangeset
for help on using the changeset viewer.