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

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

Issue 42543007: StyleResolver should update RuleSets lazily. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 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 | 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 441 matching lines...) Expand 10 before | Expand all | Expand 10 after
452 452
453 StyleResolver* styleResolverIfExists() const { return m_styleResolver.get(); } 453 StyleResolver* styleResolverIfExists() const { return m_styleResolver.get(); }
454 454
455 bool isViewSource() const { return m_isViewSource; } 455 bool isViewSource() const { return m_isViewSource; }
456 void setIsViewSource(bool); 456 void setIsViewSource(bool);
457 457
458 bool sawElementsInKnownNamespaces() const { return m_sawElementsInKnownNames paces; } 458 bool sawElementsInKnownNamespaces() const { return m_sawElementsInKnownNames paces; }
459 459
460 StyleResolver* styleResolver() 460 StyleResolver* styleResolver()
461 { 461 {
462 if (!m_styleResolver) 462 if (!m_styleResolver) {
463 createStyleResolver(); 463 createStyleResolver();
464 } else {
465 appendPendingAuthorStyleSheets();
esprehn 2013/10/25 02:37:58 You can't put a function call in here. This is rea
tasak 2013/10/25 10:10:10 I see. I moved appendPendingAuthorStyleSheets to c
466 }
464 return m_styleResolver.get(); 467 return m_styleResolver.get();
465 } 468 }
466 469
467 void notifyRemovePendingSheetIfNeeded(); 470 void notifyRemovePendingSheetIfNeeded();
468 471
469 bool haveStylesheetsLoaded() const; 472 bool haveStylesheetsLoaded() const;
470 bool haveStylesheetsAndImportsLoaded() const { return haveImportsLoaded() && haveStylesheetsLoaded(); } 473 bool haveStylesheetsAndImportsLoaded() const { return haveImportsLoaded() && haveStylesheetsLoaded(); }
471 474
472 // This is a DOM function. 475 // This is a DOM function.
473 StyleSheetList* styleSheets(); 476 StyleSheetList* styleSheets();
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after
1118 virtual void addMessage(MessageSource, MessageLevel, const String& message, const String& sourceURL, unsigned lineNumber, ScriptState*); 1121 virtual void addMessage(MessageSource, MessageLevel, const String& message, const String& sourceURL, unsigned lineNumber, ScriptState*);
1119 void internalAddMessage(MessageSource, MessageLevel, const String& message, const String& sourceURL, unsigned lineNumber, PassRefPtr<ScriptCallStack>, Scrip tState*); 1122 void internalAddMessage(MessageSource, MessageLevel, const String& message, const String& sourceURL, unsigned lineNumber, PassRefPtr<ScriptCallStack>, Scrip tState*);
1120 1123
1121 virtual double timerAlignmentInterval() const; 1124 virtual double timerAlignmentInterval() const;
1122 1125
1123 void updateTitle(const String&); 1126 void updateTitle(const String&);
1124 void updateFocusAppearanceTimerFired(Timer<Document>*); 1127 void updateFocusAppearanceTimerFired(Timer<Document>*);
1125 void updateBaseURL(); 1128 void updateBaseURL();
1126 1129
1127 void createStyleResolver(); 1130 void createStyleResolver();
1131 void appendPendingAuthorStyleSheets();
1128 1132
1129 void executeScriptsWaitingForResourcesIfNeeded(); 1133 void executeScriptsWaitingForResourcesIfNeeded();
1130 1134
1131 void seamlessParentUpdatedStylesheets(); 1135 void seamlessParentUpdatedStylesheets();
1132 1136
1133 void recalcStyleForLayoutIgnoringPendingStylesheets(); 1137 void recalcStyleForLayoutIgnoringPendingStylesheets();
1134 1138
1135 PassRefPtr<NodeList> handleZeroPadding(const HitTestRequest&, HitTestResult& ) const; 1139 PassRefPtr<NodeList> handleZeroPadding(const HitTestRequest&, HitTestResult& ) const;
1136 1140
1137 void loadEventDelayTimerFired(Timer<Document>*); 1141 void loadEventDelayTimerFired(Timer<Document>*);
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
1447 inline bool Node::isDocumentNode() const 1451 inline bool Node::isDocumentNode() const
1448 { 1452 {
1449 return this == documentInternal(); 1453 return this == documentInternal();
1450 } 1454 }
1451 1455
1452 Node* eventTargetNodeForDocument(Document*); 1456 Node* eventTargetNodeForDocument(Document*);
1453 1457
1454 } // namespace WebCore 1458 } // namespace WebCore
1455 1459
1456 #endif // Document_h 1460 #endif // Document_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698