Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c5c0cb2d749aea4fd57661a4bbdfd4bfca617dbc
https://github.com/WebKit/WebKit/commit/c5c0cb2d749aea4fd57661a4bbdfd4bfca617dbc
Author: Megan Gardner <[email protected]>
Date: 2024-06-24 (Mon, 24 Jun 2024)
Changed paths:
M Source/WebCore/page/ChromeClient.h
M Source/WebCore/page/writing-tools/WritingToolsController.mm
M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
M Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h
M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h
M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm
M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
M Source/WebKit/UIProcess/PageClient.h
M Source/WebKit/UIProcess/WKSTextAnimationManager.h
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.h
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
M Source/WebKit/UIProcess/mac/WKTextAnimationManager.h
M Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm
M Source/WebKit/UIProcess/mac/WebViewImpl.h
M Source/WebKit/UIProcess/mac/WebViewImpl.mm
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
A Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h
M Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm
R Source/WebKit/WebProcess/WebPage/TextAnimationController.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
Log Message:
-----------
Use a separate animation ID from the session ID in all cases, including
initial animation.
https://bugs.webkit.org/show_bug.cgi?id=275700
rdar://130217887
Reviewed by Richard Robinson.
Perviously, I was using the sessionUUID for the first animation. This has made
it difficult
to write clean and compartmentalized code, and caused issues where the wrong
UUID was used.
This patch separated these into two separate concepts, and added mapping
storage in the animation
controller. I also clean up some of the naming for the clean up code, and
generally make the code
easier to understand.
* Source/WebCore/page/ChromeClient.h:
(WebCore::ChromeClient::removeTextAnimationForAnimationID):
(WebCore::ChromeClient::removeTransparentMarkersForSessionID):
(WebCore::ChromeClient::removeInitialTextAnimation):
(WebCore::ChromeClient::addInitialTextAnimation):
(WebCore::ChromeClient::removeTextAnimationForID): Deleted.
(WebCore::ChromeClient::cleanUpTextAnimationsForSessionID): Deleted.
* Source/WebCore/page/writing-tools/WritingToolsController.mm:
(WebCore::WritingToolsController::didBeginWritingToolsSession):
(WebCore::WritingToolsController::proofreadingSessionDidReceiveSuggestions):
(WebCore::WritingToolsController::compositionSessionDidReceiveTextWithReplacementRange):
(WebCore::WritingToolsController::didEndWritingToolsSession):
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _addTextAnimationForAnimationID:withData:]):
(-[WKWebView _removeTextAnimationForAnimationID:]):
(-[WKWebView didBeginWritingToolsSession:contexts:]):
(-[WKWebView _enableSourceTextAnimationAfterElementWithID:]):
(-[WKWebView _enableFinalTextAnimationForElementWithID:]):
(-[WKWebView _disableTextAnimationWithUUID:]):
(-[WKWebView _addTextAnimationTypeForID:withData:]): Deleted.
(-[WKWebView _removeTextAnimationForID:]): Deleted.
(-[WKWebView beginWritingToolsAnimationForSessionWithUUID:]): Deleted.
(-[WKWebView endWritingToolsAnimationForSessionWithUUID:]): Deleted.
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h:
* Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h:
* Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm:
(WebKit::PageClientImplCocoa::addTextAnimationForAnimationID):
(WebKit::PageClientImplCocoa::removeTextAnimationForAnimationID):
(WebKit::PageClientImplCocoa::addTextAnimationTypeForID): Deleted.
(WebKit::PageClientImplCocoa::removeTextAnimationForID): Deleted.
* Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::addTextAnimationForAnimationID):
(WebKit::WebPageProxy::removeTextAnimationForAnimationID):
(WebKit::WebPageProxy::addTextAnimationTypeForID): Deleted.
(WebKit::WebPageProxy::removeTextAnimationForID): Deleted.
* Source/WebKit/UIProcess/PageClient.h:
* Source/WebKit/UIProcess/WKSTextAnimationManager.h:
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.h:
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView addTextAnimationForAnimationID:withStyleType:]):
(-[WKContentView removeTextAnimationForAnimationID:]):
(-[WKContentView addTextAnimationTypeForID:withStyleType:]): Deleted.
(-[WKContentView removeTextAnimationForID:]): Deleted.
* Source/WebKit/UIProcess/mac/WKTextAnimationManager.h:
* Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm:
(-[WKTextAnimationManager addTextAnimationForAnimationID:withData:]):
(-[WKTextAnimationManager removeTextAnimationForAnimationID:]):
(-[WKTextAnimationManager restoreTextAnimationType]):
(-[WKTextAnimationManager addTextAnimationTypeForID:withData:]): Deleted.
(-[WKTextAnimationManager removeTextAnimationForID:]): Deleted.
* Source/WebKit/UIProcess/mac/WebViewImpl.h:
* Source/WebKit/UIProcess/mac/WebViewImpl.mm:
(WebKit::WebViewImpl::addTextAnimationForAnimationID):
(WebKit::WebViewImpl::removeTextAnimationForAnimationID):
(WebKit::WebViewImpl::addTextAnimationTypeForID): Deleted.
(WebKit::WebViewImpl::removeTextAnimationForID): Deleted.
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift:
(beginEffect(for:style:)):
(endEffect(for:)):
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::removeTextAnimationForAnimationID):
(WebKit::WebChromeClient::removeTransparentMarkersForSessionID):
(WebKit::WebChromeClient::removeInitialTextAnimation):
(WebKit::WebChromeClient::addInitialTextAnimation):
(WebKit::WebChromeClient::removeTextAnimationForID): Deleted.
(WebKit::WebChromeClient::cleanUpTextAnimationsForSessionID): Deleted.
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h:
* Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h: Renamed
from Source/WebKit/WebProcess/WebPage/TextAnimationController.h.
* Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm:
(WebKit::TextAnimationController::contextRangeForTextAnimationID const):
(WebKit::TextAnimationController::removeTransparentMarkersForSessionID):
(WebKit::TextAnimationController::removeInitialTextAnimation):
(WebKit::TextAnimationController::addInitialTextAnimation):
(WebKit::TextAnimationController::addSourceTextAnimation):
(WebKit::TextAnimationController::addDestinationTextAnimation):
(WebKit::TextAnimationController::updateUnderlyingTextVisibilityForTextAnimationID):
(WebKit::TextAnimationController::createTextIndicatorForTextAnimationID):
(WebKit::TextAnimationController::contextRangeForTextAnimationType const):
Deleted.
(WebKit::TextAnimationController::cleanUpTextAnimationsForSessionID): Deleted.
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::addTextAnimationForAnimationID):
(WebKit::WebPage::removeTextAnimationForAnimationID):
(WebKit::WebPage::removeTransparentMarkersForSessionID):
(WebKit::WebPage::removeInitialTextAnimation):
(WebKit::WebPage::addInitialTextAnimation):
(WebKit::WebPage::addTextAnimationTypeForID): Deleted.
(WebKit::WebPage::removeTextAnimationForID): Deleted.
(WebKit::WebPage::cleanUpTextAnimationsForSessionID): Deleted.
* Source/WebKit/WebProcess/WebPage/WebPage.h:
Canonical link: https://commits.webkit.org/280319@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes