Created attachment 331965 [details]
After a window scroll, the first subsequent touch move event has incorrect clientX / clientY values. This is fixed on the next touchmove event. This occurs frequently, but not every time. It looks like around 10% of the time.
This seems related to https://bugs.webkit.org/show_bug.cgi?id=32899 but it might be a seperate issue.
I can confirm the issue still occurs:
- when the events are bound in different orders
- regardless of whether it is bound in the capture phase
- regardless of whether the touchmove handler is passive or not
It looks like multiple post scroll touchmove events can contain incorrect values
Can you make a small test case?
I have put one together:
It is fairly crude but shows the issue. Press on the drag handle and move it around. You will see that it goes up on the page on Safari + iOS11 because the clientY is getting smaller after each scroll - it is being incorrectly impacted by the window scroll.
The drag handle stays in the same place in other browsers which have the correct clientX / clientY after a scroll.
I have tested it on latest Chrome on Android and the drag handle stays in the same place (the clientX and clientY are updated correctly)
Please let me know if there is any more information you need. It would be great to see this fixed! 😊
Any update on this one?