Changeset 245199 in webkit
- Timestamp:
- May 10, 2019, 4:29:56 PM (7 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 edited
-
ChangeLog (modified) (1 diff)
-
html/MediaElementSession.cpp (modified) (1 diff)
-
platform/audio/PlatformMediaSessionManager.h (modified) (1 diff)
-
platform/audio/ios/MediaSessionManagerIOS.mm (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r245197 r245199 1 2019-05-10 Eric Carlson <eric.carlson@apple.com> 2 3 [iOS] HTMLMediaElement sometimes doesn't send 'webkitplaybacktargetavailabilitychanged' event 4 https://bugs.webkit.org/show_bug.cgi?id=197793 5 <rdar://problem/46429187> 6 7 Reviewed by Jer Noble. 8 9 * html/MediaElementSession.cpp: 10 (WebCore::MediaElementSession::MediaElementSession): Initialize m_hasPlaybackTargets. 11 12 * platform/audio/ios/MediaSessionManagerIOS.mm: 13 (WebCore::MediaSessionManageriOS::externalOutputDeviceAvailableDidChange): Log 14 target availability. 15 (-[WebMediaSessionHelper startMonitoringAirPlayRoutes]): Call the client 16 externalOutputDeviceAvailableDidChange method after the AVRouteDetector is available. 17 1 18 2019-05-09 Geoffrey Garen <ggaren@apple.com> 2 19 -
trunk/Source/WebCore/html/MediaElementSession.cpp
r245039 r245199 111 111 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 112 112 , m_targetAvailabilityChangedTimer(*this, &MediaElementSession::targetAvailabilityChangedTimerFired) 113 , m_hasPlaybackTargets(PlatformMediaSessionManager::sharedManager().hasWirelessTargetsAvailable()) 113 114 #endif 114 115 , m_mainContentCheckTimer(*this, &MediaElementSession::mainContentCheckTimerFired) -
trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.h
r243958 r245199 122 122 #if PLATFORM(IOS_FAMILY) 123 123 virtual void configureWireLessTargetMonitoring() { } 124 #endif 124 125 virtual bool hasWirelessTargetsAvailable() { return false; } 125 #endif126 126 127 127 void setCurrentSession(PlatformMediaSession&); -
trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm
r244704 r245199 184 184 { 185 185 BEGIN_BLOCK_OBJC_EXCEPTIONS 186 forEachSession([haveTargets = [m_objcObserver hasWirelessTargetsAvailable]] (PlatformMediaSession& session, size_t) { 186 187 auto haveTargets = [m_objcObserver hasWirelessTargetsAvailable]; 188 ALWAYS_LOG(LOGIDENTIFIER, haveTargets); 189 190 forEachSession([haveTargets] (PlatformMediaSession& session, size_t) { 187 191 session.externalOutputDeviceAvailableDidChange(haveTargets); 188 192 }); 193 189 194 END_BLOCK_OBJC_EXCEPTIONS 190 195 } … … 290 295 protectedSelf->_routeDetector.get().routeDetectionEnabled = protectedSelf->_monitoringAirPlayRoutes; 291 296 [[NSNotificationCenter defaultCenter] addObserver:protectedSelf selector:@selector(wirelessRoutesAvailableDidChange:) name:AVRouteDetectorMultipleRoutesDetectedDidChangeNotification object:protectedSelf->_routeDetector.get()]; 297 298 protectedSelf->_callback->externalOutputDeviceAvailableDidChange(); 292 299 END_BLOCK_OBJC_EXCEPTIONS 293 300 }
Note:
See TracChangeset
for help on using the changeset viewer.