| 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 c927eeb9db8409a3900dd725e0749b70eb442480..39d4f1b9bfc60055d83f2514e966fe76b9bf182d 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| +++ b/third_party/WebKit/Source/core/html/HTMLMediaElement.h
|
| @@ -52,7 +52,7 @@ class AudioTrackList;
|
| class AutoplayUmaHelper;
|
| class ContentType;
|
| class CueTimeline;
|
| -class ElementVisibilityObserver;
|
| +class ViewportIntersectionObserver;
|
| class EnumerationHistogram;
|
| class Event;
|
| class ExceptionState;
|
| @@ -309,6 +309,10 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| }
|
| void setRemotePlaybackClient(WebRemotePlaybackClient*);
|
|
|
| + WebMediaPlayer::ViewportIntersectionInfo currentViewportIntersection() const {
|
| + return m_currentViewportIntersection;
|
| + }
|
| +
|
| protected:
|
| HTMLMediaElement(const QualifiedName&, Document&);
|
| ~HTMLMediaElement() override;
|
| @@ -534,7 +538,8 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
|
|
| EnumerationHistogram& showControlsHistogram() const;
|
|
|
| - void onVisibilityChangedForAutoplay(bool isVisible);
|
| + void onVideoViewportIntersectionChanged(const WebRect& rootRect,
|
| + const WebRect& intersectRect);
|
|
|
| UnthrottledThreadTimer<HTMLMediaElement> m_loadTimer;
|
| UnthrottledThreadTimer<HTMLMediaElement> m_progressEventTimer;
|
| @@ -658,6 +663,8 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| GC_PLUGIN_IGNORE("http://crbug.com/404577")
|
| WeakMember<AudioSourceProviderClient> m_audioSourceNode;
|
|
|
| + WebMediaPlayer::ViewportIntersectionInfo m_currentViewportIntersection;
|
| +
|
| // AudioClientImpl wraps an AudioSourceProviderClient.
|
| // When the audio format is known, Chromium calls setFormat().
|
| class AudioClientImpl final
|
| @@ -716,11 +723,11 @@ class CORE_EXPORT HTMLMediaElement : public HTMLElement,
|
| Member<AutoplayExperimentHelper::Client> m_autoplayHelperClient;
|
| Member<AutoplayExperimentHelper> m_autoplayHelper;
|
| Member<AutoplayUmaHelper> m_autoplayUmaHelper;
|
| + bool m_shouldAutoplayWhenVisible = false;
|
|
|
| WebRemotePlaybackClient* m_remotePlaybackClient;
|
|
|
| - // class AutoplayVisibilityObserver;
|
| - Member<ElementVisibilityObserver> m_autoplayVisibilityObserver;
|
| + Member<ViewportIntersectionObserver> m_viewportIntersectionObserver;
|
|
|
| static URLRegistry* s_mediaStreamRegistry;
|
| };
|
|
|