Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bb1d958caa857d4d81bc1b829acbaa86f0d12dad
https://github.com/WebKit/WebKit/commit/bb1d958caa857d4d81bc1b829acbaa86f0d12dad
Author: Jean-Yves Avenard <[email protected]>
Date: 2026-07-26 (Sun, 26 Jul 2026)
Changed paths:
M LayoutTests/platform/ios-site-isolation/TestExpectations
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/html/HTMLMediaElement.h
M Source/WebCore/platform/audio/AudioSession.h
M Source/WebKit/WebProcess/GPU/media/RemoteAudioSession.cpp
Log Message:
-----------
[site-isolation] media/audio-session-category-at-most-recent-playback.html is
a permanent failure
https://bugs.webkit.org/show_bug.cgi?id=320304
rdar://183238244
Reviewed by Eric Carlson.
HTMLMediaElement::playPlayer() took a one-shot synchronous snapshot of
m_categoryAtMostRecentPlayback and m_modeAtMostRecentPlayback; it was never read
again.
With site isolation, updating the category occurs asynchronously and the UIP
sends an IPC message with the new category. However, any changes wasn't
broadcast to clients.
We add a categoryDidChange() API to the AudioSessionConfigurationChangeObserver
and notify the HTMLMediaElement client of the category change.
Covered by existing test
* LayoutTests/platform/ios-site-isolation/TestExpectations:
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::categoryDidChange):
* Source/WebCore/html/HTMLMediaElement.h:
* Source/WebCore/platform/audio/AudioSession.h:
(WebCore::AudioSessionConfigurationChangeObserver::categoryDidChange):
* Source/WebKit/WebProcess/GPU/media/RemoteAudioSession.cpp:
(WebKit::RemoteAudioSession::setCategory):
Canonical link: https://commits.webkit.org/317945@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications