NEW 272226
[macOS Only] The “Prefer Page Rendering Updates near 60fps” Feature Flag does not affect Web Apps
https://bugs.webkit.org/show_bug.cgi?id=272226
Summary [macOS Only] The “Prefer Page Rendering Updates near 60fps” Feature Flag does...
Jeffrey Blanz
Reported 2024-04-05 07:52:22 PDT
In PWA apps, 120fps is disabled regardless of the "Prefer Page Rendering Updates Near 60fps" feature flag on 2018 iPad Pros and iPhone 13 Pros or newer. Note: 120fps is enabled for MacBook Pro PWAs, but not iPhone Pros or iPad Pros.
Attachments
Framerate Capped near 60fps (4.10 MB, image/png)
2024-04-24 06:35 PDT, Jeffrey Blanz
no flags
Jeffrey Blanz
Comment 1 2024-04-05 07:54:32 PDT
A related bug that also prevents this is "Prefer Page Rendering Updates Near 60fps Feature Flag doesn’t work on iPhone Pros" 120hz animations are not supported on iPhone Pros. They are supported on iPad Pros and MacBook Pros.
Jeffrey Blanz
Comment 2 2024-04-08 08:17:05 PDT
This may not actually be the case. I believe this is caused by WebRTC not supporting 120fps stream decoding on iPadOS and iOS (and most likely 90fps for Vision Pro). This is likely what I saw that made me think PWAs do not support 120fps. Although if PWAs don’t support 120fps on iPadOS and iOS then that would also cause this. If a Apple developer could confirm and I will mark as resolved and post a bug report for WebRTC instead.
Jeffrey Blanz
Comment 3 2024-04-09 07:14:55 PDT
Still unsure if PWAs support 120fps scrolling and animations. This could be because the "Prefer Page Rendering Updates Near 60fps" is default on for iPhone and iPads. It is also default on for MacBooks pros, but after disabling it I was able to verify 120 fps PWA support. I have also have yet to find a PWA for iPads that even has some sort of a FPS test like https://www.testufo.com does. Like stated before, I will mark this resolved if someone can confirm PWAs support 120fps. You will only be able to verify this on iPad Pros with promotion because currently iPhone Pros with promotion do not support 120fps animations. I did file a bug report for webRTC 120fps support here: https://bugs.webkit.org/show_bug.cgi?id=272393
Jeffrey Blanz
Comment 4 2024-04-11 07:57:50 PDT
I have confirmed this is because "Prefer Page Rendering Updates Near 60fps" is on by default in the system. Since PWAs run based on system defaults, and not based off of feature flags, 120fps is disabled and there is nothing users can do to change it. This is default on for safari 17.5 for MacBook Pros, iPad Pros, and iPhone Pros. Note: This is not default on for the Vision Pro, it is actually the only case where the feature flag is default off.
Radar WebKit Bug Importer
Comment 5 2024-04-12 07:53:32 PDT
Jeffrey Blanz
Comment 6 2024-04-24 06:35:24 PDT
Created attachment 471103 [details] Framerate Capped near 60fps To test this you can open www.testufo.com by clicking on the link in a PWA and choosing open in a new window. It should launch www.testufo.com in a new PWA window, it should not open www.testufo.com in a browser. For example, I messaged someone on X the link to test ufo and then opened the link in a new window from the X PWA.
Jeffrey Blanz
Comment 7 2024-04-24 06:58:18 PDT
Easier way to Replicate: 1. Open safari or safari technology preview 2. Go to www.reddit.com 3. Hit share and add to dock 4. Open the Reddit PWA added to the dock 5. In the search bar search "testufo Link - ignore". You should see a post with that title by u/jeff03blue_instinct. 6. Click on the post to open it. 7. Right click on the link in the post and choose "Open Link in New Window" 8. You should now see www.testufo.com running in a reddit PWA window at 60fps.
mdrejhon
Comment 8 2024-05-19 17:32:40 PDT
This could be another solution: https://bugs.webkit.org/show_bug.cgi?id=274372
Jeffrey Blanz
Comment 9 2024-07-01 07:50:35 PDT
Some feature flags affect PWAs. It would be nice if the “Prefer Page Rendering Updates near 60FPS” flag also affected PWAs. You can test this on macOS and see that it does not affect PWAs. The steps to replicate, and a screenshot showing the flag not affecting PWAs is above. For example, you can check the Face Detection demo from PWA today. If the demo says it's not available; you can enable Shape Detection API in Safari feature flags, relaunch the PWA, and see it working. Link to demo: https://whatpwacando.today/face-detection/
Jeffrey Blanz
Comment 10 2025-06-17 11:06:38 PDT
I have tested this on macOS 26, iOS 26, and iPadOS 26. Surpassingly, I found this has been fixed for iOS and iPadOS, but NOT macOS. You can do the same steps on iPhone and iPad and you will see the web app runs at 120fps. The steps to replicate are also easier than ever now: 1. Open Safari on a Mac connected to a 120+hz screen or a Promotion MacBook Pro. 2. Open safari settings and go to Feature Flags. 3. Uncheck (disable) the "Prefer Page Rendering Updates near 60fps" flag. 4. Go to www.testufo.com 5. Notice how the screen is running at 120+fps (It is crucial that you see 120+fps on this step). 6. Click the "Share" button in the top right. 7. Select "Add to Dock". 8. Open the web app that is in the dock. Result: TestUFO shows 60fps in the web app. Expected result: TestUFO shows 120+fps in the web app (the same as safari).
mdrejhon
Comment 11 2025-06-18 13:30:02 PDT
Fantastic to hear that iPadOS/iOS works now. An easier way to launch TestUFO in 120Hz on Apple platforms is much desired, being that TestUFO is a "motion performance demo in a single click" that also helps sells high-Hz. I'm hoping standards discussion continues on a way to access 120Hz+ more easily, such as a permission-based request.
mdrejhon
Comment 12 2025-06-19 16:21:36 PDT
Related to this bug title: --> Webkit in an app control (WKWebView, UIWebView) is hardcoded to 60fps last time I tested. It was still hard-capped to 60fps -- even if Info.plist setting for CADisableMinimumFrameDurationOnPhone is set. When I dispose of the HTML form system to make TestUFO more mobile friendly with the rewritten TestUFO UX, I am open to releasing a TestUFO app -- but not even WKWebView nor UIWebView lets me works around 60fps limit. Has this been fixed yet?
mdrejhon
Comment 13 2025-06-19 16:21:54 PDT Comment hidden (duplicate, obsolete)
mdrejhon
Comment 14 2025-06-19 16:31:10 PDT Comment hidden (obsolete)
Jeffrey Blanz
Comment 15 2025-06-19 20:14:34 PDT
Looks like there is a proposal for this here: https://bugs.webkit.org/show_bug.cgi?id=294338
Note You need to log in before you can comment on or make changes to this bug.