Whether a pointer event should take the TOUCH gesture path: a finger, or a
pen used as a finger on a touch-first device (iPad + Pencil, with no
secondary button held). A pen on a fine-pointer desktop (Wacom) keeps the
mouse mapping, and any secondary-button press or drag falls through to it
everywhere so the secondary action stays reachable.
Must agree across a whole gesture: pointermove reports button === -1
("no button changed"), so held buttons must come from buttons rather than
button — otherwise a secondary-button drag can change paths on every move.
Whether a pointer event should take the TOUCH gesture path: a finger, or a pen used as a finger on a touch-first device (iPad + Pencil, with no secondary button held). A pen on a fine-pointer desktop (Wacom) keeps the mouse mapping, and any secondary-button press or drag falls through to it everywhere so the secondary action stays reachable.
Must agree across a whole gesture:
pointermovereportsbutton === -1("no button changed"), so held buttons must come frombuttonsrather thanbutton— otherwise a secondary-button drag can change paths on every move.