W3C home > Mailing lists > Public > public-pointer-events@w3.org > January to March 2013

Re: Distinguishing input from multiple users

From: Sangwhan Moon <sangwhan@iki.fi>
Date: Wed, 27 Mar 2013 01:03:40 +0900
To: Rick Byers <rbyers@google.com>
Cc: "public-pointer-events@w3.org" <public-pointer-events@w3.org>
Message-ID: <7659490764424403BF35CCE701329E11@gmail.com>
Just to clarify - sorry for not being explicit, this is not a LC comment - nor do I think this should be a v1 showstopper. The added complexity just to get the device ID right on all platforms is probably not worth the hassle to be forced into v1.

The specific use case I had in mind was for HTML games on a console (or PC, TV) - as I've seen a [1] workaround implementation possibly due to the very reason that there wasn't a standard that could be readily used.

(Although as with all software "let's do it later" also tends end up being "let's not do it ever", but let's imagine that won't happen)

The [2] Gamepad API has this concept - although it's a bit more complex - but it shares the idea.

--  
Sangwhan Moon

[1] http://my.opera.com/Vital/blog/the-wii-remote-api
[2] https://dvcs.w3.org/hg/gamepad/raw-file/default/gamepad.html


On Tuesday, March 26, 2013 at 11:55 PM, Rick Byers wrote:

> Sangwhan, can you elaborate a bit on the scenario you see this being useful in? Adding a deviceId to the event (or some other mechanism to correlate pointers to devices and get information about those devices) seems like it could be handy, but I'm wondering if this is something we'd really want to try to get into v1.  
>  
> No existing input API has this, right? Are there examples of real-world sites that are hurting as a result?
>  
> Thanks,
> Rick
>  
>  
>  
> On Mon, Mar 25, 2013 at 7:29 AM, Scott González <scott.gonzalez@gmail.com (mailto:scott.gonzalez@gmail.com)> wrote:
> > I like the idea of having a device id associated with each event. I've also heard requests to be able to listen for when a device is connected/disconnected.
> >  
> >  
> >  
> > On Sun, Mar 24, 2013 at 1:54 AM, Sangwhan Moon <smoon@opera.com (mailto:smoon@opera.com)> wrote:
> > > In the specification as of today, there is no reliable way to detect/associate
> > > input from multiple users - as PointerEvent.pointerId is the closest thing that
> > > can be used to detect such a thing, which sadly doesn't guarantee a reliable
> > > pointerId to user mapping.
> > >  
> > > I see two approaches for resolving this:
> > >  
> > > 1) Re-define PointerEvent.pointerId in a way that:
> > > - How indices are generated and reserved for non-mice is normative, so it
> > > can heuristically map to a specific input device.
> > > - Indices are not recyclable.
> > >  
> > > (and possibly add the concept of "available pointers", or redefine "active pointers")
> > >  
> > > 2) Add a new deviceId member in the PointerEvent interface.
> > >  
> > > (and possibly add methods to enumerate available devices)
> > >  
> > > I'm not sure which would be the best way to handle this, although I am a bit
> > > skeptical about the first idea as detecting the device will possibly leave corner
> > > cases where the heuristics may fail.
> > >  
> > > --
> > > Sangwhan Moon, Opera Software ASA
> >  
>  
Received on Tuesday, 26 March 2013 16:04:22 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:17:04 GMT