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

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: Created 5 years, 7 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 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 class HTMLCollection; 112 class HTMLCollection;
113 class HTMLDialogElement; 113 class HTMLDialogElement;
114 class HTMLElement; 114 class HTMLElement;
115 class HTMLFrameOwnerElement; 115 class HTMLFrameOwnerElement;
116 class HTMLHeadElement; 116 class HTMLHeadElement;
117 class HTMLImportLoader; 117 class HTMLImportLoader;
118 class HTMLImportsController; 118 class HTMLImportsController;
119 class HTMLLinkElement; 119 class HTMLLinkElement;
120 class HTMLScriptElement; 120 class HTMLScriptElement;
121 class HitTestRequest; 121 class HitTestRequest;
122 class IdleRequestCallback;
122 class LayoutPoint; 123 class LayoutPoint;
123 class LiveNodeListBase; 124 class LiveNodeListBase;
124 class Locale; 125 class Locale;
125 class LocalFrame; 126 class LocalFrame;
126 class Location; 127 class Location;
127 class MainThreadTaskRunner; 128 class MainThreadTaskRunner;
128 class MediaQueryListListener; 129 class MediaQueryListListener;
129 class MediaQueryMatcher; 130 class MediaQueryMatcher;
130 class NodeFilter; 131 class NodeFilter;
131 class NodeIterator; 132 class NodeIterator;
132 class NthIndexCache; 133 class NthIndexCache;
133 class Page; 134 class Page;
134 class PlatformMouseEvent; 135 class PlatformMouseEvent;
135 class ProcessingInstruction; 136 class ProcessingInstruction;
136 class QualifiedName; 137 class QualifiedName;
137 class Range; 138 class Range;
138 class LayoutView; 139 class LayoutView;
139 class ResourceFetcher; 140 class ResourceFetcher;
140 class SVGDocumentExtensions; 141 class SVGDocumentExtensions;
141 class SVGUseElement; 142 class SVGUseElement;
142 class ScriptRunner; 143 class ScriptRunner;
143 class ScriptableDocumentParser; 144 class ScriptableDocumentParser;
144 class ScriptedAnimationController; 145 class ScriptedAnimationController;
146 class ScriptedIdleTaskController;
145 class SecurityOrigin; 147 class SecurityOrigin;
146 class SegmentedString; 148 class SegmentedString;
147 class SelectorQueryCache; 149 class SelectorQueryCache;
148 class SerializedScriptValue; 150 class SerializedScriptValue;
149 class Settings; 151 class Settings;
150 class StyleEngine; 152 class StyleEngine;
151 class StyleResolver; 153 class StyleResolver;
152 class StyleSheet; 154 class StyleSheet;
153 class StyleSheetList; 155 class StyleSheetList;
154 class Text; 156 class Text;
(...skipping 794 matching lines...) Expand 10 before | Expand all | Expand 10 after
949 951
950 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; 952 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;
951 PassRefPtrWillBeRawPtr<TouchList> createTouchList(WillBeHeapVector<RefPtrWil lBeMember<Touch>>&) const; 953 PassRefPtrWillBeRawPtr<TouchList> createTouchList(WillBeHeapVector<RefPtrWil lBeMember<Touch>>&) const;
952 954
953 const DocumentTiming& timing() const { return m_documentTiming; } 955 const DocumentTiming& timing() const { return m_documentTiming; }
954 956
955 int requestAnimationFrame(FrameRequestCallback*); 957 int requestAnimationFrame(FrameRequestCallback*);
956 void cancelAnimationFrame(int id); 958 void cancelAnimationFrame(int id);
957 void serviceScriptedAnimations(double monotonicAnimationStartTime); 959 void serviceScriptedAnimations(double monotonicAnimationStartTime);
958 960
961 int requestIdleFrame(IdleRequestCallback*);
962 void cancelIdleFrame(int id);
963
959 virtual EventTarget* errorEventTarget() override final; 964 virtual EventTarget* errorEventTarget() override final;
960 virtual void logExceptionToConsole(const String& errorMessage, int scriptId, const String& sourceURL, int lineNumber, int columnNumber, PassRefPtrWillBeRawP tr<ScriptCallStack>) override final; 965 virtual void logExceptionToConsole(const String& errorMessage, int scriptId, const String& sourceURL, int lineNumber, int columnNumber, PassRefPtrWillBeRawP tr<ScriptCallStack>) override final;
961 966
962 void initDNSPrefetch(); 967 void initDNSPrefetch();
963 968
964 bool isInDocumentWrite() { return m_writeRecursionDepth > 0; } 969 bool isInDocumentWrite() { return m_writeRecursionDepth > 0; }
965 970
966 TextAutosizer* textAutosizer(); 971 TextAutosizer* textAutosizer();
967 972
968 PassRefPtrWillBeRawPtr<Element> createElement(const AtomicString& localName, const AtomicString& typeExtension, ExceptionState&); 973 PassRefPtrWillBeRawPtr<Element> createElement(const AtomicString& localName, const AtomicString& typeExtension, ExceptionState&);
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
1085 1090
1086 private: 1091 private:
1087 friend class IgnoreDestructiveWriteCountIncrementer; 1092 friend class IgnoreDestructiveWriteCountIncrementer;
1088 friend class NthIndexCache; 1093 friend class NthIndexCache;
1089 1094
1090 bool isDocumentFragment() const = delete; // This will catch anyone doing an unnecessary check. 1095 bool isDocumentFragment() const = delete; // This will catch anyone doing an unnecessary check.
1091 bool isDocumentNode() const = delete; // This will catch anyone doing an unn ecessary check. 1096 bool isDocumentNode() const = delete; // This will catch anyone doing an unn ecessary check.
1092 bool isElementNode() const = delete; // This will catch anyone doing an unne cessary check. 1097 bool isElementNode() const = delete; // This will catch anyone doing an unne cessary check.
1093 1098
1094 ScriptedAnimationController& ensureScriptedAnimationController(); 1099 ScriptedAnimationController& ensureScriptedAnimationController();
1100 ScriptedIdleTaskController& ensureScriptedIdleTaskController();
1095 virtual SecurityContext& securityContext() override final { return *this; } 1101 virtual SecurityContext& securityContext() override final { return *this; }
1096 virtual EventQueue* eventQueue() const override final; 1102 virtual EventQueue* eventQueue() const override final;
1097 1103
1098 // FIXME: Rename the StyleRecalc state to RenderTreeUpdate. 1104 // FIXME: Rename the StyleRecalc state to RenderTreeUpdate.
1099 bool hasPendingStyleRecalc() const { return m_lifecycle.state() == DocumentL ifecycle::VisualUpdatePending; } 1105 bool hasPendingStyleRecalc() const { return m_lifecycle.state() == DocumentL ifecycle::VisualUpdatePending; }
1100 1106
1101 bool shouldScheduleRenderTreeUpdate() const; 1107 bool shouldScheduleRenderTreeUpdate() const;
1102 void scheduleRenderTreeUpdate(); 1108 void scheduleRenderTreeUpdate();
1103 1109
1104 bool needsFullRenderTreeUpdate() const; 1110 bool needsFullRenderTreeUpdate() const;
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after
1364 Length m_viewportDefaultMinWidth; 1370 Length m_viewportDefaultMinWidth;
1365 1371
1366 ReferrerPolicy m_referrerPolicy; 1372 ReferrerPolicy m_referrerPolicy;
1367 1373
1368 DocumentTiming m_documentTiming; 1374 DocumentTiming m_documentTiming;
1369 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher; 1375 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher;
1370 bool m_writeRecursionIsTooDeep; 1376 bool m_writeRecursionIsTooDeep;
1371 unsigned m_writeRecursionDepth; 1377 unsigned m_writeRecursionDepth;
1372 1378
1373 RefPtrWillBeMember<ScriptedAnimationController> m_scriptedAnimationControlle r; 1379 RefPtrWillBeMember<ScriptedAnimationController> m_scriptedAnimationControlle r;
1380 RefPtrWillBeMember<ScriptedIdleTaskController> m_scriptedIdleTaskController;
1374 OwnPtr<MainThreadTaskRunner> m_taskRunner; 1381 OwnPtr<MainThreadTaskRunner> m_taskRunner;
1375 OwnPtrWillBeMember<TextAutosizer> m_textAutosizer; 1382 OwnPtrWillBeMember<TextAutosizer> m_textAutosizer;
1376 1383
1377 RefPtrWillBeMember<CustomElementRegistrationContext> m_registrationContext; 1384 RefPtrWillBeMember<CustomElementRegistrationContext> m_registrationContext;
1378 RefPtrWillBeMember<CustomElementMicrotaskRunQueue> m_customElementMicrotaskR unQueue; 1385 RefPtrWillBeMember<CustomElementMicrotaskRunQueue> m_customElementMicrotaskR unQueue;
1379 1386
1380 void elementDataCacheClearTimerFired(Timer<Document>*); 1387 void elementDataCacheClearTimerFired(Timer<Document>*);
1381 Timer<Document> m_elementDataCacheClearTimer; 1388 Timer<Document> m_elementDataCacheClearTimer;
1382 1389
1383 OwnPtrWillBeMember<ElementDataCache> m_elementDataCache; 1390 OwnPtrWillBeMember<ElementDataCache> m_elementDataCache;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
1453 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1460 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1454 1461
1455 } // namespace blink 1462 } // namespace blink
1456 1463
1457 #ifndef NDEBUG 1464 #ifndef NDEBUG
1458 // Outside the WebCore namespace for ease of invocation from gdb. 1465 // Outside the WebCore namespace for ease of invocation from gdb.
1459 CORE_EXPORT void showLiveDocumentInstances(); 1466 CORE_EXPORT void showLiveDocumentInstances();
1460 #endif 1467 #endif
1461 1468
1462 #endif // Document_h 1469 #endif // Document_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698