w3c/pointerevents

HTML monkeypatching: initiate the drag-and-drop operation definition

Closed this issue · 2 comments

From whatwg/html#6758

We have apparently an instance of HTML monkeypatching.

We should consider sending an HTML pull request to initiate the drag-and-drop operation to include the requirement to fire
pointercancel, then fire pointerout followed by firing a pointer event named pointerleave. All per https://www.w3.org/TR/pointerevents/upcoming/#the-pointercancel-event

I just sent the above PR to HTML. I think follow-up PE tasks should remain in this spec because they are inherently tied to some details about PointerEvents, like:

  • the pointerout and pointerleave events should have the same pointerId as the pointercancel, and
  • if the pointerId has been captured, we should release the capture.

(I see that this second point is mentioned only in the Implicit Release section. I will send a PR soon to link it from the pointerup and pointercancel sections).

I've merged the HTML spec patch, but it would be great if the follow-up PE tasks were properly defined before this issue was closed. My suggestion: define "fire a pointer cancelation" as something which fires the three events and properly initializes their pointerIds, and does the capture business.

Then instead of saying "A user agent MUST fire a pointer event named pointercancel in the following circumstances:", say "The user agent must fire a pointer cancelation in the following circumstances:". And then update HTML to reference "fire a pointer cancelation" instead of the current vague language about follow-up events.