[webkit-changes] [WebKit/WebKit] 3a34f4: Refactor text editing replacement mechanism

Richard Robinson noreply at github.com
Mon Jan 29 13:56:20 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3a34f4ad4c4354c15ae7e832ff26e5fdf5222533
      https://github.com/WebKit/WebKit/commit/3a34f4ad4c4354c15ae7e832ff26e5fdf5222533
  Author: Richard Robinson <richard_robinson2 at apple.com>
  Date:   2024-01-29 (Mon, 29 Jan 2024)

  Changed paths:
    M Source/WebCore/dom/DocumentMarker.h
    M Source/WebCore/editing/FrameSelection.cpp
    M Source/WebCore/editing/FrameSelection.h
    M Source/WebCore/testing/Internals.cpp
    M Source/WebCore/testing/Internals.h
    M Source/WebCore/testing/Internals.idl
    M Source/WebKit/DerivedSources-input.xcfilelist
    M Source/WebKit/DerivedSources.make
    M Source/WebKit/Platform/Logging.h
    A Source/WebKit/Shared/UnifiedTextReplacement.serialization.in
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    A Source/WebKit/Shared/WebTextReplacementData.h
    A Source/WebKit/Shared/WebUnifiedTextReplacementContextData.h
    M Source/WebKit/Sources.txt
    M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
    A Source/WebKit/WebProcess/WebPage/UnifiedTextReplacementController.cpp
    A Source/WebKit/WebProcess/WebPage/UnifiedTextReplacementController.h
    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/SourcesCocoa.txt
    M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
    A Tools/TestWebKitAPI/Tests/WebKitCocoa/UnifiedTextReplacement.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm

  Log Message:
  -----------
  Refactor text editing replacement mechanism
https://bugs.webkit.org/show_bug.cgi?id=268214
rdar://120563444

Reviewed by Aditya Keerthi.

Introduce a more unified way of handling text edits and replacements.

* Source/WebCore/dom/DocumentMarker.h:
(WebCore::DocumentMarker::allMarkers):
* Source/WebCore/editing/FrameSelection.cpp:
(WebCore::FrameSelection::rangeByExtendingCurrentSelection const):
* Source/WebCore/editing/FrameSelection.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::markerTypeFrom):
(WebCore::Internals::hasUnifiedTextReplacementMarker):
* Source/WebCore/testing/Internals.h:
* Source/WebCore/testing/Internals.idl:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Platform/Logging.h:
* Source/WebKit/Shared/UnifiedTextReplacement.serialization.in: Added.
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/Shared/WebTextReplacementData.h: Added.
* Source/WebKit/Shared/WebUnifiedTextReplacementContextData.h: Added.
* Source/WebKit/Sources.txt:
* Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::didBeginTextReplacementSession):
(WebKit::WebPageProxy::textReplacementSessionDidReceiveReplacements):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::rangeSelectionContext const):
(WebKit::WebPage::didBeginTextReplacementSession):
(WebKit::WebPage::textReplacementSessionDidReceiveReplacements):
* Source/WebKit/WebProcess/WebPage/UnifiedTextReplacementController.cpp: Added.
(WebKit::UnifiedTextReplacementController::UnifiedTextReplacementController):
(WebKit::UnifiedTextReplacementController::didBeginTextReplacementSession):
(WebKit::UnifiedTextReplacementController::textReplacementSessionDidReceiveReplacements):
* Source/WebKit/WebProcess/WebPage/UnifiedTextReplacementController.h: Added.
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::m_unifiedTextReplacementController):
(WebKit::m_historyItemClient): Deleted.
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
* Tools/TestWebKitAPI/SourcesCocoa.txt:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/UnifiedTextReplacement.mm: Added.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm:

Canonical link: https://commits.webkit.org/273687@main




More information about the webkit-changes mailing list