Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 143423245cd98f8c6c58fcdac4ebe581245b6651
      
https://github.com/WebKit/WebKit/commit/143423245cd98f8c6c58fcdac4ebe581245b6651
  Author: Jer Noble <[email protected]>
  Date:   2026-03-24 (Tue, 24 Mar 2026)

  Changed paths:
    M 
LayoutTests/media/encrypted-media/mock-navigator-requestMediaKeySystemAccess-in-background-expected.txt
    M 
LayoutTests/media/encrypted-media/mock-navigator-requestMediaKeySystemAccess-in-background.html
    M 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp
    M 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.h

  Log Message:
  -----------
  Cannot move to next item in playlist when in a background tab on 
music.apple.com
rdar://172676372
https://bugs.webkit.org/show_bug.cgi?id=310577

Reviewed by Eric Carlson.

In the original implementation of MediaKeySystemPermissionRequestManager in 
233845@main prevented
requestMediaKeySystemAccess() from working when the WebPage was in the 
background, and a subsequent
change in 236448@main caused the requests to be stored and serviced when the 
page went back to the
foreground. However, this left the issue where when a page which was previously 
in the background,
and was able to play media requested key system access would have that access 
left pending, preventing
users from playing the next item in a playlist.

If a particular port wants to block MediaKeySystemAccess from working when a 
page is in the background
it seems the right way to do so would be at the client level, and not within 
WebKit. This patch removes
the "canPlayMedia()" check before issuing the key access request.

* 
LayoutTests/media/encrypted-media/mock-navigator-requestMediaKeySystemAccess-in-background-expected.txt:
* 
LayoutTests/media/encrypted-media/mock-navigator-requestMediaKeySystemAccess-in-background.html:
* 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp:
(WebKit::MediaKeySystemPermissionRequestManager::startMediaKeySystemRequest):
(WebKit::MediaKeySystemPermissionRequestManager::cancelMediaKeySystemRequest):
(WebKit::MediaKeySystemPermissionRequestManager::mediaCanStart): Deleted.
* 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to