Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c30d02a4249dd3d959e0397fe5d2a1ebf15250c3
      
https://github.com/WebKit/WebKit/commit/c30d02a4249dd3d959e0397fe5d2a1ebf15250c3
  Author: Sihui Liu <[email protected]>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WebCore/platform/audio/AudioSession.cpp
    M Source/WebCore/platform/audio/AudioSession.h
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in
    M Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.cpp
    M Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.h
    M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.cpp
    M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.h
    M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.messages.in
    M 
Source/WebKit/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.h
    M Source/WebKit/WebProcess/GPU/GPUProcessConnection.cpp
    M Source/WebKit/WebProcess/WebProcess.cpp
    M Source/WebKit/WebProcess/WebProcess.h
    M Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.cpp
    M Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.h
    M Source/WebKitLegacy/mac/WebView/WebView.mm

  Log Message:
  -----------
  Annotate RemoteAudioSessionProxy message endpoints with feature flag
https://bugs.webkit.org/show_bug.cgi?id=280238
rdar://136540877

Reviewed by Eric Carlson.

Add a feature flag for guarding media playback functionalities and annotate 
RemoteAudioSessionProxy messages with it.
This means when media playback is disabled, web process should not be sending 
RemoteAudioSessionProxy messages to GPU
process.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/platform/audio/AudioSession.cpp:
(WebCore::dummyAudioSession):
(WebCore::AudioSession::enableMediaPlayback):
(WebCore::AudioSession::sharedSession):
* Source/WebCore/platform/audio/AudioSession.h:
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:
(WebKit::m_sharedPreferencesForWebProcess):
(WebKit::GPUConnectionToWebProcess::didClose):
(WebKit::GPUConnectionToWebProcess::updateSharedPreferencesForWebProcess):
(WebKit::GPUConnectionToWebProcess::enableMediaPlaybackIfNecessary):
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h:
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in:
* Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.cpp:
(WebKit::LocalAudioSessionRoutingArbitrator::create):
* Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.h:
* Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.cpp:
(WebKit::RemoteAudioSessionProxy::sharedPreferencesForWebProcess const):
* Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.h:
* Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.messages.in:
* Source/WebKit/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _audioRoutingArbitrationStatus]):
(-[WKWebView _audioRoutingArbitrationUpdateTime]):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::m_webPermissionController):
(WebKit::WebProcessProxy::shutDown):
(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch):
(WebKit::WebProcessProxy::enableMediaPlaybackIfNecessary):
(WebKit::WebProcessProxy::updateSharedPreferencesForWebProcess):
(WebKit::m_routingArbitrator): Deleted.
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Source/WebKit/WebProcess/GPU/GPUProcessConnection.cpp:
(WebKit::GPUProcessConnection::didClose):
(WebKit::GPUProcessConnection::beginRoutingArbitrationWithCategory):
(WebKit::GPUProcessConnection::endRoutingArbitration):
* Source/WebKit/WebProcess/WebProcess.cpp:
(WebKit::m_nonVisibleProcessMemoryCleanupTimer):
(WebKit::WebProcess::enableMediaPlayback):
* Source/WebKit/WebProcess/WebProcess.h:
* Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.cpp:
(WebKit::AudioSessionRoutingArbitrator::supplementName): Deleted.
* Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.h:
* Source/WebKitLegacy/mac/WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):

Canonical link: https://commits.webkit.org/284930@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