On Mon, Dec 12, 2022 at 1:07 PM 'Ben Mathwig' via blink-dev <
blink-dev@chromium.org> wrote:

>
> ---
> *Sahir & Ben: wondering why a new deviceId field seems more logical now
> against the original proposal of repurposing the pointerId field?  Is it
> because of the compat concern you raised in w3c/pointerevents/issues/353
> <https://github.com/w3c/pointerevents/issues/353#issuecomment-1346776842>?*
> ---
>
> The primary reason is the deterministic nature of deviceId compared to
> pointerId. The scenario would be: (a) If the device supports getting a
> unique hardware identifier, we randomly generate an integer and persist
> that integer for the document lifespan. (b) If the device does not support
> getting a unique hardware identifier, does pointerId fall back to its
> original behavior? In the spec, we decided between null, undefined, and
> integer as the deterministic values of deviceId.
>
> We *could* use pointerId instead, but we'd have to align on the solution
> for (b)
>

I guess we should take this to a GitHub repo somewhere, but I can't help
but interject: sounds like a pretty good use case for
InputDeviceCapabilities
<https://developer.mozilla.org/en-US/docs/Web/API/InputDeviceCapabilities> to
me (i.e. 'hasDeterministicPointerId') ☺. Perhaps along with a boolean on
the event for the limitation case discussed in the explainer.

On Monday, December 12, 2022 at 8:08:11 AM UTC-8 Mustaq Ahmed wrote:
>
>> Supporting consistent IDs for supported pens sounds great.
>>
>> Sahir & Ben: wondering why a new deviceId field seems more logical now
>> against the original proposal of repurposing the pointerId field?  Is it
>> because of the compat concern you raised in w3c/pointerevents/issues/353
>> <https://github.com/w3c/pointerevents/issues/353#issuecomment-1346776842>
>> ?
>>
>>
>> On Thu, Dec 8, 2022 at 5:16 PM Rick Byers <rby...@chromium.org> wrote:
>>
>>> On Thu, Dec 8, 2022 at 1:17 PM Sahir Vellani <sahir....@microsoft.com>
>>> wrote:
>>>
>>>> Thank you for all the feedback!
>>>>
>>>>
>>>>
>>>> Rick, yes that’s correct. The ID will be refreshed on reload and
>>>> iframes will have a different ID to their parent/each other. Also, we can
>>>> definitely explore integration with web driver and adding a WPT test.
>>>>
>>>
>>> Perfect. I'm not a privacy reviewer, but that makes a lot of sense to
>>> me.
>>>
>>> Ben, any thoughts on the PEWG path Rick mentions below?
>>>>
>>>
>>> Sounds <https://github.com/w3c/pointerevents/issues/353> like the
>>> current editor / WG chair prefers a WICG spec until L3 gets finalized
>>> anyway. But knowing it's just a process thing and can trivially be moved
>>> into the PE spec once L3 reaches REC seems good enough to me.
>>>
>>> Sahir
>>>>
>>>>
>>>>
>>>> *From:* Rick Byers <rby...@chromium.org>
>>>> *Sent:* Tuesday, December 6, 2022 12:34 PM
>>>> *To:* Sahir Vellani <sahir....@microsoft.com>; Mustaq Ahmed <
>>>> mus...@chromium.org>; Robert Flack <fla...@chromium.org>
>>>> *Cc:* blin...@chromium.org; Ben Mathwig <benjamin...@microsoft.com>
>>>> *Subject:* [EXTERNAL] Re: [blink-dev] Intent to Prototype:
>>>> PointerEvent.deviceId for Mult-Pen Inking
>>>>
>>>>
>>>>
>>>> You don't often get email from rby...@chromium.org. Learn why this is
>>>> important <https://aka.ms/LearnAboutSenderIdentification>
>>>>
>>>> Cool, looks like a nice little addition to me. +Mustaq Ahmed and +Robert
>>>> Flack from the Chrome interactions team who are likely code reviewers.
>>>>
>>>>
>>>>
>>>> The only real potential debate I see is around the details of the
>>>> privacy protections. If I understand correctly "per document instance"
>>>> means that the IDs will even be different across iframes in the same tab,
>>>> and also when a page is reloaded. Is that right? If so, I can't see how it
>>>> would be an issue.
>>>>
>>>>
>>>>
>>>> On Mon, Dec 5, 2022 at 12:49 PM 'Sahir Vellani' via blink-dev <
>>>> blin...@chromium.org> wrote:
>>>>
>>>> Contact emails
>>>>
>>>> bema...@microsoft.com, sahir....@microsoft.com
>>>>
>>>> Explainer
>>>>
>>>>
>>>> https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/PointerEventDeviceId/explainer.md
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftEdge%2FMSEdgeExplainers%2Fblob%2Fmain%2FPointerEventDeviceId%2Fexplainer.md&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=G%2Be9w01lXS3f5pbAJTk57Q%2BAuMz4aDPZUwIQKjwQbOc%3D&reserved=0>
>>>>
>>>> Specification
>>>>
>>>>
>>>> https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/PointerEventDeviceId/explainer.md
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftEdge%2FMSEdgeExplainers%2Fblob%2Fmain%2FPointerEventDeviceId%2Fexplainer.md&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=G%2Be9w01lXS3f5pbAJTk57Q%2BAuMz4aDPZUwIQKjwQbOc%3D&reserved=0>
>>>>
>>>>
>>>>
>>>> FWIW with my former PointerEvents spec editor hat on, I pinged this
>>>> issue
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fw3c%2Fpointerevents%2Fissues%2F353&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=shwJW5sh9Z7noHd%2BxTIscswn0dmrQ8ovNHvBohtVM3M%3D&reserved=0>
>>>> on the PointerEvents spec. We've had 'extensions' to the PointerEvents spec
>>>> in the past, so the PEWG may be amenable to something simple and pragmatic
>>>> that'll naturally make it into the next official PE spec rather than
>>>> starting with WICG. But with my Blink API owner hat on, either path is 
>>>> fine.
>>>>
>>>>
>>>>
>>>> Summary
>>>>
>>>> As devices with advanced pen input capabilities are becoming
>>>> increasingly prevalent, it is important that the web platform continues to
>>>> evolve to fully support these advanced features in order to unlock rich
>>>> experiences for both end users and developers. One such advancement is the
>>>> ability for a device's digitizer to recognize more than one pen device
>>>> interacting with it simultaneously. This feature is an extension to the
>>>> PointerEvent interface to include a new attribute, deviceId, that
>>>> represents a session-persistent, document isolated, unique identifier that
>>>> a developer can reliably use to identify individual pens interacting with
>>>> the page.
>>>>
>>>>
>>>>
>>>> Blink component
>>>>
>>>> Blink>Input
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.chromium.org%2Fp%2Fchromium%2Fissues%2Flist%3Fq%3Dcomponent%3ABlink%253EInput&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=KOnl6tr0L%2BBsJDBmleREcYjsWL5KJGQRf8yBWAWEtz0%3D&reserved=0>
>>>>
>>>> Motivation
>>>>
>>>> Currently, developers have no way to distinguish between two individual
>>>> pens on an ink-enabled digitizer. The existing PointerEvent.id attribute is
>>>> implemented in different ways and does not always persist for each ink
>>>> stroke or interaction with the screen. Developers can use this change to
>>>> have a secure and reliable way to identify individual pen (pointers)
>>>> interacting with the screen in order to set specific colors or pen shapes
>>>> for each device interacting with the digitizer.
>>>>
>>>>
>>>>
>>>> Initial public proposal
>>>>
>>>>
>>>> https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/PointerEventDeviceId/explainer.md
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftEdge%2FMSEdgeExplainers%2Fblob%2Fmain%2FPointerEventDeviceId%2Fexplainer.md&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=G%2Be9w01lXS3f5pbAJTk57Q%2BAuMz4aDPZUwIQKjwQbOc%3D&reserved=0>
>>>>
>>>> TAG review
>>>>
>>>>
>>>>
>>>> TAG review status
>>>>
>>>> Pending
>>>>
>>>> Risks
>>>>
>>>> Fingerprinting risks, which will be mitigated by randomizing the ID
>>>> each renderer session.
>>>>
>>>> Interoperability and Compatibility
>>>>
>>>>
>>>>
>>>> *Gecko*: Request for Position: Extending the PointerEvent with Unique
>>>> DeviceId Attribute · Issue #715 · mozilla/standards-positions · GitHub
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmozilla%2Fstandards-positions%2Fissues%2F715&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=tSQAhmHBFJzejfxrGlZvMxC13LNtvhlYBQCp0%2FGffC0%3D&reserved=0>
>>>>
>>>> *WebKit*: Request for Position: Extending the PointerEvent with Unique
>>>> DeviceId Attribute · Issue #102 · WebKit/standards-positions · GitHub
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FWebKit%2Fstandards-positions%2Fissues%2F102&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=%2FizM7QU4r4xhCg2hmy8KCnKLB92KSqBh2hdMSGxEHb4%3D&reserved=0>
>>>>
>>>> *Web developers*: No signals
>>>>
>>>> *Other signals*:
>>>>
>>>> WebView application risks
>>>>
>>>> *Does this intent deprecate or change behavior of existing APIs, such
>>>> that it has potentially high risk for Android WebView-based applications?*
>>>>
>>>> None
>>>>
>>>> Debuggability
>>>>
>>>> deviceId will be available via DevTools for front-end debugging.
>>>>
>>>> Is this feature fully tested by web-platform-tests
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fchromium.googlesource.com%2Fchromium%2Fsrc%2F%2B%2Fmain%2Fdocs%2Ftesting%2Fweb_platform_tests.md&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=7WmFy2DcTeNmg0ZsyOAnYDgDwXH0lQh0uxwApWGtPX8%3D&reserved=0>
>>>> ?
>>>>
>>>> No
>>>>
>>>>
>>>>
>>>> We've got automation plumbing for the rest of PointerEvents I believe.
>>>> Any reason not to add plumbing through WebDriver for this too and an
>>>> automated WPT test? I suppose the value is pretty low, but IMHO would be
>>>> nice if it's not too much more expensive than the alternative chromium-only
>>>> tests.
>>>>
>>>>
>>>>
>>>> Flag name
>>>>
>>>> PointerEventDeviceId
>>>>
>>>> Requires code in //chrome?
>>>>
>>>> False
>>>>
>>>> Estimated milestones
>>>>
>>>> No milestones specified
>>>>
>>>>
>>>>
>>>> Link to entry on the Chrome Platform Status
>>>>
>>>> https://chromestatus.com/feature/5114132234240000
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fchromestatus.com%2Ffeature%2F5114132234240000&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=tDayY%2FyoZL4k%2Bq3WUeeKhAAHUM9AOBrEatMlXXpXKHE%3D&reserved=0>
>>>>
>>>> This intent message was generated by Chrome Platform Status
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fchromestatus.com%2F&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556723904504%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=nPWfOUyhwzxBKl%2FUOasrtn%2B3PZSJBd0x%2F2QOLe0b1W8%3D&reserved=0>
>>>> .
>>>>
>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "blink-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to blink-dev+...@chromium.org.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SA0PR00MB1033E5DE0BDE42239E647E9AFB189%40SA0PR00MB1033.namprd00.prod.outlook.com
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fa%2Fchromium.org%2Fd%2Fmsgid%2Fblink-dev%2FSA0PR00MB1033E5DE0BDE42239E647E9AFB189%2540SA0PR00MB1033.namprd00.prod.outlook.com%3Futm_medium%3Demail%26utm_source%3Dfooter&data=05%7C01%7CSahir.Vellani%40microsoft.com%7C46111826fa2b47ee46a508dad7c94550%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C638059556724060722%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=O5hLFpJJNCBM9H1VaonKLfZ0P%2FSAjFix22LEZ%2BnoImk%3D&reserved=0>
>>>> .
>>>>
>>>> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to blink-dev+unsubscr...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/870380fe-ab9a-4925-8db1-261efa233295n%40chromium.org
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/870380fe-ab9a-4925-8db1-261efa233295n%40chromium.org?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY9cm%2BaAWc3%2Ba2b62YSQWPM8%2B4tMf6d52V51mzJKc8b2dA%40mail.gmail.com.

Reply via email to