Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 211b6e10b7238bbe628003074ecf6b15cf0e6b2b https://github.com/WebKit/WebKit/commit/211b6e10b7238bbe628003074ecf6b15cf0e6b2b Author: Etienne Segonzac <s...@apple.com> Date: 2024-03-07 (Thu, 07 Mar 2024)
Changed paths: M Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp M Source/WebKit/UIProcess/WebFullScreenManagerProxy.h M Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm M Source/WebKit/WebKitSwift/Preview/PreviewWindowController.swift M Source/WebKit/WebKitSwift/Preview/WKSPreviewWindowController.h Log Message: ----------- Handle `exitFullscreen()` when using Quick Look https://bugs.webkit.org/show_bug.cgi?id=270297 <rdar://120903037> Reviewed by Andy Estes and Aditya Keerthi. Use `PreviewApplication` instead or `Preview` in order to get access to programmatic close. Wire it to the `exitFullscreen` code path. * Source/WebKit/UIProcess/WebFullScreenManagerProxy.h: (WebKit::WebFullScreenManagerProxy::imageMIMEType const): Deleted. (WebKit::WebFullScreenManagerProxy::imageBuffer const): Deleted. (WebKit::WebFullScreenManagerProxy::isImageElement const): Hold the image buffer with a `RefPtr` instead of a `std::optional<Ref>`. * Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp: (WebKit::WebFullScreenManagerProxy::exitFullScreen): (WebKit::sharedQuickLookFileQueue): (WebKit::WebFullScreenManagerProxy::prepareQuickLookImageURL const): Add a method to generate local URLs instead of passing NSData to the Preview. * Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: (-[WKFullScreenWindowController exitFullScreen]): Clean-up PreviewWindowController on exit. (-[WKFullScreenWindowController _performSpatialFullScreenTransition:completionHandler:]): Switch to a URL-based QLItem. (-[WKFullScreenWindowController previewWindowControllerDidClose:]): (-[WKFullScreenWindowController previewWindowControllerDidClose]): Deleted. Check that the instance closing is the one we care about. (-[WKFullScreenWindowController provideDataForItem:]): Deleted. Remove the NSData-based delegate for QLItems. * Source/WebKit/WebKitSwift/Preview/WKSPreviewWindowController.h: Pass the WKSPreviewWindowController instance to the delegate. * Source/WebKit/WebKitSwift/Preview/PreviewWindowController.swift: (PreviewWindowController.item): (PreviewWindowController.previewSession): (PreviewWindowController.presentWindow): (PreviewWindowController.dismissWindow): (PreviewWindowController.previewApp): Deleted. Switch to `PreviewApplication`. Implement `dismissWindow`. Canonical link: https://commits.webkit.org/275778@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes