OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights | 2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights |
3 * reserved. | 3 * reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 class CueTimeline; | 56 class CueTimeline; |
57 class ElementVisibilityObserver; | 57 class ElementVisibilityObserver; |
58 class EnumerationHistogram; | 58 class EnumerationHistogram; |
59 class Event; | 59 class Event; |
60 class ExceptionState; | 60 class ExceptionState; |
61 class HTMLSourceElement; | 61 class HTMLSourceElement; |
62 class HTMLTrackElement; | 62 class HTMLTrackElement; |
63 class KURL; | 63 class KURL; |
64 class MediaControls; | 64 class MediaControls; |
65 class MediaError; | 65 class MediaError; |
| 66 class MediaRemotingInterstitial; |
66 class MediaStreamDescriptor; | 67 class MediaStreamDescriptor; |
67 class HTMLMediaSource; | 68 class HTMLMediaSource; |
68 class ScriptState; | 69 class ScriptState; |
69 class TextTrackContainer; | 70 class TextTrackContainer; |
70 class TextTrackList; | 71 class TextTrackList; |
71 class TimeRanges; | 72 class TimeRanges; |
72 class URLRegistry; | 73 class URLRegistry; |
73 class VideoTrack; | 74 class VideoTrack; |
74 class VideoTrackList; | 75 class VideoTrackList; |
75 class WebAudioSourceProvider; | 76 class WebAudioSourceProvider; |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
316 | 317 |
317 void videoWillBeDrawnToCanvas() const; | 318 void videoWillBeDrawnToCanvas() const; |
318 | 319 |
319 WebRemotePlaybackClient* remotePlaybackClient() { | 320 WebRemotePlaybackClient* remotePlaybackClient() { |
320 return m_remotePlaybackClient; | 321 return m_remotePlaybackClient; |
321 } | 322 } |
322 const WebRemotePlaybackClient* remotePlaybackClient() const { | 323 const WebRemotePlaybackClient* remotePlaybackClient() const { |
323 return m_remotePlaybackClient; | 324 return m_remotePlaybackClient; |
324 } | 325 } |
325 | 326 |
| 327 void disableMediaRemoting(); |
| 328 |
326 protected: | 329 protected: |
327 HTMLMediaElement(const QualifiedName&, Document&); | 330 HTMLMediaElement(const QualifiedName&, Document&); |
328 ~HTMLMediaElement() override; | 331 ~HTMLMediaElement() override; |
329 void dispose(); | 332 void dispose(); |
330 | 333 |
331 void parseAttribute(const AttributeModificationParams&) override; | 334 void parseAttribute(const AttributeModificationParams&) override; |
332 void finishParsingChildren() final; | 335 void finishParsingChildren() final; |
333 bool isURLAttribute(const Attribute&) const override; | 336 bool isURLAttribute(const Attribute&) const override; |
334 void attachLayoutTree(const AttachContext& = AttachContext()) override; | 337 void attachLayoutTree(const AttachContext& = AttachContext()) override; |
335 | 338 |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
401 void connectedToRemoteDevice() final; | 404 void connectedToRemoteDevice() final; |
402 void disconnectedFromRemoteDevice() final; | 405 void disconnectedFromRemoteDevice() final; |
403 void cancelledRemotePlaybackRequest() final; | 406 void cancelledRemotePlaybackRequest() final; |
404 void remotePlaybackStarted() final; | 407 void remotePlaybackStarted() final; |
405 void onBecamePersistentVideo(bool) final; | 408 void onBecamePersistentVideo(bool) final; |
406 bool hasSelectedVideoTrack() final; | 409 bool hasSelectedVideoTrack() final; |
407 WebMediaPlayer::TrackId getSelectedVideoTrackId() final; | 410 WebMediaPlayer::TrackId getSelectedVideoTrackId() final; |
408 bool isAutoplayingMuted() final; | 411 bool isAutoplayingMuted() final; |
409 void requestReload(const WebURL&) final; | 412 void requestReload(const WebURL&) final; |
410 void activateViewportIntersectionMonitoring(bool) final; | 413 void activateViewportIntersectionMonitoring(bool) final; |
| 414 void mediaRemotingStarted() final; |
| 415 void mediaRemotingStopped() final; |
411 | 416 |
412 void loadTimerFired(TimerBase*); | 417 void loadTimerFired(TimerBase*); |
413 void progressEventTimerFired(TimerBase*); | 418 void progressEventTimerFired(TimerBase*); |
414 void playbackProgressTimerFired(TimerBase*); | 419 void playbackProgressTimerFired(TimerBase*); |
415 void checkViewportIntersectionTimerFired(TimerBase*); | 420 void checkViewportIntersectionTimerFired(TimerBase*); |
416 void startPlaybackProgressTimer(); | 421 void startPlaybackProgressTimer(); |
417 void startProgressEventTimer(); | 422 void startProgressEventTimer(); |
418 void stopPeriodicTimers(); | 423 void stopPeriodicTimers(); |
419 | 424 |
420 void seek(double time); | 425 void seek(double time); |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
661 bool m_shouldPerformAutomaticTrackSelection : 1; | 666 bool m_shouldPerformAutomaticTrackSelection : 1; |
662 | 667 |
663 bool m_tracksAreReady : 1; | 668 bool m_tracksAreReady : 1; |
664 bool m_processingPreferenceChange : 1; | 669 bool m_processingPreferenceChange : 1; |
665 bool m_playingRemotely : 1; | 670 bool m_playingRemotely : 1; |
666 // Whether this element is in overlay fullscreen mode. | 671 // Whether this element is in overlay fullscreen mode. |
667 bool m_inOverlayFullscreenVideo : 1; | 672 bool m_inOverlayFullscreenVideo : 1; |
668 | 673 |
669 bool m_mostlyFillingViewport : 1; | 674 bool m_mostlyFillingViewport : 1; |
670 | 675 |
| 676 bool m_mediaRemotingDisabled : 1; |
| 677 |
671 TraceWrapperMember<AudioTrackList> m_audioTracks; | 678 TraceWrapperMember<AudioTrackList> m_audioTracks; |
672 TraceWrapperMember<VideoTrackList> m_videoTracks; | 679 TraceWrapperMember<VideoTrackList> m_videoTracks; |
673 TraceWrapperMember<TextTrackList> m_textTracks; | 680 TraceWrapperMember<TextTrackList> m_textTracks; |
674 HeapVector<Member<TextTrack>> m_textTracksWhenResourceSelectionBegan; | 681 HeapVector<Member<TextTrack>> m_textTracksWhenResourceSelectionBegan; |
675 | 682 |
676 Member<CueTimeline> m_cueTimeline; | 683 Member<CueTimeline> m_cueTimeline; |
677 | 684 |
678 HeapVector<Member<ScriptPromiseResolver>> m_playPromiseResolvers; | 685 HeapVector<Member<ScriptPromiseResolver>> m_playPromiseResolvers; |
679 TaskHandle m_playPromiseResolveTaskHandle; | 686 TaskHandle m_playPromiseResolveTaskHandle; |
680 TaskHandle m_playPromiseRejectTaskHandle; | 687 TaskHandle m_playPromiseRejectTaskHandle; |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
751 | 758 |
752 WebRemotePlaybackClient* m_remotePlaybackClient; | 759 WebRemotePlaybackClient* m_remotePlaybackClient; |
753 | 760 |
754 // class AutoplayVisibilityObserver; | 761 // class AutoplayVisibilityObserver; |
755 Member<ElementVisibilityObserver> m_autoplayVisibilityObserver; | 762 Member<ElementVisibilityObserver> m_autoplayVisibilityObserver; |
756 | 763 |
757 IntRect m_currentIntersectRect; | 764 IntRect m_currentIntersectRect; |
758 | 765 |
759 Member<MediaControls> m_mediaControls; | 766 Member<MediaControls> m_mediaControls; |
760 Member<HTMLMediaElementControlsList> m_controlsList; | 767 Member<HTMLMediaElementControlsList> m_controlsList; |
| 768 Member<MediaRemotingInterstitial> m_remotingInterstitial; |
761 | 769 |
762 bool m_isPersistentVideo; | 770 bool m_isPersistentVideo; |
763 | 771 |
764 static URLRegistry* s_mediaStreamRegistry; | 772 static URLRegistry* s_mediaStreamRegistry; |
765 }; | 773 }; |
766 | 774 |
767 inline bool isHTMLMediaElement(const HTMLElement& element) { | 775 inline bool isHTMLMediaElement(const HTMLElement& element) { |
768 return isHTMLAudioElement(element) || isHTMLVideoElement(element); | 776 return isHTMLAudioElement(element) || isHTMLVideoElement(element); |
769 } | 777 } |
770 | 778 |
771 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement); | 779 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement); |
772 | 780 |
773 } // namespace blink | 781 } // namespace blink |
774 | 782 |
775 #endif // HTMLMediaElement_h | 783 #endif // HTMLMediaElement_h |
OLD | NEW |