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

Reply via email to