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

Side by Side Diff: third_party/WebKit/Source/core/dom/StyleEngine.h

Issue 1853713002: Fixed ::slotted performance in pure v1 shadow documents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Missing Member<> in HeapVector template Created 4 years, 8 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 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 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 void pseudoStateChangedForElement(CSSSelector::PseudoType, Element&); 179 void pseudoStateChangedForElement(CSSSelector::PseudoType, Element&);
180 180
181 unsigned styleForElementCount() const { return m_styleForElementCount; } 181 unsigned styleForElementCount() const { return m_styleForElementCount; }
182 void incStyleForElementCount() { m_styleForElementCount++; } 182 void incStyleForElementCount() { m_styleForElementCount++; }
183 183
184 StyleResolverStats* stats() { return m_styleResolverStats.get(); } 184 StyleResolverStats* stats() { return m_styleResolverStats.get(); }
185 void setStatsEnabled(bool); 185 void setStatsEnabled(bool);
186 186
187 ShadowCascadeOrder shadowCascadeOrder() const { return m_shadowCascadeOrder; } 187 ShadowCascadeOrder shadowCascadeOrder() const { return m_shadowCascadeOrder; }
188 void setShadowCascadeOrder(ShadowCascadeOrder); 188 void setShadowCascadeOrder(ShadowCascadeOrder);
189 bool mayContainV0Shadow() const { return m_mayContainV0Shadow; }
189 190
190 DECLARE_VIRTUAL_TRACE(); 191 DECLARE_VIRTUAL_TRACE();
191 192
192 private: 193 private:
193 // CSSFontSelectorClient implementation. 194 // CSSFontSelectorClient implementation.
194 void fontsNeedUpdate(CSSFontSelector*) override; 195 void fontsNeedUpdate(CSSFontSelector*) override;
195 196
196 private: 197 private:
197 StyleEngine(Document&); 198 StyleEngine(Document&);
198 199
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 String m_selectedStylesheetSetName; 255 String m_selectedStylesheetSetName;
255 256
256 bool m_usesSiblingRules = false; 257 bool m_usesSiblingRules = false;
257 bool m_usesFirstLineRules = false; 258 bool m_usesFirstLineRules = false;
258 bool m_usesWindowInactiveSelector = false; 259 bool m_usesWindowInactiveSelector = false;
259 bool m_usesRemUnits = false; 260 bool m_usesRemUnits = false;
260 unsigned m_maxDirectAdjacentSelectors = 0; 261 unsigned m_maxDirectAdjacentSelectors = 0;
261 262
262 bool m_ignorePendingStylesheets = false; 263 bool m_ignorePendingStylesheets = false;
263 bool m_didCalculateResolver = false; 264 bool m_didCalculateResolver = false;
265 bool m_mayContainV0Shadow = false;
264 266
265 ShadowCascadeOrder m_shadowCascadeOrder = ShadowCascadeNone; 267 ShadowCascadeOrder m_shadowCascadeOrder = ShadowCascadeNone;
266 268
267 OwnPtrWillBeMember<StyleResolver> m_resolver; 269 OwnPtrWillBeMember<StyleResolver> m_resolver;
268 StyleInvalidator m_styleInvalidator; 270 StyleInvalidator m_styleInvalidator;
269 271
270 RefPtrWillBeMember<CSSFontSelector> m_fontSelector; 272 RefPtrWillBeMember<CSSFontSelector> m_fontSelector;
271 273
272 WillBeHeapHashMap<AtomicString, RawPtrWillBeMember<StyleSheetContents>> m_te xtToSheetCache; 274 WillBeHeapHashMap<AtomicString, RawPtrWillBeMember<StyleSheetContents>> m_te xtToSheetCache;
273 WillBeHeapHashMap<RawPtrWillBeMember<StyleSheetContents>, AtomicString> m_sh eetToTextCache; 275 WillBeHeapHashMap<RawPtrWillBeMember<StyleSheetContents>, AtomicString> m_sh eetToTextCache;
274 276
275 OwnPtr<StyleResolverStats> m_styleResolverStats; 277 OwnPtr<StyleResolverStats> m_styleResolverStats;
276 unsigned m_styleForElementCount = 0; 278 unsigned m_styleForElementCount = 0;
277 279
278 friend class StyleEngineTest; 280 friend class StyleEngineTest;
279 }; 281 };
280 282
281 } // namespace blink 283 } // namespace blink
282 284
283 #endif 285 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698