Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 01b33bd6c1891b229cfb9479aff5013146e05887
https://github.com/WebKit/WebKit/commit/01b33bd6c1891b229cfb9479aff5013146e05887
Author: Jer Noble <[email protected]>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M Source/WebCore/page/CaptionUserPreferences.h
M Source/WebCore/page/CaptionUserPreferencesMediaAF.cpp
M Source/WebCore/page/CaptionUserPreferencesMediaAF.h
M Source/WebCore/platform/cf/MediaAccessibilitySoftLink.cpp
M Source/WebCore/platform/cf/MediaAccessibilitySoftLink.h
M Source/WebCore/platform/cocoa/VideoPresentationModel.h
M Source/WebCore/platform/cocoa/WebAVPlayerLayer.mm
M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h
M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm
M Source/WebKit/UIProcess/Cocoa/_WKCaptionStyleMenuController.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h
M Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
M Source/WebKit/UIProcess/ios/_WKCaptionStyleMenuControllerIOS.mm
M Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.h
M Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm
M Source/WebKit/UIProcess/mac/_WKCaptionStyleMenuControllerMac.mm
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKit/WebProcess/WebPage/WebPage.messages.in
M Tools/TestWebKitAPI/Tests/WebCore/cocoa/CaptionPreferencesTests.mm
Log Message:
-----------
[Cocoa] Plumb 'previewID' down from UIProcess to WebContent
rdar://171088321
https://bugs.webkit.org/show_bug.cgi?id=308760
Reviewed by Andy Estes.
Previously, when a user hovered over a caption style selection in the
caption menu, that would temporarily change the active global caption
style for all applications which observed MediaAccessibility. Rather
than relying on MediaAccessibility broadcasting that change to a wide
audience, send the user's preview style selection through XPC down to
the WebContent process, and adopt new MediaAccessibility API to
apply that style temporarily in order to generate the appropriate CSS
styles for VTT tracks.
* Source/WebCore/page/CaptionUserPreferences.h:
(WebCore::CaptionUserPreferences::captionPreviewProfileID const):
(WebCore::CaptionUserPreferences::setCaptionPreviewProfileID):
* Source/WebCore/page/CaptionUserPreferencesMediaAF.cpp:
(WebCore::userCaptionPreferencesChangedNotificationCallback):
(WebCore::runWithPreviewProfile):
(WebCore::CaptionUserPreferencesMediaAF::CaptionUserPreferencesMediaAF):
(WebCore::CaptionUserPreferencesMediaAF::~CaptionUserPreferencesMediaAF):
(WebCore::CaptionUserPreferencesMediaAF::captionStrokeWidthForFont const):
(WebCore::CaptionUserPreferencesMediaAF::captionFontSizeScaleAndImportance
const):
(WebCore::CaptionUserPreferencesMediaAF::hasNullCaptionProfile const):
(WebCore::CaptionUserPreferencesMediaAF::captionsStyleSheetOverride const):
(WebCore::CaptionUserPreferencesMediaAF::captionPreviewProfileID const):
(WebCore::CaptionUserPreferencesMediaAF::setCaptionPreviewProfileID):
* Source/WebCore/page/CaptionUserPreferencesMediaAF.h:
* Source/WebCore/platform/cf/MediaAccessibilitySoftLink.cpp:
* Source/WebCore/platform/cf/MediaAccessibilitySoftLink.h:
* Source/WebCore/platform/cocoa/VideoPresentationModel.h:
(WebCore::VideoPresentationModel::requestShowCaptionDisplaySettingsPreview):
* Source/WebCore/platform/cocoa/WebAVPlayerLayer.mm:
(-[WebAVPlayerLayer setCaptionPreviewProfileID:position:text:]):
* Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h:
* Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm:
(WebKit::VideoPresentationModelContext::requestShowCaptionDisplaySettingsPreview):
(WebKit::VideoPresentationManagerProxy::requestShowCaptionDisplaySettingsPreview):
* Source/WebKit/UIProcess/Cocoa/_WKCaptionStyleMenuController.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setCaptionDisplaySettingsPreviewProfileID):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h:
* Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant captionStyleMenu:setPreviewProfileID:]):
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView captionStyleMenuSetPreviewProfileID:frameInfo:identifier:]):
* Source/WebKit/UIProcess/ios/_WKCaptionStyleMenuControllerIOS.mm:
(-[WKCaptionStyleMenuController setPreviewProfileID:]):
* Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.h:
* Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm:
(-[WKMenuDelegate captionStyleMenu:setPreviewProfileID:]):
(WebKit::WebContextMenuProxyMac::captionStyleMenuSetPreviewProfileID):
* Source/WebKit/UIProcess/mac/_WKCaptionStyleMenuControllerMac.mm:
(-[WKCaptionStyleMenuController setPreviewProfileID:]):
(-[WKCaptionStyleMenuController menuWillOpen:]):
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setCaptionDisplaySettingsPreviewProfileID):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
Canonical link: https://commits.webkit.org/308467@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications