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

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

Issue 1449623002: IntersectionObserver: second cut. (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Add RuntimeEnabled flags to all idl's, fix test expectations. Created 4 years, 11 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 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
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 IntersectionObserverController;
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 538 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 bool hasListenerType(ListenerType listenerType) const { return (m_listenerTy pes & listenerType); } 678 bool hasListenerType(ListenerType listenerType) const { return (m_listenerTy pes & listenerType); }
678 void addListenerTypeIfNeeded(const AtomicString& eventType); 679 void addListenerTypeIfNeeded(const AtomicString& eventType);
679 680
680 bool hasMutationObserversOfType(MutationObserver::MutationType type) const 681 bool hasMutationObserversOfType(MutationObserver::MutationType type) const
681 { 682 {
682 return m_mutationObserverTypes & type; 683 return m_mutationObserverTypes & type;
683 } 684 }
684 bool hasMutationObservers() const { return m_mutationObserverTypes; } 685 bool hasMutationObservers() const { return m_mutationObserverTypes; }
685 void addMutationObserverTypes(MutationObserverOptions types) { m_mutationObs erverTypes |= types; } 686 void addMutationObserverTypes(MutationObserverOptions types) { m_mutationObs erverTypes |= types; }
686 687
688 WeakPtrWillBeRawPtr<Document> createWeakPtr();
689
690 IntersectionObserverController& ensureIntersectionObserverController();
691
687 void updateViewportDescription(); 692 void updateViewportDescription();
688 void processReferrerPolicy(const String& policy); 693 void processReferrerPolicy(const String& policy);
689 694
690 // Returns the owning element in the parent document. 695 // Returns the owning element in the parent document.
691 // Returns nullptr if this is the top level document. 696 // Returns nullptr if this is the top level document.
692 HTMLFrameOwnerElement* ownerElement() const; 697 HTMLFrameOwnerElement* ownerElement() const;
693 698
694 // Returns true if this document belongs to a frame that the parent document 699 // Returns true if this document belongs to a frame that the parent document
695 // made invisible (for instance by setting as style display:none). 700 // made invisible (for instance by setting as style display:none).
696 bool isInInvisibleSubframe() const; 701 bool isInInvisibleSubframe() const;
(...skipping 694 matching lines...) Expand 10 before | Expand all | Expand 10 after
1391 int m_styleRecalcElementCounter; 1396 int m_styleRecalcElementCounter;
1392 1397
1393 ParserSynchronizationPolicy m_parserSyncPolicy; 1398 ParserSynchronizationPolicy m_parserSyncPolicy;
1394 1399
1395 OriginsUsingFeatures::Value m_originsUsingFeaturesValue; 1400 OriginsUsingFeatures::Value m_originsUsingFeaturesValue;
1396 1401
1397 ClientHintsPreferences m_clientHintsPreferences; 1402 ClientHintsPreferences m_clientHintsPreferences;
1398 1403
1399 PersistentWillBeMember<CanvasFontCache> m_canvasFontCache; 1404 PersistentWillBeMember<CanvasFontCache> m_canvasFontCache;
1400 1405
1406 PersistentWillBeMember<IntersectionObserverController> m_intersectionObserve rController;
1407
1401 int m_nodeCount; 1408 int m_nodeCount;
1402 }; 1409 };
1403 1410
1404 extern template class CORE_EXTERN_TEMPLATE_EXPORT WillBeHeapSupplement<Document> ; 1411 extern template class CORE_EXTERN_TEMPLATE_EXPORT WillBeHeapSupplement<Document> ;
1405 1412
1406 inline bool Document::shouldOverrideLegacyDescription(ViewportDescription::Type origin) 1413 inline bool Document::shouldOverrideLegacyDescription(ViewportDescription::Type origin)
1407 { 1414 {
1408 // The different (legacy) meta tags have different priorities based on the t ype 1415 // The different (legacy) meta tags have different priorities based on the t ype
1409 // regardless of which order they appear in the DOM. The priority is given b y the 1416 // regardless of which order they appear in the DOM. The priority is given b y the
1410 // ViewportDescription::Type enum. 1417 // ViewportDescription::Type enum.
(...skipping 30 matching lines...) Expand all
1441 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1448 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1442 1449
1443 } // namespace blink 1450 } // namespace blink
1444 1451
1445 #ifndef NDEBUG 1452 #ifndef NDEBUG
1446 // Outside the WebCore namespace for ease of invocation from gdb. 1453 // Outside the WebCore namespace for ease of invocation from gdb.
1447 CORE_EXPORT void showLiveDocumentInstances(); 1454 CORE_EXPORT void showLiveDocumentInstances();
1448 #endif 1455 #endif
1449 1456
1450 #endif // Document_h 1457 #endif // Document_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698