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

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

Issue 1119683003: Implement requestIdleCallback API (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Address Review Comments Created 5 years, 4 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 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 class HTMLCollection; 115 class HTMLCollection;
116 class HTMLDialogElement; 116 class HTMLDialogElement;
117 class HTMLElement; 117 class HTMLElement;
118 class HTMLFrameOwnerElement; 118 class HTMLFrameOwnerElement;
119 class HTMLHeadElement; 119 class HTMLHeadElement;
120 class HTMLImportLoader; 120 class HTMLImportLoader;
121 class HTMLImportsController; 121 class HTMLImportsController;
122 class HTMLLinkElement; 122 class HTMLLinkElement;
123 class HTMLScriptElement; 123 class HTMLScriptElement;
124 class HitTestRequest; 124 class HitTestRequest;
125 class IdleRequestCallback;
125 class InputDevice; 126 class InputDevice;
126 class LayoutPoint; 127 class LayoutPoint;
127 class LiveNodeListBase; 128 class LiveNodeListBase;
128 class Locale; 129 class Locale;
129 class LocalFrame; 130 class LocalFrame;
130 class Location; 131 class Location;
131 class MainThreadTaskRunner; 132 class MainThreadTaskRunner;
132 class MediaQueryListListener; 133 class MediaQueryListListener;
133 class MediaQueryMatcher; 134 class MediaQueryMatcher;
134 class NodeFilter; 135 class NodeFilter;
135 class NodeIterator; 136 class NodeIterator;
136 class NthIndexCache; 137 class NthIndexCache;
137 class Page; 138 class Page;
138 class PlatformMouseEvent; 139 class PlatformMouseEvent;
139 class ProcessingInstruction; 140 class ProcessingInstruction;
140 class QualifiedName; 141 class QualifiedName;
141 class Range; 142 class Range;
142 class LayoutView; 143 class LayoutView;
143 class ResourceFetcher; 144 class ResourceFetcher;
144 class SVGDocumentExtensions; 145 class SVGDocumentExtensions;
145 class SVGUseElement; 146 class SVGUseElement;
146 class ScriptRunner; 147 class ScriptRunner;
147 class ScriptableDocumentParser; 148 class ScriptableDocumentParser;
148 class ScriptedAnimationController; 149 class ScriptedAnimationController;
150 class ScriptedIdleTaskController;
149 class SecurityOrigin; 151 class SecurityOrigin;
150 class SegmentedString; 152 class SegmentedString;
151 class SelectorQueryCache; 153 class SelectorQueryCache;
152 class SerializedScriptValue; 154 class SerializedScriptValue;
153 class Settings; 155 class Settings;
154 class StyleEngine; 156 class StyleEngine;
155 class StyleResolver; 157 class StyleResolver;
156 class StyleSheet; 158 class StyleSheet;
157 class StyleSheetList; 159 class StyleSheetList;
158 class Text; 160 class Text;
(...skipping 757 matching lines...) Expand 10 before | Expand all | Expand 10 after
916 918
917 PassRefPtrWillBeRawPtr<Touch> createTouch(DOMWindow*, EventTarget*, int iden tifier, double pageX, double pageY, double screenX, double screenY, double radiu sX, double radiusY, float rotationAngle, float force) const; 919 PassRefPtrWillBeRawPtr<Touch> createTouch(DOMWindow*, EventTarget*, int iden tifier, double pageX, double pageY, double screenX, double screenY, double radiu sX, double radiusY, float rotationAngle, float force) const;
918 PassRefPtrWillBeRawPtr<TouchList> createTouchList(WillBeHeapVector<RefPtrWil lBeMember<Touch>>&) const; 920 PassRefPtrWillBeRawPtr<TouchList> createTouchList(WillBeHeapVector<RefPtrWil lBeMember<Touch>>&) const;
919 921
920 const DocumentTiming& timing() const { return m_documentTiming; } 922 const DocumentTiming& timing() const { return m_documentTiming; }
921 923
922 int requestAnimationFrame(FrameRequestCallback*); 924 int requestAnimationFrame(FrameRequestCallback*);
923 void cancelAnimationFrame(int id); 925 void cancelAnimationFrame(int id);
924 void serviceScriptedAnimations(double monotonicAnimationStartTime); 926 void serviceScriptedAnimations(double monotonicAnimationStartTime);
925 927
928 int requestIdleCallback(IdleRequestCallback*, double timeoutMillis);
929 void cancelIdleCallback(int id);
930
926 EventTarget* errorEventTarget() final; 931 EventTarget* errorEventTarget() final;
927 void logExceptionToConsole(const String& errorMessage, int scriptId, const S tring& sourceURL, int lineNumber, int columnNumber, PassRefPtrWillBeRawPtr<Scrip tCallStack>) final; 932 void logExceptionToConsole(const String& errorMessage, int scriptId, const S tring& sourceURL, int lineNumber, int columnNumber, PassRefPtrWillBeRawPtr<Scrip tCallStack>) final;
928 933
929 void initDNSPrefetch(); 934 void initDNSPrefetch();
930 935
931 bool isInDocumentWrite() { return m_writeRecursionDepth > 0; } 936 bool isInDocumentWrite() { return m_writeRecursionDepth > 0; }
932 937
933 TextAutosizer* textAutosizer(); 938 TextAutosizer* textAutosizer();
934 939
935 PassRefPtrWillBeRawPtr<Element> createElement(const AtomicString& localName, const AtomicString& typeExtension, ExceptionState&); 940 PassRefPtrWillBeRawPtr<Element> createElement(const AtomicString& localName, const AtomicString& typeExtension, ExceptionState&);
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
1057 1062
1058 private: 1063 private:
1059 friend class IgnoreDestructiveWriteCountIncrementer; 1064 friend class IgnoreDestructiveWriteCountIncrementer;
1060 friend class NthIndexCache; 1065 friend class NthIndexCache;
1061 1066
1062 bool isDocumentFragment() const = delete; // This will catch anyone doing an unnecessary check. 1067 bool isDocumentFragment() const = delete; // This will catch anyone doing an unnecessary check.
1063 bool isDocumentNode() const = delete; // This will catch anyone doing an unn ecessary check. 1068 bool isDocumentNode() const = delete; // This will catch anyone doing an unn ecessary check.
1064 bool isElementNode() const = delete; // This will catch anyone doing an unne cessary check. 1069 bool isElementNode() const = delete; // This will catch anyone doing an unne cessary check.
1065 1070
1066 ScriptedAnimationController& ensureScriptedAnimationController(); 1071 ScriptedAnimationController& ensureScriptedAnimationController();
1072 ScriptedIdleTaskController& ensureScriptedIdleTaskController();
1067 SecurityContext& securityContext() final { return *this; } 1073 SecurityContext& securityContext() final { return *this; }
1068 EventQueue* eventQueue() const final; 1074 EventQueue* eventQueue() const final;
1069 1075
1070 // FIXME: Rename the StyleRecalc state to LayoutTreeUpdate. 1076 // FIXME: Rename the StyleRecalc state to LayoutTreeUpdate.
1071 bool hasPendingStyleRecalc() const { return m_lifecycle.state() == DocumentL ifecycle::VisualUpdatePending; } 1077 bool hasPendingStyleRecalc() const { return m_lifecycle.state() == DocumentL ifecycle::VisualUpdatePending; }
1072 1078
1073 bool shouldScheduleLayoutTreeUpdate() const; 1079 bool shouldScheduleLayoutTreeUpdate() const;
1074 void scheduleLayoutTreeUpdate(); 1080 void scheduleLayoutTreeUpdate();
1075 1081
1076 bool needsFullLayoutTreeUpdate() const; 1082 bool needsFullLayoutTreeUpdate() const;
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
1331 Length m_viewportDefaultMinWidth; 1337 Length m_viewportDefaultMinWidth;
1332 1338
1333 ReferrerPolicy m_referrerPolicy; 1339 ReferrerPolicy m_referrerPolicy;
1334 1340
1335 DocumentTiming m_documentTiming; 1341 DocumentTiming m_documentTiming;
1336 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher; 1342 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher;
1337 bool m_writeRecursionIsTooDeep; 1343 bool m_writeRecursionIsTooDeep;
1338 unsigned m_writeRecursionDepth; 1344 unsigned m_writeRecursionDepth;
1339 1345
1340 RefPtrWillBeMember<ScriptedAnimationController> m_scriptedAnimationControlle r; 1346 RefPtrWillBeMember<ScriptedAnimationController> m_scriptedAnimationControlle r;
1347 RefPtrWillBeMember<ScriptedIdleTaskController> m_scriptedIdleTaskController;
1341 OwnPtr<MainThreadTaskRunner> m_taskRunner; 1348 OwnPtr<MainThreadTaskRunner> m_taskRunner;
1342 OwnPtrWillBeMember<TextAutosizer> m_textAutosizer; 1349 OwnPtrWillBeMember<TextAutosizer> m_textAutosizer;
1343 1350
1344 RefPtrWillBeMember<CustomElementRegistrationContext> m_registrationContext; 1351 RefPtrWillBeMember<CustomElementRegistrationContext> m_registrationContext;
1345 RefPtrWillBeMember<CustomElementMicrotaskRunQueue> m_customElementMicrotaskR unQueue; 1352 RefPtrWillBeMember<CustomElementMicrotaskRunQueue> m_customElementMicrotaskR unQueue;
1346 1353
1347 void elementDataCacheClearTimerFired(Timer<Document>*); 1354 void elementDataCacheClearTimerFired(Timer<Document>*);
1348 Timer<Document> m_elementDataCacheClearTimer; 1355 Timer<Document> m_elementDataCacheClearTimer;
1349 1356
1350 OwnPtrWillBeMember<ElementDataCache> m_elementDataCache; 1357 OwnPtrWillBeMember<ElementDataCache> m_elementDataCache;
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
1426 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1433 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1427 1434
1428 } // namespace blink 1435 } // namespace blink
1429 1436
1430 #ifndef NDEBUG 1437 #ifndef NDEBUG
1431 // Outside the WebCore namespace for ease of invocation from gdb. 1438 // Outside the WebCore namespace for ease of invocation from gdb.
1432 CORE_EXPORT void showLiveDocumentInstances(); 1439 CORE_EXPORT void showLiveDocumentInstances();
1433 #endif 1440 #endif
1434 1441
1435 #endif // Document_h 1442 #endif // Document_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698