OLD | NEW |
---|---|
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 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
119 class HTMLFrameOwnerElement; | 119 class HTMLFrameOwnerElement; |
120 class HTMLHeadElement; | 120 class HTMLHeadElement; |
121 class HTMLImportLoader; | 121 class HTMLImportLoader; |
122 class HTMLImportsController; | 122 class HTMLImportsController; |
123 class HTMLLinkElement; | 123 class HTMLLinkElement; |
124 class HTMLScriptElement; | 124 class HTMLScriptElement; |
125 class HitTestRequest; | 125 class HitTestRequest; |
126 class IdleRequestCallback; | 126 class IdleRequestCallback; |
127 class IdleRequestOptions; | 127 class IdleRequestOptions; |
128 class InputDeviceCapabilities; | 128 class InputDeviceCapabilities; |
129 class IntersectionObservationRegistry; | |
129 class LayoutPoint; | 130 class LayoutPoint; |
130 class LiveNodeListBase; | 131 class LiveNodeListBase; |
131 class Locale; | 132 class Locale; |
132 class LocalFrame; | 133 class LocalFrame; |
133 class Location; | 134 class Location; |
134 class MainThreadTaskRunner; | 135 class MainThreadTaskRunner; |
135 class MediaQueryListListener; | 136 class MediaQueryListListener; |
136 class MediaQueryMatcher; | 137 class MediaQueryMatcher; |
137 class NodeFilter; | 138 class NodeFilter; |
138 class NodeIterator; | 139 class NodeIterator; |
(...skipping 529 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
668 bool hasListenerType(ListenerType listenerType) const { return (m_listenerTy pes & listenerType); } | 669 bool hasListenerType(ListenerType listenerType) const { return (m_listenerTy pes & listenerType); } |
669 void addListenerTypeIfNeeded(const AtomicString& eventType); | 670 void addListenerTypeIfNeeded(const AtomicString& eventType); |
670 | 671 |
671 bool hasMutationObserversOfType(MutationObserver::MutationType type) const | 672 bool hasMutationObserversOfType(MutationObserver::MutationType type) const |
672 { | 673 { |
673 return m_mutationObserverTypes & type; | 674 return m_mutationObserverTypes & type; |
674 } | 675 } |
675 bool hasMutationObservers() const { return m_mutationObserverTypes; } | 676 bool hasMutationObservers() const { return m_mutationObserverTypes; } |
676 void addMutationObserverTypes(MutationObserverOptions types) { m_mutationObs erverTypes |= types; } | 677 void addMutationObserverTypes(MutationObserverOptions types) { m_mutationObs erverTypes |= types; } |
677 | 678 |
679 WeakPtr<Document> createWeakPtr(); | |
680 | |
681 IntersectionObservationRegistry* intersectionObservationRegistry(); | |
682 void deliverIntersectionObservationsTimerFired(Timer<Document>*); | |
683 | |
678 void updateViewportDescription(); | 684 void updateViewportDescription(); |
679 void processReferrerPolicy(const String& policy); | 685 void processReferrerPolicy(const String& policy); |
680 | 686 |
681 // Returns the owning element in the parent document. | 687 // Returns the owning element in the parent document. |
682 // Returns nullptr if this is the top level document. | 688 // Returns nullptr if this is the top level document. |
683 HTMLFrameOwnerElement* ownerElement() const; | 689 HTMLFrameOwnerElement* ownerElement() const; |
684 | 690 |
685 // Returns true if this document belongs to a frame that the parent document | 691 // Returns true if this document belongs to a frame that the parent document |
686 // made invisible (for instance by setting as style display:none). | 692 // made invisible (for instance by setting as style display:none). |
687 bool isInInvisibleSubframe() const; | 693 bool isInInvisibleSubframe() const; |
(...skipping 635 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1323 #endif | 1329 #endif |
1324 WeakPtrWillBeWeakMember<Document> m_contextDocument; | 1330 WeakPtrWillBeWeakMember<Document> m_contextDocument; |
1325 | 1331 |
1326 bool m_hasFullscreenSupplement; // For early return in Fullscreen::fromIfExi sts() | 1332 bool m_hasFullscreenSupplement; // For early return in Fullscreen::fromIfExi sts() |
1327 | 1333 |
1328 WillBeHeapVector<RefPtrWillBeMember<Element>> m_topLayerElements; | 1334 WillBeHeapVector<RefPtrWillBeMember<Element>> m_topLayerElements; |
1329 | 1335 |
1330 int m_loadEventDelayCount; | 1336 int m_loadEventDelayCount; |
1331 Timer<Document> m_loadEventDelayTimer; | 1337 Timer<Document> m_loadEventDelayTimer; |
1332 Timer<Document> m_pluginLoadingTimer; | 1338 Timer<Document> m_pluginLoadingTimer; |
1339 Timer<Document> m_deliverIntersectionObservationsTimer; | |
1333 | 1340 |
1334 ViewportDescription m_viewportDescription; | 1341 ViewportDescription m_viewportDescription; |
1335 ViewportDescription m_legacyViewportDescription; | 1342 ViewportDescription m_legacyViewportDescription; |
1336 Length m_viewportDefaultMinWidth; | 1343 Length m_viewportDefaultMinWidth; |
1337 | 1344 |
1338 ReferrerPolicy m_referrerPolicy; | 1345 ReferrerPolicy m_referrerPolicy; |
1339 | 1346 |
1340 DocumentTiming m_documentTiming; | 1347 DocumentTiming m_documentTiming; |
1341 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher; | 1348 RefPtrWillBeMember<MediaQueryMatcher> m_mediaQueryMatcher; |
1342 bool m_writeRecursionIsTooDeep; | 1349 bool m_writeRecursionIsTooDeep; |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1383 int m_styleRecalcElementCounter; | 1390 int m_styleRecalcElementCounter; |
1384 | 1391 |
1385 ParserSynchronizationPolicy m_parserSyncPolicy; | 1392 ParserSynchronizationPolicy m_parserSyncPolicy; |
1386 | 1393 |
1387 OriginsUsingFeatures::Value m_originsUsingFeaturesValue; | 1394 OriginsUsingFeatures::Value m_originsUsingFeaturesValue; |
1388 | 1395 |
1389 ClientHintsPreferences m_clientHintsPreferences; | 1396 ClientHintsPreferences m_clientHintsPreferences; |
1390 | 1397 |
1391 PersistentWillBeMember<CanvasFontCache> m_canvasFontCache; | 1398 PersistentWillBeMember<CanvasFontCache> m_canvasFontCache; |
1392 | 1399 |
1400 PersistentWillBeMember<IntersectionObservationRegistry> m_intersectionObserv ationRegistry; | |
1401 OwnPtrWillBeMember<WeakPtrFactory<Document>> m_weakPointerFactory; | |
dcheng
2015/11/20 20:35:07
WeakPtrFactory is not a garbage collected object,
szager1
2015/11/20 22:02:23
I just noticed that Document already has an m_weak
| |
1402 | |
1393 int m_nodeCount; | 1403 int m_nodeCount; |
1394 }; | 1404 }; |
1395 | 1405 |
1396 extern template class CORE_EXTERN_TEMPLATE_EXPORT WillBeHeapSupplement<Document> ; | 1406 extern template class CORE_EXTERN_TEMPLATE_EXPORT WillBeHeapSupplement<Document> ; |
1397 | 1407 |
1398 inline bool Document::shouldOverrideLegacyDescription(ViewportDescription::Type origin) | 1408 inline bool Document::shouldOverrideLegacyDescription(ViewportDescription::Type origin) |
1399 { | 1409 { |
1400 // The different (legacy) meta tags have different priorities based on the t ype | 1410 // The different (legacy) meta tags have different priorities based on the t ype |
1401 // regardless of which order they appear in the DOM. The priority is given b y the | 1411 // regardless of which order they appear in the DOM. The priority is given b y the |
1402 // ViewportDescription::Type enum. | 1412 // ViewportDescription::Type enum. |
(...skipping 30 matching lines...) Expand all Loading... | |
1433 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); | 1443 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); |
1434 | 1444 |
1435 } // namespace blink | 1445 } // namespace blink |
1436 | 1446 |
1437 #ifndef NDEBUG | 1447 #ifndef NDEBUG |
1438 // Outside the WebCore namespace for ease of invocation from gdb. | 1448 // Outside the WebCore namespace for ease of invocation from gdb. |
1439 CORE_EXPORT void showLiveDocumentInstances(); | 1449 CORE_EXPORT void showLiveDocumentInstances(); |
1440 #endif | 1450 #endif |
1441 | 1451 |
1442 #endif // Document_h | 1452 #endif // Document_h |
OLD | NEW |