W3C home > Mailing lists > Public > public-pointer-events@w3.org > July to September 2014

Re: pointerout and pointerleave after pointercancel

From: Sangwhan Moon <smoon@opera.com>
Date: Tue, 5 Aug 2014 15:18:42 +0900
Message-ID: <CAFWyatp3NRDr1LNxK6fkfESVcb_ZHtgo2-ewNb3vOEwYf3t7GQ@mail.gmail.com>
To: cathy.chan@nokia.com
Cc: public-pointer-events@w3.org
On Tue, Aug 5, 2014 at 6:30 AM, <cathy.chan@nokia.com> wrote:

> This question stems from Sangwhan's review [1] of a test case that I
> submitted [2], which was a clone of another test from Microsoft [3].
> The tip of the PE spec says the following about pointercancel.
> [[
> After firing the pointercancel event, a user agent MUST also fire a
> pointer event named pointerout followed by firing a pointer event named
> pointerleave.
> ]]
> In comparison, it says the following about pointerup.
> [[
> For input devices that do not support hover, a user agent MUST also fire a
> pointer event named pointerout followed by a pointer event named
> pointerleave after dispatching the pointerup event.
> ]]
> The question here is whether the statement on pointercancel truly does
> apply to all pointer types (i.e. including those that support hover) and
> what the rationale is. (Or was that just an unfortunate bug in the spec?)

While I'm not knowledgable enough to comment on the rationale, from the
back of my head this doesn't look like a bug.

Leaving it open ended for input devices which do not fall into the three
common device categories defined by the specification - e.g. a stylus with
no proximity triggered pointer interaction could benefit from being open
ended. The only real world example I can think of is this thing:

The stylus above activates based on touch screen, but conceptually is a
pointer type of stylus with pressure (the pressure information is
transmitted over bluetooth), and has no support for hovering. I don't know
any browser that has support for this particular piece of hardware, but
worth noting that such devices exist.

> A follow-on question: why is the test case that checks that the pointerout
> event follows the pointercancel event [3] written to be specific to touch
> input? What about mouse and pen input?
> - Cathy.
> [1] https://critic.hoppipolla.co.uk/showcomment?chain=7058
> [2]
> https://github.com/cathychan/web-platform-tests/blob/patch-3/pointerevents/pointerevent_pointerleave_after_pointercancel_touch.html
> [3]
> https://github.com/w3c/web-platform-tests/blob/master/pointerevents/pointerevent_pointerout_after_pointercancel_touch.html

Sangwhan Moon [Opera Software ASA]
Software Engineer | Tokyo, Japan
Received on Tuesday, 5 August 2014 06:19:10 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:48:10 UTC