Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d6e13005bc64e29c6caae02f4e5515b88500d6ba
https://github.com/WebKit/WebKit/commit/d6e13005bc64e29c6caae02f4e5515b88500d6ba
Author: Andy Estes <[email protected]>
Date: 2026-03-13 (Fri, 13 Mar 2026)
Changed paths:
M Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.h
M Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.mm
M Source/WebKit/Platform/ios/VideoPresentationInterfaceAVKit.h
M Source/WebKit/Platform/ios/VideoPresentationInterfaceAVKit.mm
M Source/WebKit/WebKitSwift/AVKit/WKSExperienceController.h
M Source/WebKit/WebKitSwift/AVKit/WKSExperienceController.swift
Log Message:
-----------
[iOS] Video does not render after exiting from AVExperienceController
fullscreen
https://bugs.webkit.org/show_bug.cgi?id=309878
rdar://172452254
Reviewed by Eric Carlson.
Fixed several problems related to exiting video fullscreen when using
AVExperienceController:
1. Stopped creating an unnecessary UIWindow when entering fullscreen that
prevented interacting
with the web view after exiting fullscreen.
2. Created a WebAVPlayerLayerView in VideoPresentationInterfaceAVKit and
properly transfered the
video view to/from it when entering/exiting fullscreen.
3. Implemented the WKSExperienceControllerDelegate method that is called when
exiting fullscreen
and wired it up to PlaybackSessionModel::exitFullscreen.
* Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.h:
* Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.mm:
(WebCore::VideoPresentationInterfaceIOS::shouldCreateWindow const):
(WebCore::VideoPresentationInterfaceIOS::doSetup):
* Source/WebKit/Platform/ios/VideoPresentationInterfaceAVKit.h:
* Source/WebKit/Platform/ios/VideoPresentationInterfaceAVKit.mm:
(-[WKExperienceControllerDelegate initWithModel:]):
(-[WKExperienceControllerDelegate experienceControllerDidExitFullscreen:]):
(WebKit::VideoPresentationInterfaceAVKit::fullscreenPlayerLayer):
(WebKit::VideoPresentationInterfaceAVKit::setupPlayerViewController):
(WebKit::VideoPresentationInterfaceAVKit::invalidatePlayerViewController):
* Source/WebKit/WebKitSwift/AVKit/WKSExperienceController.h:
* Source/WebKit/WebKitSwift/AVKit/WKSExperienceController.swift:
(WKSExperienceController.delegate):
Canonical link: https://commits.webkit.org/309236@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications