Re: [pointerevents] Proposal: a way of tracking pointer position on pan/zoom touch-action (#339)

I have a similar use case.
I am trying to implement on the browser something I can only call "natural panning on overscroll".

This a delightful behaviour for scrollable modals: when reaching the top of the scrolling area, panning the element moves it along the finger. If it crosses a threshold, the modal is closed. If the finger is released before reaching the threshold, the modal snaps back into place.

I've spent a lot of time trying to build this, and came to conclusions very similar to yours. I can either use `touch-action: none;` and reimplement the scrolling logic in JavaScript (which would be terrible from a UX and performance standpoints; scrolling behaviour is quite sophisticated), or try to hack my way around with touch events.

The core issue is that, once the user agent decides to take over, we become blind to any types of changes. Use cases that rely on the default behaviour from the user agent but still needs to react on pointer changes are, at the moment, not implementable with pointer events. The exception is with `pointerrawupdate`, which keep firing even when the default behaviour from the user agent takes effect. However, this 1) even alone is not sufficient to reflect the pointer state 2) this does not seem in line with the event type's intended purpose.

-- 
GitHub Notification of comment by yacinehmito
Please view or discuss this issue at https://github.com/w3c/pointerevents/issues/339#issuecomment-839549844 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 12 May 2021 07:53:45 UTC