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

Side by Side Diff: third_party/WebKit/Source/core/dom/TreeScopeStyleSheetCollection.cpp

Issue 2390543002: Reflow comments in core/dom/. (Closed)
Patch Set: Reformat comments in core/dom/. Created 4 years, 2 months 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
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
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 7 * rights reserved.
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved.
9 * (http://www.torchmobile.com/)
8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 10 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
9 * Copyright (C) 2013 Google Inc. All rights reserved. 11 * Copyright (C) 2013 Google Inc. All rights reserved.
10 * 12 *
11 * This library is free software; you can redistribute it and/or 13 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Library General Public 14 * modify it under the terms of the GNU Library General Public
13 * License as published by the Free Software Foundation; either 15 * License as published by the Free Software Foundation; either
14 * version 2 of the License, or (at your option) any later version. 16 * version 2 of the License, or (at your option) any later version.
15 * 17 *
16 * This library is distributed in the hope that it will be useful, 18 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 return Reconstruct; 71 return Reconstruct;
70 } 72 }
71 if (++newIndex == newStyleSheetCount) 73 if (++newIndex == newStyleSheetCount)
72 return Reconstruct; 74 return Reconstruct;
73 } 75 }
74 bool hasInsertions = !addedSheets.isEmpty(); 76 bool hasInsertions = !addedSheets.isEmpty();
75 while (newIndex < newStyleSheetCount) { 77 while (newIndex < newStyleSheetCount) {
76 addedSheets.append(newStylesheets[newIndex]->contents()); 78 addedSheets.append(newStylesheets[newIndex]->contents());
77 ++newIndex; 79 ++newIndex;
78 } 80 }
79 // If all new sheets were added at the end of the list we can just add them to existing StyleResolver. 81 // If all new sheets were added at the end of the list we can just add them to
80 // If there were insertions we need to re-add all the stylesheets so rules are ordered correctly. 82 // existing StyleResolver. If there were insertions we need to re-add all the
83 // stylesheets so rules are ordered correctly.
81 return hasInsertions ? Reset : Additive; 84 return hasInsertions ? Reset : Additive;
82 } 85 }
83 86
84 bool TreeScopeStyleSheetCollection::activeLoadingStyleSheetLoaded( 87 bool TreeScopeStyleSheetCollection::activeLoadingStyleSheetLoaded(
85 const HeapVector<Member<CSSStyleSheet>>& newStyleSheets) { 88 const HeapVector<Member<CSSStyleSheet>>& newStyleSheets) {
86 // StyleSheets of <style> elements that @import stylesheets are active but loa ding. We need to trigger a full recalc when such loads are done. 89 // StyleSheets of <style> elements that @import stylesheets are active but
90 // loading. We need to trigger a full recalc when such loads are done.
87 bool hasActiveLoadingStylesheet = false; 91 bool hasActiveLoadingStylesheet = false;
88 unsigned newStylesheetCount = newStyleSheets.size(); 92 unsigned newStylesheetCount = newStyleSheets.size();
89 for (unsigned i = 0; i < newStylesheetCount; ++i) { 93 for (unsigned i = 0; i < newStylesheetCount; ++i) {
90 if (newStyleSheets[i]->isLoading()) 94 if (newStyleSheets[i]->isLoading())
91 hasActiveLoadingStylesheet = true; 95 hasActiveLoadingStylesheet = true;
92 } 96 }
93 if (m_hadActiveLoadingStylesheet && !hasActiveLoadingStylesheet) { 97 if (m_hadActiveLoadingStylesheet && !hasActiveLoadingStylesheet) {
94 m_hadActiveLoadingStylesheet = false; 98 m_hadActiveLoadingStylesheet = false;
95 return true; 99 return true;
96 } 100 }
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 change.styleResolverUpdateType = updateType; 140 change.styleResolverUpdateType = updateType;
137 } else { 141 } else {
138 change.styleResolverUpdateType = Reset; 142 change.styleResolverUpdateType = Reset;
139 // If @font-face is removed, needs full style recalc. 143 // If @font-face is removed, needs full style recalc.
140 if (findFontFaceRulesFromStyleSheetContents(addedSheets, 144 if (findFontFaceRulesFromStyleSheetContents(addedSheets,
141 change.fontFaceRulesToRemove)) 145 change.fontFaceRulesToRemove))
142 return; 146 return;
143 } 147 }
144 } 148 }
145 149
146 // FIXME: If styleResolverUpdateType is Reconstruct, we should return early he re since 150 // FIXME: If styleResolverUpdateType is Reconstruct, we should return early
147 // we need to recalc the whole document. It's wrong to use StyleSheetInvalidat ionAnalysis since 151 // here since we need to recalc the whole document. It's wrong to use
148 // it only looks at the addedSheets. 152 // StyleSheetInvalidationAnalysis since it only looks at the addedSheets.
149 153
150 // No point in doing the analysis work if we're just going to recalc the whole document anyways. 154 // No point in doing the analysis work if we're just going to recalc the whole
151 // This needs to be done after the compareStyleSheets calls above to ensure we don't throw away 155 // document anyways. This needs to be done after the compareStyleSheets calls
152 // the StyleResolver if we don't need to. 156 // above to ensure we don't throw away the StyleResolver if we don't need to.
153 if (document().hasPendingForcedStyleRecalc()) 157 if (document().hasPendingForcedStyleRecalc())
154 return; 158 return;
155 159
156 // If we are already parsing the body and so may have significant amount of el ements, put some effort into trying to avoid style recalcs. 160 // If we are already parsing the body and so may have significant amount of
161 // elements, put some effort into trying to avoid style recalcs.
157 if (!document().body() || document().hasNodesWithPlaceholderStyle()) 162 if (!document().body() || document().hasNodesWithPlaceholderStyle())
158 return; 163 return;
159 StyleSheetInvalidationAnalysis invalidationAnalysis(*m_treeScope, 164 StyleSheetInvalidationAnalysis invalidationAnalysis(*m_treeScope,
160 addedSheets); 165 addedSheets);
161 if (invalidationAnalysis.dirtiesAllStyle()) 166 if (invalidationAnalysis.dirtiesAllStyle())
162 return; 167 return;
163 invalidationAnalysis.invalidateStyle(); 168 invalidationAnalysis.invalidateStyle();
164 change.requiresFullStyleRecalc = false; 169 change.requiresFullStyleRecalc = false;
165 return; 170 return;
166 } 171 }
167 172
168 void TreeScopeStyleSheetCollection::clearMediaQueryRuleSetStyleSheets() { 173 void TreeScopeStyleSheetCollection::clearMediaQueryRuleSetStyleSheets() {
169 for (size_t i = 0; i < m_activeAuthorStyleSheets.size(); ++i) { 174 for (size_t i = 0; i < m_activeAuthorStyleSheets.size(); ++i) {
170 StyleSheetContents* contents = m_activeAuthorStyleSheets[i]->contents(); 175 StyleSheetContents* contents = m_activeAuthorStyleSheets[i]->contents();
171 if (contents->hasMediaQueries()) 176 if (contents->hasMediaQueries())
172 contents->clearRuleSet(); 177 contents->clearRuleSet();
173 } 178 }
174 } 179 }
175 180
176 DEFINE_TRACE(TreeScopeStyleSheetCollection) { 181 DEFINE_TRACE(TreeScopeStyleSheetCollection) {
177 visitor->trace(m_treeScope); 182 visitor->trace(m_treeScope);
178 visitor->trace(m_styleSheetCandidateNodes); 183 visitor->trace(m_styleSheetCandidateNodes);
179 StyleSheetCollection::trace(visitor); 184 StyleSheetCollection::trace(visitor);
180 } 185 }
181 186
182 } // namespace blink 187 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698