Bug 230669 - iOS15 is causing important performance issue due to scrolling reflow
Summary: iOS15 is causing important performance issue due to scrolling reflow
Status: RESOLVED MOVED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: Safari 14
Hardware: iPhone / iPad Other
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-09-23 00:34 PDT by mic.gallego
Modified: 2022-02-10 10:44 PST (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description mic.gallego 2021-09-23 00:34:34 PDT
Hi,

I have found a major problem in iOS15 that is impacting most slider libraries, for instance. I have found the issue to be due to how iOS15 now handles the toolbar.

Previously, if the toolbar at the bottom was closed, moving up from 1 or 2 pixel would not cause the bar to goes up. In the context of a slider library, this means that if you would swipe left or right, the window height would not change unless you would do a rather large vertical movement.

However on iOS15, when you scroll a bit diagonally (to swipe for instance), the bottom bar is moving up and down for every pixel of your diagonal movement.

Unfortunately, this cause the "resize" event to be called a very large number of times. Libraries like Flickity therefore re-render them whole carousel a huge number of times per swipe movement, which cause everything to be laggy (having the bottom bar going up and down while dragging slighly diagonally is also just annoying, from UX perspective).

I think that iOS should introduce a minimum number of scrolled pixel before initiating the collapse of the bar OR triggering the resize event only after the bar has been minimized or shown, but now many times in between as it does now.
Comment 1 Radar WebKit Bug Importer 2021-09-23 08:09:14 PDT
<rdar://problem/83447573>
Comment 2 Brent Fulgham 2021-09-23 09:34:48 PDT
This behavior change is outside of the WebKit project, and will be tracked as an internal bug (see Radar above). I'll update this bug once we have some status on when this can be fixed.
Comment 3 Brent Fulgham 2022-02-10 10:44:47 PST
The fix for this issue was needed outside the WebKit project, therefore this is being resolved as 'Moved'.

The bug was resolved in the external component in rdar://82189302.

The fix was shipped in iOS 15.2.