-
Notifications
You must be signed in to change notification settings - Fork 160
Suppress over/out/enter/leave during capture #177
Comments
Also look into what events are triggered in each browser when the pointer is released over a different element. |
I made a little visual test: http://jsbin.com/rihoyaqiso and did a 6 step interaction: 1.Enter capturing element The interesting parts are steps 3, 4 and 5. (All events are pointer events)
On releasing the lmb on Chrome, a mouseout is fired which causes the pointerleave and pointerout. After having released the lmb, the next events fire on the other element. For e.g. a pointermove the spec demands a pointerenter and pointerover beforehand on the same element, which do not happen on FF and Safari.
_Edit (May 13)_: Added IE10, FF Nightly; Formatting |
I've started a thread on public-pointer-events to see if we can get the expected events documented. I have a feeling that without this discussion, Firefox would end up with different behavior than IE (see details in the thread). |
Perhaps a clone of fireEvent in the dispatcher like fireOwnEvent that only fires an event if there is no pointer capture / the capture target is the same as the original event target? |
Also, pointer capture and event firing should kind of be rewritten to process pointer capture at the point of the next event, per http://www.w3.org/TR/pointerevents/#firing-events-using-the-pointerevent-interface |
Boundary events should only fire when they occur on the boundary of the capturing element. Boundary events from other elements should be suppressed, but they're currently kept and retargeted to the captured element.
The text was updated successfully, but these errors were encountered: