LGTM2 On Thu, Mar 30, 2023 at 12:27 PM 'François Beaufort' via blink-dev < [email protected]> wrote:
> I've filed https://github.com/w3ctag/design-reviews/issues/830 > > On Wed, Mar 29, 2023 at 5:36 PM Alex Russell <[email protected]> > wrote: > >> LGTM1, but please let the TAG know about this change w/ an FYI. >> >> On Tuesday, March 28, 2023 at 11:00:24 PM UTC-7 [email protected] wrote: >> >>> Contact emails >>> >>> [email protected] >>> >>> [email protected] >>> >>> Explainer >>> >>> >>> https://github.com/WebBluetoothCG/web-bluetooth/issues/599#issue-1638254435 >>> >>> Specification >>> >>> >>> https://webbluetoothcg.github.io/web-bluetooth/#ref-for-dom-requestdeviceoptions-exclusionfilters >>> >>> https://github.com/WebBluetoothCG/web-bluetooth/pull/600 >>> >>> Summary >>> >>> The "exclusionFilters" option in navigator.bluetooth.requestDevice() >>> allows web developers to exclude some devices from the browser picker. It >>> can be used to exclude devices that match a broader filter but are >>> unsupported. >>> >>> Blink component >>> >>> Blink>Bluetooth >>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EBluetooth> >>> >>> Motivation >>> >>> Allowing web developers, through the "exclusionFilters" option, to >>> exclude from the browser picker some devices that are not supported by the >>> site will improve user experience. Without it, web developers let users >>> pick a device, then have to check using a custom JavaScript helper function >>> and alert the user after they’ve already selected a device, resulting in a >>> poor user experience. >>> >>> // Request access to a bluetooth device whose name starts with "Created >>> by". >>> >>> // The device named "Created by Francois" has been reported as >>> unsupported. >>> >>> const device = await navigator.bluetooth.requestDevice({ >>> >>> filters: [{ namePrefix: "Created by" }], >>> >>> exclusionFilters: [{ name: "Created by Francois" }], >>> >>> }); >>> >>> TAG review >>> >>> This small addition to the Web Bluetooth API doesn’t seem to qualify for >>> a TAG review. I’m happy to file one if desired though. >>> >>> TAG review status >>> >>> Not Applicable >>> >>> Risks >>> Interoperability and Compatibility >>> >>> Older browsers will ignore exclusionFilters and all devices matching the >>> provided filter will be displayed (the current behavior). >>> >>> Signals from other implementations (Gecko, WebKit): >>> >>> Gecko: No Signal [1] >>> >>> WebKit: No Signal [1] >>> >>> Web / Framework developers: Positive >>> https://stackoverflow.com/questions/75815353/web-bluetooth-want-to-exclude-certain-devices-when-using-navigator-bluetooth-re >>> >>> [1] Both Gecko and WebKit are unlikely to object to this feature >>> specifically, but object to the overall Web Bluetooth API as a whole, hence >>> it doesn't make sense to bug them with specific questions on this. >>> >>> Activation: >>> >>> This feature can't be polyfilled. It should be fairly trivial for >>> developers to adopt this new feature. >>> >>> Debuggability >>> >>> No specific DevTools changes are required. This feature is treated like >>> any other JS method. >>> >>> Note that exposing DevTools debugging support for device-access APIs >>> (Web Bluetooth included) is discussed at >>> https://bugs.chromium.org/p/chromium/issues/detail?id=1142566#c20. >>> >>> Is this feature fully tested by web-platform-tests >>> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> >>> ? >>> >>> No, because browser picker implementation is implemented outside of >>> Blink and so isn’t testable fully by web-platform-tests. >>> >>> Requires code in //chrome? >>> >>> No. >>> >>> Tracking bug >>> >>> https://bugs.chromium.org/p/chromium/issues/detail?id=1427977 >>> >>> Estimated milestones >>> >>> 114 >>> >>> Link to entry on the Chrome Platform Status >>> >>> https://chromestatus.com/feature/6208474255458304 >>> >>> >>> >>> -- > 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 [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5Jy-kHVWT2qV_S3O4ZWxhbDwi%2B1r3YoFByZvDV0R7jOBA%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5Jy-kHVWT2qV_S3O4ZWxhbDwi%2B1r3YoFByZvDV0R7jOBA%40mail.gmail.com?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 [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfVSjojFCfoD1Kdn7dWRPkgOD0AZCxXTpCzV5NHYuGwEBA%40mail.gmail.com.
