Bug 261961 - allow for configurable event emission rates for high refresh rate displays
Summary: allow for configurable event emission rates for high refresh rate displays
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: UI Events (show other bugs)
Version: Safari 17
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-09-22 11:22 PDT by Liam DeBeasi
Modified: 2023-09-29 11:22 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Liam DeBeasi 2023-09-22 11:22:00 PDT
Currently, event emissions such as "pointermove" are capped at firing up to 60 times per second. This results in gesture-driven animations (such as a swipe animation) being capped at 60fps even if the animation is capable of running at up to 120fps on Pro Motion iPhones.

It would be useful to have a way of opting in to higher event emission rates to enable 120fps gesture-driven animations. While the gesture-driven animations currently work, they appear sluggish on high refresh rate displays because they are capped at 60fps.

Example:

1. Open https://docs-demo.ionic.io/component/modal on an iPhone with a Pro Motion display.
2. Tap "Open Sheet Modal".
3. Drag the sheet modal up and down. Observe that, while the animation does play at 60fps, it seems sluggish since the device is capable of rendering at a much higher refresh rate.

There is ongoing discussion to control animation frame rate here: https://github.com/w3c/csswg-drafts/issues/7196 However, this does not account for gesture-driven animations.
Comment 1 Radar WebKit Bug Importer 2023-09-29 11:22:31 PDT
<rdar://problem/116246899>