Bug 230091

Summary: REGRESSION (iOS 15): Binding to a gesture event makes rendering go wrong on iOS 15
Product: WebKit Reporter: Wart Claes <wart.claes>
Component: UI EventsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: bfulgham, cdumez, graouts, hi, thorton, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: Safari Technology Preview   
Hardware: iPhone / iPad   
OS: Other   

Description Wart Claes 2021-09-09 04:27:16 PDT
We encountered some issues with the "gesturestart" and "gesturechange" events on iOS 15.

When tapping fast through the items on the page it happens that the box doesn't change color on the actual tap.
That color change will happen when you tap anywhere else on the screen.

It seems like the page doesn't re-render it correctly and by tapping again it triggers a paint to correct it.

If we remove the (empty) listeners of "gesturestart" and "gesturechange" the issue is resolved.

(removing one of them keeps the issue so I guess it's also possible that it happens on "gestureend")


Code example
------------
https://stackblitz.com/edit/js-g3qxtk


Test page
---------
https://js-g3qxtk.stackblitz.io


Steps to reproduce
------------------
1. Click in quick succession on Item 1 and then on Item 2
2. Item 1 will be green, Item 2 will still be red.
3. Click anywhere else and Item 2 will turn green.

This only happens on iOS 15 (beta 8 at the moment) and it did not occur on iOS 14.7.1
Comment 1 Radar WebKit Bug Importer 2021-09-16 04:28:15 PDT
<rdar://problem/83192041>
Comment 2 Smoley 2021-09-30 15:36:25 PDT
Thanks for filing, I can confirm this isn't reproducing for me on iOS 14.7.1 and I do see the issue on the latest iOS 15 beta. Ccing relevant folks here.
Comment 3 Brent Fulgham 2022-02-12 22:18:17 PST
QA is unable to reproduce this on iOS 15.3. or newer.