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

Side by Side Diff: Source/core/dom/StyleSheetCollection.h

Issue 66483002: fontSelector should be reset when removing stylesheets which has @font-face rule. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Patch for landing Created 7 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
9 * Copyright (C) 2011 Google Inc. All rights reserved. 9 * Copyright (C) 2011 Google Inc. All rights reserved.
10 * 10 *
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 ListHashSet<Node*, 4>* scopingNodesRemoved() { return m_scopingNodesForStyle Scoped.scopingNodesRemoved(); } 68 ListHashSet<Node*, 4>* scopingNodesRemoved() { return m_scopingNodesForStyle Scoped.scopingNodesRemoved(); }
69 69
70 protected: 70 protected:
71 explicit StyleSheetCollection(TreeScope&); 71 explicit StyleSheetCollection(TreeScope&);
72 72
73 Document* document() { return m_treeScope.documentScope(); } 73 Document* document() { return m_treeScope.documentScope(); }
74 74
75 enum StyleResolverUpdateType { 75 enum StyleResolverUpdateType {
76 Reconstruct, 76 Reconstruct,
77 Reset, 77 Reset,
78 Additive 78 Additive,
79 ResetStyleResolverAndFontSelector
79 }; 80 };
80 void analyzeStyleSheetChange(StyleResolverUpdateMode, const Vector<RefPtr<CS SStyleSheet> >& oldStyleSheets, const Vector<RefPtr<CSSStyleSheet> >& newStylesh eets, StyleResolverUpdateType&, bool& requiresFullStyleRecalc); 81
82 struct StyleSheetChange {
83 StyleResolverUpdateType styleResolverUpdateType;
84 bool requiresFullStyleRecalc;
85
86 StyleSheetChange()
87 : styleResolverUpdateType(Reconstruct)
88 , requiresFullStyleRecalc(true) { }
89 };
90
91 void analyzeStyleSheetChange(StyleResolverUpdateMode, const Vector<RefPtr<CS SStyleSheet> >& oldStyleSheets, const Vector<RefPtr<CSSStyleSheet> >& newStylesh eets, StyleSheetChange&);
81 void resetAllRuleSetsInTreeScope(StyleResolver*); 92 void resetAllRuleSetsInTreeScope(StyleResolver*);
82 void updateUsesRemUnits(); 93 void updateUsesRemUnits();
83 94
84 private: 95 private:
85 StyleResolverUpdateType compareStyleSheets(const Vector<RefPtr<CSSStyleSheet > >& oldStyleSheets, const Vector<RefPtr<CSSStyleSheet> >& newStylesheets, Vecto r<StyleSheetContents*>& addedSheets); 96 StyleResolverUpdateType compareStyleSheets(const Vector<RefPtr<CSSStyleSheet > >& oldStyleSheets, const Vector<RefPtr<CSSStyleSheet> >& newStylesheets, Vecto r<StyleSheetContents*>& addedSheets);
86 bool activeLoadingStyleSheetLoaded(const Vector<RefPtr<CSSStyleSheet> >& new StyleSheets); 97 bool activeLoadingStyleSheetLoaded(const Vector<RefPtr<CSSStyleSheet> >& new StyleSheets);
87 98
88 protected: 99 protected:
89 Vector<RefPtr<StyleSheet> > m_styleSheetsForStyleSheetList; 100 Vector<RefPtr<StyleSheet> > m_styleSheetsForStyleSheetList;
90 Vector<RefPtr<CSSStyleSheet> > m_activeAuthorStyleSheets; 101 Vector<RefPtr<CSSStyleSheet> > m_activeAuthorStyleSheets;
91 102
92 TreeScope& m_treeScope; 103 TreeScope& m_treeScope;
93 bool m_hadActiveLoadingStylesheet; 104 bool m_hadActiveLoadingStylesheet;
94 bool m_usesRemUnits; 105 bool m_usesRemUnits;
95 106
96 DocumentOrderedList m_styleSheetCandidateNodes; 107 DocumentOrderedList m_styleSheetCandidateNodes;
97 StyleSheetScopingNodeList m_scopingNodesForStyleScoped; 108 StyleSheetScopingNodeList m_scopingNodesForStyleScoped;
98 }; 109 };
99 110
100 } 111 }
101 112
102 #endif 113 #endif
103 114
OLDNEW
« no previous file with comments | « Source/core/dom/ShadowTreeStyleSheetCollection.cpp ('k') | Source/core/dom/StyleSheetCollection.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698