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

Reply via email to