Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 057e00b5eeccc05da0746b9d8bcaff3211bd4d02
      
https://github.com/WebKit/WebKit/commit/057e00b5eeccc05da0746b9d8bcaff3211bd4d02
  Author: Eric Carlson <[email protected]>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M Source/WebCore/Headers.cmake
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/html/MediaElementSession.cpp
    A Source/WebCore/platform/audio/MediaSessionManagerInterface.h
    M Source/WebCore/platform/audio/PlatformMediaSession.h
    M Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp
    M Source/WebCore/platform/audio/PlatformMediaSessionManager.h
    M Source/WebCore/platform/audio/ios/MediaSessionHelperIOS.h
    M Source/WebCore/platform/audio/ios/MediaSessionHelperIOS.mm
    M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h
    M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm
    M Source/WebCore/testing/Internals.cpp
    M Source/WebKit/GPUProcess/media/ios/RemoteMediaSessionHelperProxy.cpp
    M Source/WebKit/GPUProcess/media/ios/RemoteMediaSessionHelperProxy.h

  Log Message:
  -----------
  Define a virtual MediaSessionManagerInterface interface and have 
PlatformMediaSessionManager derive from it
https://bugs.webkit.org/show_bug.cgi?id=291107
rdar://148623827

Reviewed by Andy Estes.

* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:

* Source/WebCore/html/MediaElementSession.cpp:
(WebCore::MediaElementSession::clientDataBufferingTimerFired):

* Source/WebCore/platform/audio/MediaSessionManagerInterface.h: Added.
(WebCore::MediaSessionManagerInterface::scheduleSessionStatusUpdate):
(WebCore::MediaSessionManagerInterface::hasActiveNowPlayingSession const):
(WebCore::MediaSessionManagerInterface::lastUpdatedNowPlayingTitle const):
(WebCore::MediaSessionManagerInterface::lastUpdatedNowPlayingDuration const):
(WebCore::MediaSessionManagerInterface::lastUpdatedNowPlayingElapsedTime const):
(WebCore::MediaSessionManagerInterface::lastUpdatedNowPlayingInfoUniqueIdentifier
 const):
(WebCore::MediaSessionManagerInterface::registeredAsNowPlayingApplication 
const):
(WebCore::MediaSessionManagerInterface::haveEverRegisteredAsNowPlayingApplication
 const):
(WebCore::MediaSessionManagerInterface::resetHaveEverRegisteredAsNowPlayingApplicationForTesting):
(WebCore::MediaSessionManagerInterface::prepareToSendUserMediaPermissionRequestForPage):
(WebCore::MediaSessionManagerInterface::sessionDidEndRemoteScrubbing):
(WebCore::MediaSessionManagerInterface::clientCharacteristicsChanged):
(WebCore::MediaSessionManagerInterface::configureWirelessTargetMonitoring):
(WebCore::MediaSessionManagerInterface::hasWirelessTargetsAvailable):
(WebCore::MediaSessionManagerInterface::isMonitoringWirelessTargets const):
(WebCore::MediaSessionManagerInterface::addSupportedCommand):
(WebCore::MediaSessionManagerInterface::removeSupportedCommand):
(WebCore::MediaSessionManagerInterface::supportedCommands const):
(WebCore::MediaSessionManagerInterface::resetSessionState):
(WebCore::MediaSessionManagerInterface::updatePresentingApplicationPIDIfNecessary):

* Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp:
(WebCore::PlatformMediaSessionManager::resetRestrictions):
(WebCore::PlatformMediaSessionManager::addRestriction):
(WebCore::PlatformMediaSessionManager::removeRestriction):
(WebCore::PlatformMediaSessionManager::restrictions):
(WebCore::PlatformMediaSessionManager::sessionWillBeginPlayback):
(WebCore::PlatformMediaSessionManager::applicationWillBecomeInactive):
(WebCore::PlatformMediaSessionManager::applicationDidBecomeActive):
(WebCore::PlatformMediaSessionManager::applicationDidEnterBackground):
(WebCore::PlatformMediaSessionManager::applicationWillEnterForeground):
(WebCore::PlatformMediaSessionManager::sessionIsPlayingToWirelessPlaybackTargetChanged):
* Source/WebCore/platform/audio/PlatformMediaSessionManager.h:
(WebCore::PlatformMediaSessionManager::scheduleSessionStatusUpdate): Deleted.
(WebCore::PlatformMediaSessionManager::hasActiveNowPlayingSession const): 
Deleted.
(WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingTitle const): 
Deleted.
(WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingDuration const): 
Deleted.
(WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingElapsedTime const): 
Deleted.
(WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingInfoUniqueIdentifier
 const): Deleted.
(WebCore::PlatformMediaSessionManager::registeredAsNowPlayingApplication 
const): Deleted.
(WebCore::PlatformMediaSessionManager::haveEverRegisteredAsNowPlayingApplication
 const): Deleted.
(WebCore::PlatformMediaSessionManager::prepareToSendUserMediaPermissionRequestForPage):
 Deleted.
(WebCore::PlatformMediaSessionManager::willIgnoreSystemInterruptions const): 
Deleted.
(WebCore::PlatformMediaSessionManager::setWillIgnoreSystemInterruptions): 
Deleted.
(WebCore::PlatformMediaSessionManager::sessionDidEndRemoteScrubbing): Deleted.
(WebCore::PlatformMediaSessionManager::clientCharacteristicsChanged): Deleted.
(WebCore::PlatformMediaSessionManager::configureWirelessTargetMonitoring): 
Deleted.
(WebCore::PlatformMediaSessionManager::hasWirelessTargetsAvailable): Deleted.
(WebCore::PlatformMediaSessionManager::isMonitoringWirelessTargets const): 
Deleted.
(WebCore::PlatformMediaSessionManager::isPlayingToAutomotiveHeadUnit const): 
Deleted.
(WebCore::PlatformMediaSessionManager::processIsSuspended const): Deleted.
(WebCore::PlatformMediaSessionManager::audioCaptureSourceStateChanged): Deleted.
(WebCore::PlatformMediaSessionManager::audioCaptureSourceCount const): Deleted.
(WebCore::PlatformMediaSessionManager::isInterrupted const): Deleted.
(WebCore::PlatformMediaSessionManager::addSupportedCommand): Deleted.
(WebCore::PlatformMediaSessionManager::removeSupportedCommand): Deleted.
(WebCore::PlatformMediaSessionManager::supportedCommands const): Deleted.
(WebCore::PlatformMediaSessionManager::resetHaveEverRegisteredAsNowPlayingApplicationForTesting):
 Deleted.
(WebCore::PlatformMediaSessionManager::resetSessionState): Deleted.
(WebCore::PlatformMediaSessionManager::isApplicationInBackground const): 
Deleted.
(WebCore::PlatformMediaSessionManager::updatePresentingApplicationPIDIfNecessary):
 Deleted.

* Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.h:
* Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm:
(WebCore::MediaSessionManagerCocoa::ensureCodecsRegistered):

* Source/WebCore/platform/audio/glib/MediaSessionManagerGLib.h

* Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h:
* Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm:
(WebCore::MediaSessionManageriOS::resetRestrictions):

* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::setMediaSessionRestrictions):
(WebCore::Internals::mediaSessionRestrictions const):

* Source/WebKit/GPUProcess/media/ios/RemoteMediaSessionHelperProxy.cpp:
(WebKit::RemoteMediaSessionHelperProxy::uiApplicationWillEnterForeground):
(WebKit::RemoteMediaSessionHelperProxy::uiApplicationDidEnterBackground):
(WebKit::RemoteMediaSessionHelperProxy::uiApplicationWillBecomeInactive):
(WebKit::RemoteMediaSessionHelperProxy::uiApplicationDidBecomeActive):
(WebKit::RemoteMediaSessionHelperProxy::applicationWillEnterForeground): 
Deleted.
(WebKit::RemoteMediaSessionHelperProxy::applicationDidEnterBackground): Deleted.
(WebKit::RemoteMediaSessionHelperProxy::applicationWillBecomeInactive): Deleted.
(WebKit::RemoteMediaSessionHelperProxy::applicationDidBecomeActive): Deleted.
* Source/WebKit/GPUProcess/media/ios/RemoteMediaSessionHelperProxy.h:

Canonical link: https://commits.webkit.org/293485@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to