Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: da92dcfbdd3a6ec697b543983f82e4ea370cd851
https://github.com/WebKit/WebKit/commit/da92dcfbdd3a6ec697b543983f82e4ea370cd851
Author: Megan Gardner <[email protected]>
Date: 2024-09-05 (Thu, 05 Sep 2024)
Changed paths:
M Source/WebCore/dom/Document.h
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/page/ChromeClient.h
M Source/WebCore/page/TextAnimationTypes.h
M Source/WebCore/page/writing-tools/WritingToolsController.h
M Source/WebCore/page/writing-tools/WritingToolsController.mm
M Source/WebKit/Shared/TextAnimationTypes.serialization.in
M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxyInternals.h
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.h
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
M Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm
M Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift
M Source/WebKit/WebKitSwift/TextAnimation/WKSTextAnimationSourceDelegate.h
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
M Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h
M Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm
Log Message:
-----------
Writing tools animations on iOS don't have the second part of the animation.
https://bugs.webkit.org/show_bug.cgi?id=279161
rdar://132367375
Reviewed by Aditya Keerthi.
iOS animations have a completely different shape than mac
animations. Also, we weren't correctly determining if something
was the final text replacement and bailing out of that animations.
We also needed to ensure that smart replies still worked correctly.
* Source/WebCore/dom/Document.h:
(WebCore::Document::setPlaceholderTextIndicatorData):
(WebCore::Document::placeholderTextIndicatorData):
* Source/WebCore/editing/Editor.cpp:
(WebCore::Editor::insertTextPlaceholder):
* Source/WebCore/page/ChromeClient.h:
(WebCore::ChromeClient::addSourceTextAnimationForActiveWritingToolsSession):
(WebCore::ChromeClient::addDestinationTextAnimationForActiveWritingToolsSession):
* Source/WebCore/page/TextAnimationTypes.h:
* Source/WebCore/page/writing-tools/WritingToolsController.h:
* Source/WebCore/page/writing-tools/WritingToolsController.mm:
(WebCore::WritingToolsController::compositionSessionDidFinishReplacement):
(WebCore::WritingToolsController::compositionSessionDidReceiveTextWithReplacementRangeAsync):
(WebCore::WritingToolsController::compositionSessionDidReceiveTextWithReplacementRange):
* Source/WebKit/Shared/TextAnimationTypes.serialization.in:
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _addTextAnimationForAnimationID:withData:]):
(-[WKWebView _enableSourceTextAnimationAfterElementWithID:]):
(-[WKWebView _enableFinalTextAnimationForElementWithID:]):
(toWKTextAnimationType): Deleted.
* Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::addTextAnimationForAnimationIDWithCompletionHandler):
(WebKit::WebPageProxy::storeDestinationCompletionHandlerForAnimationID):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxyInternals.h:
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.h:
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView setUpInteraction]):
(-[WKContentView
updateUnderlyingTextVisibilityForTextAnimationID:visible:completionHandler:]):
(-[WKContentView callCompletionHandlerForAnimationID:]):
(-[WKContentView callCompletionHandlerForAnimationID:completionHandler:]):
(toWKTextAnimationType):
(-[WKContentView addTextAnimationForAnimationID:withData:]):
(-[WKContentView addTextAnimationForAnimationID:withStyleType:]): Deleted.
* Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm:
(-[WKTextAnimationManager restoreTextAnimationType]):
* Source/WebKit/UIProcess/mac/WebViewImpl.mm:
(WebKit::WebViewImpl::addTextAnimationForAnimationID):
* Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift:
(beginEffect(for:style:)):
(TextAnimationManager.performReplacementAndGeneratePreview(for:effect:animation:)):
* Source/WebKit/WebKitSwift/TextAnimation/WKSTextAnimationSourceDelegate.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::addSourceTextAnimationForActiveWritingToolsSession):
(WebKit::WebChromeClient::addDestinationTextAnimationForActiveWritingToolsSession):
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h:
* Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h:
* Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm:
(WebKit::TextAnimationController::addInitialTextAnimationForActiveWritingToolsSession):
(WebKit::TextAnimationController::addSourceTextAnimationForActiveWritingToolsSession):
(WebKit::TextAnimationController::addDestinationTextAnimationForActiveWritingToolsSession):
(WebKit::TextAnimationController::updateUnderlyingTextVisibilityForTextAnimationID):
(WebKit::TextAnimationController::createTextIndicatorForRange):
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::addSourceTextAnimationForActiveWritingToolsSession):
(WebKit::WebPage::addDestinationTextAnimationForActiveWritingToolsSession):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm:
(TEST(WritingTools, SuggestedTextIsSelectedAfterSmartReply)):
Canonical link: https://commits.webkit.org/283248@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