| Index: third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| diff --git a/third_party/WebKit/Source/core/html/HTMLMediaElement.h b/third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| index 0bd98bca6d30fa8ac49f065ddad4b715583cedbb..2959f6aaa849522907d9c76985140dc2f9662510 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| +++ b/third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| @@ -334,6 +334,9 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| void recordAutoplayMetric(AutoplayMetrics);
|
|
|
| private:
|
| + // Friend class for testing.
|
| + friend class MediaElementFillingViewportTest;
|
| +
|
| void resetMediaPlayerAndMediaSource();
|
|
|
| bool alwaysCreateUserAgentShadowRoot() const final { return true; }
|
| @@ -544,10 +547,14 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
|
|
| void onVisibilityChangedForAutoplay(bool isVisible);
|
|
|
| + void checkViewportIntersectionChanged();
|
| + void viewportFillDebouncerTimerFired(TimerBase*);
|
| +
|
| UnthrottledThreadTimer<HTMLMediaElement> m_loadTimer;
|
| UnthrottledThreadTimer<HTMLMediaElement> m_progressEventTimer;
|
| UnthrottledThreadTimer<HTMLMediaElement> m_playbackProgressTimer;
|
| UnthrottledThreadTimer<HTMLMediaElement> m_audioTracksTimer;
|
| + UnthrottledThreadTimer<HTMLMediaElement> m_viewportFillDebouncerTimer;
|
| Member<TimeRanges> m_playedTimeRanges;
|
| Member<GenericEventQueue> m_asyncEventQueue;
|
|
|
| @@ -647,6 +654,8 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| // Whether this element is in overlay fullscreen mode.
|
| bool m_inOverlayFullscreenVideo : 1;
|
|
|
| + bool m_mostlyFillingViewport : 1;
|
| +
|
| TraceWrapperMember<AudioTrackList> m_audioTracks;
|
| TraceWrapperMember<VideoTrackList> m_videoTracks;
|
| TraceWrapperMember<TextTrackList> m_textTracks;
|
| @@ -731,6 +740,8 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| // class AutoplayVisibilityObserver;
|
| Member<ElementVisibilityObserver> m_autoplayVisibilityObserver;
|
|
|
| + IntRect m_currentIntersectRect;
|
| +
|
| static URLRegistry* s_mediaStreamRegistry;
|
| };
|
|
|
|
|