Changeset 184966 in webkit
- Timestamp:
- May 28, 2015 4:03:34 PM (9 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 8 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r184954 r184966 1637 1637 html/HTMLMarqueeElement.cpp 1638 1638 html/HTMLMediaElement.cpp 1639 html/HTMLMediaSession.cpp1640 1639 html/HTMLMenuElement.cpp 1641 1640 html/HTMLMetaElement.cpp … … 1689 1688 html/MediaController.cpp 1690 1689 html/MediaDocument.cpp 1690 html/MediaElementSession.cpp 1691 1691 html/MediaFragmentURIParser.cpp 1692 1692 html/MonthInputType.cpp -
trunk/Source/WebCore/ChangeLog
r184965 r184966 1 2015-05-28 Matt Rajca <mrajca@apple.com> 2 3 Rename HTMLMediaSession to MediaElementSession to reserve "media session" for the Media Session API. 4 https://bugs.webkit.org/show_bug.cgi?id=145440 5 6 Reviewed by Eric Carlson. 7 8 * CMakeLists.txt: 9 * WebCore.vcxproj/WebCore.vcxproj: 10 * WebCore.vcxproj/WebCore.vcxproj.filters: 11 * WebCore.xcodeproj/project.pbxproj: 12 * html/HTMLMediaElement.cpp: 13 (WebCore::HTMLMediaElement::HTMLMediaElement): 14 (WebCore::HTMLMediaElement::loadInternal): 15 (WebCore::HTMLMediaElement::loadResource): 16 (WebCore::HTMLMediaElement::suspend): 17 (WebCore::HTMLMediaElement::resume): 18 (WebCore::HTMLMediaElement::removeBehaviorsRestrictionsAfterFirstUserGesture): 19 (WebCore::HTMLMediaElement::mediaState): 20 * html/HTMLMediaElement.h: 21 (WebCore::HTMLMediaElement::mediaSession): 22 * html/MediaElementSession.cpp: Renamed from Source/WebCore/html/HTMLMediaSession.cpp. 23 (WebCore::restrictionName): 24 (WebCore::MediaElementSession::MediaElementSession): 25 (WebCore::MediaElementSession::registerWithDocument): 26 (WebCore::MediaElementSession::unregisterWithDocument): 27 (WebCore::MediaElementSession::addBehaviorRestriction): 28 (WebCore::MediaElementSession::removeBehaviorRestriction): 29 (WebCore::MediaElementSession::playbackPermitted): 30 (WebCore::MediaElementSession::dataLoadingPermitted): 31 (WebCore::MediaElementSession::fullscreenPermitted): 32 (WebCore::MediaElementSession::pageAllowsDataLoading): 33 (WebCore::MediaElementSession::pageAllowsPlaybackAfterResuming): 34 (WebCore::MediaElementSession::showPlaybackTargetPicker): 35 (WebCore::MediaElementSession::hasWirelessPlaybackTargets): 36 (WebCore::MediaElementSession::wirelessVideoPlaybackDisabled): 37 (WebCore::MediaElementSession::setWirelessVideoPlaybackDisabled): 38 (WebCore::MediaElementSession::setHasPlaybackTargetAvailabilityListeners): 39 (WebCore::MediaElementSession::setPlaybackTarget): 40 (WebCore::MediaElementSession::targetAvailabilityChangedTimerFired): 41 (WebCore::MediaElementSession::externalOutputDeviceAvailableDidChange): 42 (WebCore::MediaElementSession::canPlayToWirelessPlaybackTarget): 43 (WebCore::MediaElementSession::isPlayingToWirelessPlaybackTarget): 44 (WebCore::MediaElementSession::setShouldPlayToPlaybackTarget): 45 (WebCore::MediaElementSession::mediaStateDidChange): 46 (WebCore::MediaElementSession::effectivePreloadForElement): 47 (WebCore::MediaElementSession::requiresFullscreenForVideoPlayback): 48 (WebCore::MediaElementSession::mediaEngineUpdated): 49 (WebCore::MediaElementSession::allowsAlternateFullscreen): 50 (WebCore::MediaElementSession::maximumMediaSourceBufferSize): 51 * html/MediaElementSession.h: Renamed from Source/WebCore/html/HTMLMediaSession.h. 52 * testing/Internals.cpp: 53 (WebCore::Internals::setMediaElementRestrictions): 54 (WebCore::Internals::setAudioContextRestrictions): 55 1 56 2015-05-28 Myles C. Maxfield <mmaxfield@apple.com> 2 57 -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
r184895 r184966 15099 15099 <ClCompile Include="..\html\DOMTokenList.cpp" /> 15100 15100 <ClCompile Include="..\html\DOMURL.cpp" /> 15101 <ClCompile Include="..\html\ HTMLMediaSession.cpp" />15101 <ClCompile Include="..\html\MediaElementSession.cpp" /> 15102 15102 <ClCompile Include="..\html\EmailInputType.cpp" /> 15103 15103 <ClCompile Include="..\html\PublicURLManager.cpp" /> -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
r184895 r184966 7031 7031 <Filter>Modules\gamepad</Filter> 7032 7032 </ClCompile> 7033 <ClCompile Include="..\html\ HTMLMediaSession.cpp">7033 <ClCompile Include="..\html\MediaElementSession.cpp"> 7034 7034 <Filter>html</Filter> 7035 7035 </ClCompile> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r184895 r184966 352 352 07F944161864D046005D31CB /* MediaSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CDAE8C081746B95700532D78 /* MediaSessionManager.h */; settings = {ATTRIBUTES = (Private, ); }; }; 353 353 07FBDE2C18FED178001A7CFF /* JSDataCueCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07FBDE2B18FED178001A7CFF /* JSDataCueCustom.cpp */; }; 354 07FE99DC18807A7D00256648 /* HTMLMediaSession.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07FE99DA18807A7D00256648 /* HTMLMediaSession.cpp */; };355 07FE99DD18807A7D00256648 /* HTMLMediaSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 07FE99DB18807A7D00256648 /* HTMLMediaSession.h */; settings = {ATTRIBUTES = (Private, ); }; };354 07FE99DC18807A7D00256648 /* MediaElementSession.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07FE99DA18807A7D00256648 /* MediaElementSession.cpp */; }; 355 07FE99DD18807A7D00256648 /* MediaElementSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 07FE99DB18807A7D00256648 /* MediaElementSession.h */; settings = {ATTRIBUTES = (Private, ); }; }; 356 356 07FFDE68181AED420072D409 /* MediaStreamTrackPrivate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07FFDE66181AED420072D409 /* MediaStreamTrackPrivate.cpp */; }; 357 357 07FFDE69181AED420072D409 /* MediaStreamTrackPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 07FFDE67181AED420072D409 /* MediaStreamTrackPrivate.h */; }; … … 7404 7404 07F876831AD4A94500905849 /* MediaPlaybackTargetContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaPlaybackTargetContext.h; sourceTree = "<group>"; }; 7405 7405 07FBDE2B18FED178001A7CFF /* JSDataCueCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDataCueCustom.cpp; sourceTree = "<group>"; }; 7406 07FE99DA18807A7D00256648 /* HTMLMediaSession.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLMediaSession.cpp; sourceTree = "<group>"; };7407 07FE99DB18807A7D00256648 /* HTMLMediaSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLMediaSession.h; sourceTree = "<group>"; };7406 07FE99DA18807A7D00256648 /* MediaElementSession.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaElementSession.cpp; sourceTree = "<group>"; }; 7407 07FE99DB18807A7D00256648 /* MediaElementSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaElementSession.h; sourceTree = "<group>"; }; 7408 7408 07FFDE66181AED420072D409 /* MediaStreamTrackPrivate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaStreamTrackPrivate.cpp; sourceTree = "<group>"; }; 7409 7409 07FFDE67181AED420072D409 /* MediaStreamTrackPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamTrackPrivate.h; sourceTree = "<group>"; }; … … 18157 18157 E44613940CD6331000FADA75 /* HTMLMediaElement.idl */, 18158 18158 CD5209E51B0BD9E10077184E /* HTMLMediaElementEnums.h */, 18159 07FE99DA18807A7D00256648 /* HTMLMediaSession.cpp */,18160 07FE99DB18807A7D00256648 /* HTMLMediaSession.h */,18161 18159 A8EA79EC0A1916DF00A8EF5F /* HTMLMenuElement.cpp */, 18162 18160 A8EA79E80A1916DF00A8EF5F /* HTMLMenuElement.h */, … … 18297 18295 97205AB31239291000B17380 /* MediaDocument.cpp */, 18298 18296 97205AB41239291000B17380 /* MediaDocument.h */, 18297 07FE99DA18807A7D00256648 /* MediaElementSession.cpp */, 18298 07FE99DB18807A7D00256648 /* MediaElementSession.h */, 18299 18299 E446139B0CD6331000FADA75 /* MediaError.h */, 18300 18300 E446139C0CD6331000FADA75 /* MediaError.idl */, … … 24896 24896 E44613A50CD6331000FADA75 /* HTMLMediaElement.h in Headers */, 24897 24897 0779BF0E18453168000B6AE7 /* HTMLMediaElementMediaStream.h in Headers */, 24898 07FE99DD18807A7D00256648 /* HTMLMediaSession.h in Headers */,24899 24898 A8EA79F40A1916DF00A8EF5F /* HTMLMenuElement.h in Headers */, 24900 24899 2BE8E2C712A589EC00FAD550 /* HTMLMetaCharsetParser.h in Headers */, … … 25775 25774 97205AB81239291000B17380 /* MediaDocument.h in Headers */, 25776 25775 FD6F252D13F5EF0E0065165F /* MediaElementAudioSourceNode.h in Headers */, 25776 07FE99DD18807A7D00256648 /* MediaElementSession.h in Headers */, 25777 25777 E44613AD0CD6331000FADA75 /* MediaError.h in Headers */, 25778 25778 4E1959220A39DABA00220FE5 /* MediaFeatureNames.h in Headers */, … … 28403 28403 E44613A40CD6331000FADA75 /* HTMLMediaElement.cpp in Sources */, 28404 28404 0779BF0D18453168000B6AE7 /* HTMLMediaElementMediaStream.cpp in Sources */, 28405 07FE99DC18807A7D00256648 /* HTMLMediaSession.cpp in Sources */,28406 28405 A8EA79F80A1916DF00A8EF5F /* HTMLMenuElement.cpp in Sources */, 28407 28406 2BE8E2C912A58A0100FAD550 /* HTMLMetaCharsetParser.cpp in Sources */, … … 29356 29355 97205AB71239291000B17380 /* MediaDocument.cpp in Sources */, 29357 29356 FD6F252C13F5EF0E0065165F /* MediaElementAudioSourceNode.cpp in Sources */, 29357 07FE99DC18807A7D00256648 /* MediaElementSession.cpp in Sources */, 29358 29358 4E1959210A39DABA00220FE5 /* MediaFeatureNames.cpp in Sources */, 29359 29359 07A6D1EB1491137700051D0C /* MediaFragmentURIParser.cpp in Sources */, -
trunk/Source/WebCore/html/HTMLMediaElement.cpp
r184814 r184966 352 352 , m_audioSourceNode(0) 353 353 #endif 354 , m_mediaSession(std::make_unique< HTMLMediaSession>(*this))354 , m_mediaSession(std::make_unique<MediaElementSession>(*this)) 355 355 , m_reportedExtraMemoryCost(0) 356 356 #if ENABLE(MEDIA_STREAM) … … 361 361 setHasCustomStyleResolveCallbacks(); 362 362 363 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureForFullscreen);364 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequirePageConsentToLoadMedia);363 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForFullscreen); 364 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequirePageConsentToLoadMedia); 365 365 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 366 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureToAutoplayToExternalDevice);366 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureToAutoplayToExternalDevice); 367 367 #endif 368 368 … … 371 371 #if !PLATFORM(IOS) 372 372 if (settings && settings->requiresUserGestureForMediaPlayback()) { 373 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureForRateChange);374 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureForLoad);373 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForRateChange); 374 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForLoad); 375 375 } 376 376 #else … … 379 379 // Allow autoplay in a MediaDocument that is not in an iframe. 380 380 if (document.ownerElement() || !document.isMediaDocument()) 381 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureForRateChange);381 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForRateChange); 382 382 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 383 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureToShowPlaybackTargetPicker);383 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureToShowPlaybackTargetPicker); 384 384 #endif 385 385 } else { 386 386 // Relax RequireUserGestureForFullscreen when requiresUserGestureForMediaPlayback is not set: 387 m_mediaSession->removeBehaviorRestriction( HTMLMediaSession::RequireUserGestureForFullscreen);387 m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequireUserGestureForFullscreen); 388 388 } 389 389 #endif // !PLATFORM(IOS) 390 390 391 391 if (settings && settings->audioPlaybackRequiresUserGesture()) 392 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequireUserGestureForAudioRateChange);392 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForAudioRateChange); 393 393 394 394 #if ENABLE(VIDEO_TRACK) … … 1022 1022 // playlist that starts in a foreground tab to continue automatically if the tab is subsequently 1023 1023 // put into the background. 1024 m_mediaSession->removeBehaviorRestriction( HTMLMediaSession::RequirePageConsentToLoadMedia);1024 m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequirePageConsentToLoadMedia); 1025 1025 1026 1026 #if ENABLE(VIDEO_TRACK) … … 1201 1201 #if ENABLE(MEDIA_STREAM) 1202 1202 if (MediaStreamRegistry::registry().lookup(url.string())) 1203 m_mediaSession->removeBehaviorRestriction( HTMLMediaSession::RequireUserGestureForRateChange);1203 m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequireUserGestureForRateChange); 1204 1204 #endif 1205 1205 … … 4836 4836 case PageCache: 4837 4837 stop(); 4838 m_mediaSession->addBehaviorRestriction( HTMLMediaSession::RequirePageConsentToResumeMedia);4838 m_mediaSession->addBehaviorRestriction(MediaElementSession::RequirePageConsentToResumeMedia); 4839 4839 break; 4840 4840 case DocumentWillBePaused: … … 4858 4858 setPausedInternal(false); 4859 4859 4860 m_mediaSession->removeBehaviorRestriction( HTMLMediaSession::RequirePageConsentToResumeMedia);4860 m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequirePageConsentToResumeMedia); 4861 4861 4862 4862 if (m_error && m_error->code() == MediaError::MEDIA_ERR_ABORTED) { … … 5963 5963 void HTMLMediaElement::removeBehaviorsRestrictionsAfterFirstUserGesture() 5964 5964 { 5965 HTMLMediaSession::BehaviorRestrictions restrictionsToRemove = HTMLMediaSession::RequireUserGestureForLoad5965 MediaElementSession::BehaviorRestrictions restrictionsToRemove = MediaElementSession::RequireUserGestureForLoad 5966 5966 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 5967 | HTMLMediaSession::RequireUserGestureToShowPlaybackTargetPicker5968 | HTMLMediaSession::RequireUserGestureToAutoplayToExternalDevice5969 #endif 5970 | HTMLMediaSession::RequireUserGestureForLoad5971 | HTMLMediaSession::RequireUserGestureForRateChange5972 | HTMLMediaSession::RequireUserGestureForAudioRateChange5973 | HTMLMediaSession::RequireUserGestureForFullscreen;5967 | MediaElementSession::RequireUserGestureToShowPlaybackTargetPicker 5968 | MediaElementSession::RequireUserGestureToAutoplayToExternalDevice 5969 #endif 5970 | MediaElementSession::RequireUserGestureForLoad 5971 | MediaElementSession::RequireUserGestureForRateChange 5972 | MediaElementSession::RequireUserGestureForAudioRateChange 5973 | MediaElementSession::RequireUserGestureForFullscreen; 5974 5974 m_mediaSession->removeBehaviorRestriction(restrictionsToRemove); 5975 5975 } … … 6296 6296 state |= RequiresPlaybackTargetMonitoring; 6297 6297 6298 bool requireUserGesture = m_mediaSession->hasBehaviorRestriction( HTMLMediaSession::RequireUserGestureToAutoplayToExternalDevice);6298 bool requireUserGesture = m_mediaSession->hasBehaviorRestriction(MediaElementSession::RequireUserGestureToAutoplayToExternalDevice); 6299 6299 if (hasActiveVideo && (!requireUserGesture || (hasAudio && !loop()))) 6300 6300 state |= ExternalDeviceAutoPlayCandidate; -
trunk/Source/WebCore/html/HTMLMediaElement.h
r184799 r184966 33 33 #include "GenericTaskQueue.h" 34 34 #include "HTMLMediaElementEnums.h" 35 #include "HTMLMediaSession.h"36 35 #include "MediaCanStartListener.h" 37 36 #include "MediaControllerInterface.h" 37 #include "MediaElementSession.h" 38 38 #include "MediaProducer.h" 39 39 #include "PageThrottler.h" … … 417 417 418 418 MediaPlayerEnums::Preload preloadValue() const { return m_preload; } 419 HTMLMediaSession& mediaSession() const { return *m_mediaSession; }419 MediaElementSession& mediaSession() const { return *m_mediaSession; } 420 420 421 421 #if ENABLE(MEDIA_CONTROLS_SCRIPT) … … 895 895 #endif 896 896 897 std::unique_ptr< HTMLMediaSession> m_mediaSession;897 std::unique_ptr<MediaElementSession> m_mediaSession; 898 898 PageActivityAssertionToken m_activityToken; 899 899 size_t m_reportedExtraMemoryCost; -
trunk/Source/WebCore/html/MediaElementSession.cpp
r184965 r184966 28 28 #if ENABLE(VIDEO) 29 29 30 #include " HTMLMediaSession.h"30 #include "MediaElementSession.h" 31 31 32 32 #include "Chrome.h" … … 52 52 53 53 #if !LOG_DISABLED 54 static String restrictionName( HTMLMediaSession::BehaviorRestrictions restriction)54 static String restrictionName(MediaElementSession::BehaviorRestrictions restriction) 55 55 { 56 56 StringBuilder restrictionBuilder; 57 57 #define CASE(restrictionType) \ 58 if (restriction & HTMLMediaSession::restrictionType) { \58 if (restriction & MediaElementSession::restrictionType) { \ 59 59 if (!restrictionBuilder.isEmpty()) \ 60 60 restrictionBuilder.append(", "); \ … … 79 79 #endif 80 80 81 HTMLMediaSession::HTMLMediaSession(MediaSessionClient& client)81 MediaElementSession::MediaElementSession(MediaSessionClient& client) 82 82 : MediaSession(client) 83 83 , m_restrictions(NoRestrictions) 84 84 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 85 , m_targetAvailabilityChangedTimer(*this, & HTMLMediaSession::targetAvailabilityChangedTimerFired)86 #endif 87 { 88 } 89 90 void HTMLMediaSession::registerWithDocument(const HTMLMediaElement& element)85 , m_targetAvailabilityChangedTimer(*this, &MediaElementSession::targetAvailabilityChangedTimerFired) 86 #endif 87 { 88 } 89 90 void MediaElementSession::registerWithDocument(const HTMLMediaElement& element) 91 91 { 92 92 #if ENABLE(WIRELESS_PLAYBACK_TARGET) … … 97 97 } 98 98 99 void HTMLMediaSession::unregisterWithDocument(const HTMLMediaElement& element)99 void MediaElementSession::unregisterWithDocument(const HTMLMediaElement& element) 100 100 { 101 101 #if ENABLE(WIRELESS_PLAYBACK_TARGET) … … 106 106 } 107 107 108 void HTMLMediaSession::addBehaviorRestriction(BehaviorRestrictions restriction)109 { 110 LOG(Media, " HTMLMediaSession::addBehaviorRestriction - adding %s", restrictionName(restriction).utf8().data());108 void MediaElementSession::addBehaviorRestriction(BehaviorRestrictions restriction) 109 { 110 LOG(Media, "MediaElementSession::addBehaviorRestriction - adding %s", restrictionName(restriction).utf8().data()); 111 111 m_restrictions |= restriction; 112 112 } 113 113 114 void HTMLMediaSession::removeBehaviorRestriction(BehaviorRestrictions restriction)115 { 116 LOG(Media, " HTMLMediaSession::removeBehaviorRestriction - removing %s", restrictionName(restriction).utf8().data());114 void MediaElementSession::removeBehaviorRestriction(BehaviorRestrictions restriction) 115 { 116 LOG(Media, "MediaElementSession::removeBehaviorRestriction - removing %s", restrictionName(restriction).utf8().data()); 117 117 m_restrictions &= ~restriction; 118 118 } 119 119 120 bool HTMLMediaSession::playbackPermitted(const HTMLMediaElement& element) const120 bool MediaElementSession::playbackPermitted(const HTMLMediaElement& element) const 121 121 { 122 122 if (m_restrictions & RequireUserGestureForRateChange && !ScriptController::processingUserGesture()) { 123 LOG(Media, " HTMLMediaSession::playbackPermitted - returning FALSE");123 LOG(Media, "MediaElementSession::playbackPermitted - returning FALSE"); 124 124 return false; 125 125 } 126 126 127 127 if (m_restrictions & RequireUserGestureForAudioRateChange && element.hasAudio() && !ScriptController::processingUserGesture()) { 128 LOG(Media, " HTMLMediaSession::playbackPermitted - returning FALSE");129 return false; 130 } 131 132 return true; 133 } 134 135 bool HTMLMediaSession::dataLoadingPermitted(const HTMLMediaElement&) const128 LOG(Media, "MediaElementSession::playbackPermitted - returning FALSE"); 129 return false; 130 } 131 132 return true; 133 } 134 135 bool MediaElementSession::dataLoadingPermitted(const HTMLMediaElement&) const 136 136 { 137 137 if (m_restrictions & RequireUserGestureForLoad && !ScriptController::processingUserGesture()) { 138 LOG(Media, " HTMLMediaSession::dataLoadingPermitted - returning FALSE");139 return false; 140 } 141 142 return true; 143 } 144 145 bool HTMLMediaSession::fullscreenPermitted(const HTMLMediaElement&) const138 LOG(Media, "MediaElementSession::dataLoadingPermitted - returning FALSE"); 139 return false; 140 } 141 142 return true; 143 } 144 145 bool MediaElementSession::fullscreenPermitted(const HTMLMediaElement&) const 146 146 { 147 147 if (m_restrictions & RequireUserGestureForFullscreen && !ScriptController::processingUserGesture()) { 148 LOG(Media, " HTMLMediaSession::fullscreenPermitted - returning FALSE");149 return false; 150 } 151 152 return true; 153 } 154 155 bool HTMLMediaSession::pageAllowsDataLoading(const HTMLMediaElement& element) const148 LOG(Media, "MediaElementSession::fullscreenPermitted - returning FALSE"); 149 return false; 150 } 151 152 return true; 153 } 154 155 bool MediaElementSession::pageAllowsDataLoading(const HTMLMediaElement& element) const 156 156 { 157 157 Page* page = element.document().page(); 158 158 if (m_restrictions & RequirePageConsentToLoadMedia && page && !page->canStartMedia()) { 159 LOG(Media, " HTMLMediaSession::pageAllowsDataLoading - returning FALSE");160 return false; 161 } 162 163 return true; 164 } 165 166 bool HTMLMediaSession::pageAllowsPlaybackAfterResuming(const HTMLMediaElement& element) const159 LOG(Media, "MediaElementSession::pageAllowsDataLoading - returning FALSE"); 160 return false; 161 } 162 163 return true; 164 } 165 166 bool MediaElementSession::pageAllowsPlaybackAfterResuming(const HTMLMediaElement& element) const 167 167 { 168 168 Page* page = element.document().page(); 169 169 if (m_restrictions & RequirePageConsentToResumeMedia && page && !page->canStartMedia()) { 170 LOG(Media, " HTMLMediaSession::pageAllowsPlaybackAfterResuming - returning FALSE");171 return false; 172 } 173 174 return true; 175 } 176 177 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 178 void HTMLMediaSession::showPlaybackTargetPicker(const HTMLMediaElement& element)179 { 180 LOG(Media, " HTMLMediaSession::showPlaybackTargetPicker");170 LOG(Media, "MediaElementSession::pageAllowsPlaybackAfterResuming - returning FALSE"); 171 return false; 172 } 173 174 return true; 175 } 176 177 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 178 void MediaElementSession::showPlaybackTargetPicker(const HTMLMediaElement& element) 179 { 180 LOG(Media, "MediaElementSession::showPlaybackTargetPicker"); 181 181 182 182 if (m_restrictions & RequireUserGestureToShowPlaybackTargetPicker && !ScriptController::processingUserGesture()) { 183 LOG(Media, " HTMLMediaSession::showPlaybackTargetPicker - returning early because of permissions");183 LOG(Media, "MediaElementSession::showPlaybackTargetPicker - returning early because of permissions"); 184 184 return; 185 185 } 186 186 187 187 if (!element.document().page()) { 188 LOG(Media, " HTMLMediaSession::showingPlaybackTargetPickerPermitted - returning early because page is NULL");188 LOG(Media, "MediaElementSession::showingPlaybackTargetPickerPermitted - returning early because page is NULL"); 189 189 return; 190 190 } … … 192 192 #if !PLATFORM(IOS) 193 193 if (!element.hasVideo()) { 194 LOG(Media, " HTMLMediaSession::showPlaybackTargetPicker - returning early because element has no video");194 LOG(Media, "MediaElementSession::showPlaybackTargetPicker - returning early because element has no video"); 195 195 return; 196 196 } … … 200 200 } 201 201 202 bool HTMLMediaSession::hasWirelessPlaybackTargets(const HTMLMediaElement&) const202 bool MediaElementSession::hasWirelessPlaybackTargets(const HTMLMediaElement&) const 203 203 { 204 204 #if PLATFORM(IOS) … … 207 207 #endif 208 208 209 LOG(Media, " HTMLMediaSession::hasWirelessPlaybackTargets - returning %s", m_hasPlaybackTargets ? "TRUE" : "FALSE");209 LOG(Media, "MediaElementSession::hasWirelessPlaybackTargets - returning %s", m_hasPlaybackTargets ? "TRUE" : "FALSE"); 210 210 211 211 return m_hasPlaybackTargets; 212 212 } 213 213 214 bool HTMLMediaSession::wirelessVideoPlaybackDisabled(const HTMLMediaElement& element) const214 bool MediaElementSession::wirelessVideoPlaybackDisabled(const HTMLMediaElement& element) const 215 215 { 216 216 Settings* settings = element.document().settings(); 217 217 if (!settings || !settings->allowsAirPlayForMediaPlayback()) { 218 LOG(Media, " HTMLMediaSession::wirelessVideoPlaybackDisabled - returning TRUE because of settings");218 LOG(Media, "MediaElementSession::wirelessVideoPlaybackDisabled - returning TRUE because of settings"); 219 219 return true; 220 220 } 221 221 222 222 if (element.fastHasAttribute(HTMLNames::webkitwirelessvideoplaybackdisabledAttr)) { 223 LOG(Media, " HTMLMediaSession::wirelessVideoPlaybackDisabled - returning TRUE because of attribute");223 LOG(Media, "MediaElementSession::wirelessVideoPlaybackDisabled - returning TRUE because of attribute"); 224 224 return true; 225 225 } … … 228 228 String legacyAirplayAttributeValue = element.fastGetAttribute(HTMLNames::webkitairplayAttr); 229 229 if (equalIgnoringCase(legacyAirplayAttributeValue, "deny")) { 230 LOG(Media, " HTMLMediaSession::wirelessVideoPlaybackDisabled - returning TRUE because of legacy attribute");230 LOG(Media, "MediaElementSession::wirelessVideoPlaybackDisabled - returning TRUE because of legacy attribute"); 231 231 return true; 232 232 } 233 233 if (equalIgnoringCase(legacyAirplayAttributeValue, "allow")) { 234 LOG(Media, " HTMLMediaSession::wirelessVideoPlaybackDisabled - returning FALSE because of legacy attribute");234 LOG(Media, "MediaElementSession::wirelessVideoPlaybackDisabled - returning FALSE because of legacy attribute"); 235 235 return false; 236 236 } … … 242 242 243 243 bool disabled = player->wirelessVideoPlaybackDisabled(); 244 LOG(Media, " HTMLMediaSession::wirelessVideoPlaybackDisabled - returning %s because media engine says so", disabled ? "TRUE" : "FALSE");244 LOG(Media, "MediaElementSession::wirelessVideoPlaybackDisabled - returning %s because media engine says so", disabled ? "TRUE" : "FALSE"); 245 245 246 246 return disabled; 247 247 } 248 248 249 void HTMLMediaSession::setWirelessVideoPlaybackDisabled(const HTMLMediaElement& element, bool disabled)249 void MediaElementSession::setWirelessVideoPlaybackDisabled(const HTMLMediaElement& element, bool disabled) 250 250 { 251 251 if (disabled) … … 258 258 return; 259 259 260 LOG(Media, " HTMLMediaSession::setWirelessVideoPlaybackDisabled - disabled %s", disabled ? "TRUE" : "FALSE");260 LOG(Media, "MediaElementSession::setWirelessVideoPlaybackDisabled - disabled %s", disabled ? "TRUE" : "FALSE"); 261 261 player->setWirelessVideoPlaybackDisabled(disabled); 262 262 } 263 263 264 void HTMLMediaSession::setHasPlaybackTargetAvailabilityListeners(const HTMLMediaElement& element, bool hasListeners)265 { 266 LOG(Media, " HTMLMediaSession::setHasPlaybackTargetAvailabilityListeners - hasListeners %s", hasListeners ? "TRUE" : "FALSE");264 void MediaElementSession::setHasPlaybackTargetAvailabilityListeners(const HTMLMediaElement& element, bool hasListeners) 265 { 266 LOG(Media, "MediaElementSession::setHasPlaybackTargetAvailabilityListeners - hasListeners %s", hasListeners ? "TRUE" : "FALSE"); 267 267 268 268 #if PLATFORM(IOS) … … 276 276 } 277 277 278 void HTMLMediaSession::setPlaybackTarget(Ref<MediaPlaybackTarget>&& device)278 void MediaElementSession::setPlaybackTarget(Ref<MediaPlaybackTarget>&& device) 279 279 { 280 280 m_playbackTarget = WTF::move(device); … … 282 282 } 283 283 284 void HTMLMediaSession::targetAvailabilityChangedTimerFired()284 void MediaElementSession::targetAvailabilityChangedTimerFired() 285 285 { 286 286 client().wirelessRoutesAvailableDidChange(); 287 287 } 288 288 289 void HTMLMediaSession::externalOutputDeviceAvailableDidChange(bool hasTargets)289 void MediaElementSession::externalOutputDeviceAvailableDidChange(bool hasTargets) 290 290 { 291 291 if (m_hasPlaybackTargets == hasTargets) 292 292 return; 293 293 294 LOG(Media, " HTMLMediaSession::externalOutputDeviceAvailableDidChange(%p) - hasTargets %s", this, hasTargets ? "TRUE" : "FALSE");294 LOG(Media, "MediaElementSession::externalOutputDeviceAvailableDidChange(%p) - hasTargets %s", this, hasTargets ? "TRUE" : "FALSE"); 295 295 296 296 m_hasPlaybackTargets = hasTargets; … … 298 298 } 299 299 300 bool HTMLMediaSession::canPlayToWirelessPlaybackTarget() const300 bool MediaElementSession::canPlayToWirelessPlaybackTarget() const 301 301 { 302 302 if (!m_playbackTarget || !m_playbackTarget->hasActiveRoute()) … … 306 306 } 307 307 308 bool HTMLMediaSession::isPlayingToWirelessPlaybackTarget() const308 bool MediaElementSession::isPlayingToWirelessPlaybackTarget() const 309 309 { 310 310 if (!m_playbackTarget || !m_playbackTarget->hasActiveRoute()) … … 314 314 } 315 315 316 void HTMLMediaSession::setShouldPlayToPlaybackTarget(bool shouldPlay)317 { 318 LOG(Media, " HTMLMediaSession::setShouldPlayToPlaybackTarget - shouldPlay %s", shouldPlay ? "TRUE" : "FALSE");316 void MediaElementSession::setShouldPlayToPlaybackTarget(bool shouldPlay) 317 { 318 LOG(Media, "MediaElementSession::setShouldPlayToPlaybackTarget - shouldPlay %s", shouldPlay ? "TRUE" : "FALSE"); 319 319 m_shouldPlayToPlaybackTarget = shouldPlay; 320 320 client().setShouldPlayToPlaybackTarget(shouldPlay); 321 321 } 322 322 323 void HTMLMediaSession::mediaStateDidChange(const HTMLMediaElement& element, MediaProducer::MediaStateFlags state)323 void MediaElementSession::mediaStateDidChange(const HTMLMediaElement& element, MediaProducer::MediaStateFlags state) 324 324 { 325 325 element.document().playbackTargetPickerClientStateDidChange(*this, state); … … 327 327 #endif 328 328 329 MediaPlayer::Preload HTMLMediaSession::effectivePreloadForElement(const HTMLMediaElement& element) const329 MediaPlayer::Preload MediaElementSession::effectivePreloadForElement(const HTMLMediaElement& element) const 330 330 { 331 331 MediaSessionManager::SessionRestrictions restrictions = MediaSessionManager::sharedManager().restrictions(mediaType()); … … 343 343 } 344 344 345 bool HTMLMediaSession::requiresFullscreenForVideoPlayback(const HTMLMediaElement& element) const345 bool MediaElementSession::requiresFullscreenForVideoPlayback(const HTMLMediaElement& element) const 346 346 { 347 347 if (!MediaSessionManager::sharedManager().sessionRestrictsInlineVideoPlayback(*this)) … … 363 363 } 364 364 365 void HTMLMediaSession::mediaEngineUpdated(const HTMLMediaElement& element)366 { 367 LOG(Media, " HTMLMediaSession::mediaEngineUpdated");365 void MediaElementSession::mediaEngineUpdated(const HTMLMediaElement& element) 366 { 367 LOG(Media, "MediaElementSession::mediaEngineUpdated"); 368 368 369 369 #if ENABLE(WIRELESS_PLAYBACK_TARGET) … … 380 380 } 381 381 382 bool HTMLMediaSession::allowsAlternateFullscreen(const HTMLMediaElement& element) const382 bool MediaElementSession::allowsAlternateFullscreen(const HTMLMediaElement& element) const 383 383 { 384 384 Settings* settings = element.document().settings(); … … 390 390 const unsigned fiveMinutesStereoAudio = 14 * 1024 * 1024; // 14 MB is approximately 5 minutes of 384kbps content. 391 391 392 size_t HTMLMediaSession::maximumMediaSourceBufferSize(const SourceBuffer& buffer) const392 size_t MediaElementSession::maximumMediaSourceBufferSize(const SourceBuffer& buffer) const 393 393 { 394 394 // A good quality 1080p video uses 8,000 kbps and stereo audio uses 384 kbps, so assume 95% for video and 5% for audio. -
trunk/Source/WebCore/html/MediaElementSession.h
r184965 r184966 24 24 */ 25 25 26 #ifndef HTMLMediaSession_h27 #define HTMLMediaSession_h26 #ifndef MediaElementSession_h 27 #define MediaElementSession_h 28 28 29 29 #if ENABLE(VIDEO) … … 39 39 class SourceBuffer; 40 40 41 class HTMLMediaSession final : public MediaSession {41 class MediaElementSession final : public MediaSession { 42 42 WTF_MAKE_FAST_ALLOCATED; 43 43 public: 44 explicit HTMLMediaSession(MediaSessionClient&);45 virtual ~ HTMLMediaSession() { }44 explicit MediaElementSession(MediaSessionClient&); 45 virtual ~MediaElementSession() { } 46 46 47 47 void registerWithDocument(const HTMLMediaElement&); … … 130 130 } 131 131 132 #endif // Media Session_h132 #endif // MediaElementSession_h 133 133 134 134 #endif // ENABLE(VIDEO) -
trunk/Source/WebCore/testing/Internals.cpp
r184799 r184966 2649 2649 } 2650 2650 2651 HTMLMediaSession::BehaviorRestrictions restrictions = element->mediaSession().behaviorRestrictions();2651 MediaElementSession::BehaviorRestrictions restrictions = element->mediaSession().behaviorRestrictions(); 2652 2652 element->mediaSession().removeBehaviorRestriction(restrictions); 2653 2653 2654 restrictions = HTMLMediaSession::NoRestrictions;2654 restrictions = MediaElementSession::NoRestrictions; 2655 2655 2656 2656 Vector<String> restrictionsArray; … … 2658 2658 for (auto& restrictionString : restrictionsArray) { 2659 2659 if (equalIgnoringCase(restrictionString, "NoRestrictions")) 2660 restrictions |= HTMLMediaSession::NoRestrictions;2660 restrictions |= MediaElementSession::NoRestrictions; 2661 2661 if (equalIgnoringCase(restrictionString, "RequireUserGestureForLoad")) 2662 restrictions |= HTMLMediaSession::RequireUserGestureForLoad;2662 restrictions |= MediaElementSession::RequireUserGestureForLoad; 2663 2663 if (equalIgnoringCase(restrictionString, "RequireUserGestureForRateChange")) 2664 restrictions |= HTMLMediaSession::RequireUserGestureForRateChange;2664 restrictions |= MediaElementSession::RequireUserGestureForRateChange; 2665 2665 if (equalIgnoringCase(restrictionString, "RequireUserGestureForFullscreen")) 2666 restrictions |= HTMLMediaSession::RequireUserGestureForFullscreen;2666 restrictions |= MediaElementSession::RequireUserGestureForFullscreen; 2667 2667 if (equalIgnoringCase(restrictionString, "RequirePageConsentToLoadMedia")) 2668 restrictions |= HTMLMediaSession::RequirePageConsentToLoadMedia;2668 restrictions |= MediaElementSession::RequirePageConsentToLoadMedia; 2669 2669 if (equalIgnoringCase(restrictionString, "RequirePageConsentToResumeMedia")) 2670 restrictions |= HTMLMediaSession::RequirePageConsentToResumeMedia;2670 restrictions |= MediaElementSession::RequirePageConsentToResumeMedia; 2671 2671 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 2672 2672 if (equalIgnoringCase(restrictionString, "RequireUserGestureToShowPlaybackTargetPicker")) 2673 restrictions |= HTMLMediaSession::RequireUserGestureToShowPlaybackTargetPicker;2673 restrictions |= MediaElementSession::RequireUserGestureToShowPlaybackTargetPicker; 2674 2674 if (equalIgnoringCase(restrictionString, "WirelessVideoPlaybackDisabled")) 2675 restrictions |= HTMLMediaSession::WirelessVideoPlaybackDisabled;2675 restrictions |= MediaElementSession::WirelessVideoPlaybackDisabled; 2676 2676 #endif 2677 2677 if (equalIgnoringCase(restrictionString, "RequireUserGestureForAudioRateChange")) 2678 restrictions |= HTMLMediaSession::RequireUserGestureForAudioRateChange;2678 restrictions |= MediaElementSession::RequireUserGestureForAudioRateChange; 2679 2679 } 2680 2680 element->mediaSession().addBehaviorRestriction(restrictions); … … 2728 2728 context->removeBehaviorRestriction(restrictions); 2729 2729 2730 restrictions = HTMLMediaSession::NoRestrictions;2730 restrictions = MediaElementSession::NoRestrictions; 2731 2731 2732 2732 Vector<String> restrictionsArray;
Note: See TracChangeset
for help on using the changeset viewer.