Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0eec24ac3eff44a5d415e3617d1cf5abe5c5d496
      
https://github.com/WebKit/WebKit/commit/0eec24ac3eff44a5d415e3617d1cf5abe5c5d496
  Author: Antoine Quint <grao...@webkit.org>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M Source/WebCore/PAL/pal/spi/cocoa/QuartzCoreSPI.h
    A Source/WebKit/Platform/cocoa/CAFrameRateRangeUtilities.h
    M Source/WebKit/UIProcess/ios/WKKeyboardScrollingAnimator.mm
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCAAnimationRemote.mm

  Log Message:
  -----------
  [iOS] run keyboard scrolling animations at a higher frame rate when possible
https://bugs.webkit.org/show_bug.cgi?id=268850
rdar://122323815

Reviewed by Simon Fraser.

In 273122@main we opted into higher frame rate animations when performed by 
Core Animation on
qualifying hardware. We now do the same with scrolling animations resulting 
from interacting
with the keyboard (such as pressing the space bar) by setting similar 
properties on the
`CADisplayLink` created by `WKKeyboardScrollingAnimator`. Because we now have 
two different
places where we opt into a higher frame rate, we distinguish between the two 
cases by using
a different `CAHighFrameRateReason` value.

* Source/WebCore/PAL/pal/spi/cocoa/QuartzCoreSPI.h:
* Source/WebKit/Platform/cocoa/CAFrameRateRangeUtilities.h: Added.
(WebKit::highFrameRateRange):
* Source/WebKit/UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(-[WKKeyboardScrollingAnimator startDisplayLinkIfNeeded]):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCAAnimationRemote.mm:
(WebKit::createAnimation):
(highFrameRateRange): Deleted.

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to