| Index: third_party/WebKit/Source/core/observer/ResizeObserver.h
|
| diff --git a/third_party/WebKit/Source/core/observer/ResizeObserver.h b/third_party/WebKit/Source/core/observer/ResizeObserver.h
|
| index 9bdde3841e47ffa89b86f414f7555bea35ad0e57..a219ef2511eb682e771b423ff98e3eac2db3bd7a 100644
|
| --- a/third_party/WebKit/Source/core/observer/ResizeObserver.h
|
| +++ b/third_party/WebKit/Source/core/observer/ResizeObserver.h
|
| @@ -14,6 +14,7 @@ class Document;
|
| class Element;
|
| class ResizeObserverCallback;
|
| class ResizeObserverController;
|
| +class ResizeObserverEntry;
|
| class ResizeObservation;
|
|
|
| // ResizeObserver represents ResizeObserver javascript api:
|
| @@ -21,7 +22,6 @@ class ResizeObservation;
|
| class CORE_EXPORT ResizeObserver final : public GarbageCollectedFinalized<ResizeObserver>, public ScriptWrappable {
|
| DEFINE_WRAPPERTYPEINFO();
|
| public:
|
| -
|
| static ResizeObserver* create(Document&, ResizeObserverCallback*);
|
|
|
| virtual ~ResizeObserver() {};
|
| @@ -31,23 +31,32 @@ public:
|
| void unobserve(Element*);
|
| void disconnect();
|
|
|
| + // Returns depth of shallowest observed node, kDepthLimit if none.
|
| + size_t gatherObservations(size_t deeperThan);
|
| + bool skippedObservations() { return m_skippedObservations; }
|
| + void deliverObservations();
|
| + void clearObservations();
|
| + void elementSizeChanged();
|
| + bool hasElementSizeChanged() { return m_elementSizeChanged; }
|
| DECLARE_TRACE();
|
|
|
| private:
|
| + ResizeObserver(ResizeObserverCallback*, Document&);
|
|
|
| using ObservationList = HeapLinkedHashSet<WeakMember<ResizeObservation>>;
|
|
|
| - explicit ResizeObserver(ResizeObserverCallback*, Document&);
|
| -
|
| Member<ResizeObserverCallback> m_callback;
|
| -
|
| // List of elements we are observing
|
| ObservationList m_observations;
|
| -
|
| + // List of elements that have changes
|
| + HeapVector<Member<ResizeObservation>> m_activeObservations;
|
| + // True if observations were skipped gatherObservations
|
| + bool m_skippedObservations;
|
| + // True if any ResizeObservation reported size change
|
| + bool m_elementSizeChanged;
|
| WeakMember<ResizeObserverController> m_controller;
|
| };
|
|
|
| -
|
| } // namespace blink
|
|
|
| #endif // ResizeObserver_h
|
|
|