Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d03f052253e8b2d8eaad250db4245cb898106220
      
https://github.com/WebKit/WebKit/commit/d03f052253e8b2d8eaad250db4245cb898106220
  Author: Richard Robinson <[email protected]>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift
    A 
Source/WebKit/WebKitSwift/WritingTools/PlatformIntelligenceTextEffectView.swift

  Log Message:
  -----------
  [Intelligence Effects] Add a platform abstraction layer to be able to use 
intelligence effects in a platform-agnostic manner
https://bugs.webkit.org/show_bug.cgi?id=281801
rdar://138225697

Reviewed by Abrar Rahman Protyasha.

The interface for creating intelligence effects on macOS compared to iOS is 
quite different. To make
this difference easier to manage, a high level abstraction type is created 
which mostly abstracts away
all the platform-specific parts so that it may be consumed without the client 
having to worry about
making any logic changes platform-dependent.

The abstraction layer's interface attempts to be as similar to iOS as possible, 
since abstracting the
macOS interface in terms of iOS was more elegant.

This will soon be adopted and used by an upcoming intelligence effects 
coordinator type.

* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* 
Source/WebKit/WebKitSwift/WritingTools/PlatformIntelligenceTextEffectView.swift:
 Added.
(PlatformIntelligenceTextEffect.chunk):
(PlatformIntelligenceTextEffectViewSource.textPreview(for:)):
(PlatformIntelligenceTextEffectViewSource.updateTextChunkVisibility(_:visible:)):
(PlatformIntelligenceTextEffectViewSource.performReplacementAndGeneratePreview(for:effect:animation:)):
(PlatformIntelligenceTextEffectViewSource.replacementEffectWillBegin(_:)):
(PlatformIntelligenceTextEffectViewSource.replacementEffectDidComplete(_:)):
(UITextEffectViewSourceAdapter.wrapped):
(UITextEffectViewSourceAdapter.targetedPreview(for:)):
(UITextEffectViewSourceAdapter.updateTextChunkVisibilityForAnimation(_:visible:)):
(UIReplacementTextEffectDelegateAdapter.view):
(UIReplacementTextEffectDelegateAdapter.replacementEffectDidComplete(_:)):
(UIReplacementTextEffectDelegateAdapter.performReplacementAndGeneratePreview(for:effect:animation:)):
(WTTextPreviewAsyncSourceAdapter.textPreviews(for:)):
(WTTextPreviewAsyncSourceAdapter.textPreview(for:)):
(WTTextPreviewAsyncSourceAdapter.updateIsTextVisible(_:for:)):
(PlatformIntelligenceTextEffectView.wrappedEffectIDToPlatformEffects):
(PlatformIntelligenceTextEffectView.platformEffectIDToWrappedEffectIDs):
(PlatformIntelligenceTextEffectView.updateFrame):
(PlatformIntelligenceTextEffectView.removeEffect(_:)):
(PlatformIntelligenceTextEffectView.removeAllEffects):

Canonical link: https://commits.webkit.org/285512@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