Re: [pointerevents] Relationship between main pointer event and coalesced events (#409)


> I'm not sure if I'd go as far as it having an algorithm it has to follow

I think it's needed. There's so much behaviour that isn't written down, and I think that might be causing a lot of the interop issues around pointer events.

For instance, the spec says that `pointermove` can be delayed, but it doesn't give the conditions of that delay. Can two `pointermove` events be given a different delay that results in them being delivered in a different order?

Can the `pointermove` in reaction to a button-down change happen after the related `pointerdown` event? Can it be delayed so much that it happens after a `pointerup` for that button?

What if the user presses a key on the keyboard and there's a pending `pointermove`? Does it flush that event?

There are browser behaviours and developer expectations here and as far as I can tell they're not in the spec. I guess you could answer them by sprinkling constraints throughout the spec, but I think it'd be better answered by an algorithm that details what should happen when the browser receives a change in pointer state. The algorithm could still allow for desirable differences in UAs, like delays, but with requirements that developers have come to rely on.

GitHub Notification of comment by jakearchibald
Please view or discuss this issue at using your GitHub account

Sent via github-notify-ml as configured in

Received on Thursday, 9 September 2021 09:03:04 UTC