[webkit-changes] [WebKit/WebKit] 1041ca: Refactor various parts of caret animation code pos...

Richard Robinson noreply at github.com
Thu Jun 22 16:03:40 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1041ca48066bb678e125595f2a4aaff90ff65ad3
      https://github.com/WebKit/WebKit/commit/1041ca48066bb678e125595f2a4aaff90ff65ad3
  Author: Richard Robinson <richard_robinson2 at apple.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M Source/WebCore/dom/Document.cpp
    M Source/WebCore/editing/FrameSelection.cpp
    M Source/WebCore/editing/FrameSelection.h
    M Source/WebCore/platform/CaretAnimator.cpp
    M Source/WebCore/platform/CaretAnimator.h
    M Source/WebCore/platform/DictationCaretAnimator.cpp
    M Source/WebCore/platform/DictationCaretAnimator.h
    M Source/WebCore/platform/OpacityCaretAnimator.cpp
    M Source/WebCore/platform/OpacityCaretAnimator.h
    M Source/WebCore/platform/SimpleCaretAnimator.cpp
    M Source/WebCore/platform/SimpleCaretAnimator.h
    M Source/WebCore/rendering/RenderThemeIOS.mm
    M Source/WebKit/Platform/cocoa/_WKWebViewTextInputNotifications.mm
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/mac/WebViewImpl.h
    M Source/WebKit/UIProcess/mac/WebViewImpl.mm
    M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
    M Source/WebKitLegacy/mac/WebView/WebFrame.mm

  Log Message:
  -----------
  Refactor various parts of caret animation code post-upstreaming
https://bugs.webkit.org/show_bug.cgi?id=258386
rdar://110802729

Reviewed by Mike Wyrzykowski.

Refactors some logic in and around caret animation logic:

* Fixes typo of `dictationCaretAnimatorUpdateRate` inside `DictationCaretAnimator.cpp`
* Simplifies all the various caret color computing logic into `computeCaretColor`
* Renames `CaretAnimatorType::Alternate` to `CaretAnimatorType::Dictation`
* Renames `updateCaretDecorationPlacement` to `updateCursorAccessoryPlacement`
* Removes `currentTimeSinceEpoch` and instead directly uses `MonotonicTime` for the timekeeping variables
* Removes unnecessary `ReducedResolutionSeconds` parameter for various caret animator methods

* Source/WebCore/dom/Document.cpp:
(WebCore::Document::serviceCaretAnimation):
* Source/WebCore/editing/FrameSelection.cpp:
(WebCore::createCaretAnimator):
(WebCore::CaretBase::computeCaretColor):
(WebCore::CaretBase::paintCaret const):
(WebCore::FrameSelection::updateAppearance):
* Source/WebCore/editing/FrameSelection.h:
* Source/WebCore/platform/CaretAnimator.cpp:
(WebCore::CaretAnimator::serviceCaretAnimation):
(WebCore::CaretAnimator::paint const):
* Source/WebCore/platform/CaretAnimator.h:
(WebCore::CaretAnimator::didStart):
(WebCore::currentTimeSinceEpoch): Deleted.
(WebCore::platformCaretColor): Deleted.
* Source/WebCore/platform/DictationCaretAnimator.cpp:
(WebCore::keyframe):
(WebCore::DictationCaretAnimator::keyframeCount const):
(WebCore::DictationCaretAnimator::keyframeTimeDelta const):
(WebCore::DictationCaretAnimator::updateAnimationProperties):
(WebCore::DictationCaretAnimator::start):
(WebCore::DictationCaretAnimator::paint const):
* Source/WebCore/platform/DictationCaretAnimator.h:
* Source/WebCore/platform/OpacityCaretAnimator.cpp:
(WebCore::OpacityCaretAnimator::updateAnimationProperties):
(WebCore::OpacityCaretAnimator::start):
(WebCore::OpacityCaretAnimator::paint const):
* Source/WebCore/platform/OpacityCaretAnimator.h:
* Source/WebCore/platform/SimpleCaretAnimator.cpp:
(WebCore::SimpleCaretAnimator::updateAnimationProperties):
(WebCore::SimpleCaretAnimator::start):
* Source/WebCore/platform/SimpleCaretAnimator.h:
* Source/WebCore/rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::autocorrectionReplacementMarkerColor const):
* Source/WebKit/Platform/cocoa/_WKWebViewTextInputNotifications.mm:
(-[_WKWebViewTextInputNotifications dictationDidStart]):
(-[_WKWebViewTextInputNotifications dictationDidResume]):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/mac/WebViewImpl.h:
* Source/WebKit/UIProcess/mac/WebViewImpl.mm:
(WebKit::WebViewImpl::selectionDidChange):
(WebKit::WebViewImpl::updateCursorAccessoryPlacement):
(WebKit::WebViewImpl::updateCaretDecorationPlacement): Deleted.
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getPlatformEditorState const):
* Source/WebKitLegacy/mac/WebView/WebFrame.mm:
(-[WebFrame caretColor]):

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




More information about the webkit-changes mailing list