Correct. The larger plan is to:
- Require requestPermission() before window.ondevice{motion,orientation} start dispatching events
- Change the UI side to prompt for sensor access when necessary
- Do the same as part of Sensor.start() (meaning Accelerometer.start() etc)

How to get there without breaking websites that do not use requestPermission() is something we are still working out and that will not happen in the short term.

On 21-06-2022 19:45, Joe Medley wrote:
"these new functions are part of the plan to start prompting for access in the future."

Can I assume this means you're going to deprecate default access to window.ondevice{motion,orientation} at some point? Joe Medley | Technical Writer, Chrome DevRel |[email protected] | 816-678-7195
/If an API's not documented it doesn't exist./


On Mon, Jun 20, 2022 at 6:15 AM Raphael Kubo da Costa <[email protected]> wrote:


            Contact emails

    [email protected],[email protected],[email protected]


            Explainer

    None


            Specification

    https://w3c.github.io/deviceorientation


            Summary

    Allows developers to ask for permission to start using the Device
    Orientation and Device Motion APIs. Access to these APIs is
    currently granted by default, and these new functions are part of
    the plan to start prompting for access in the future.



            Blink component

    Blink>Sensor>DeviceOrientation
    
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ESensor%3EDeviceOrientation>


            Motivation

    The Device Orientation spec is more than a decade old, at a time
    when integration with the Permissions spec was not common (or
    possible). As such, developers can use the
    window.ondevice{motion,orientation} events without having to ask
    for permission before reading sensor data. A few years ago, the
    WebKit team added the requestPermission() functions to
    DeviceOrientationEvent and DeviceMotionEvent when implementing the
    spec, so that websites would have to ask for permission before
    being able to use the API. This is the case on Safari for iOS at
    the moment. We want to do the same thing and avoid allowing
    websites access to sensor data by default. Doing this in Chromium
    is more complicated because the API is already implemented, and
    requiring developers to add requestPermission() to their websites
    out of the blue can risk breaking the web. In this first step, the
    idea is to just add the API and make it report "granted" or
    "denied" without prompting for access (i.e. it just reports the
    current Motion Sensor permission settings) while also adding user
    counters to understand how many pages are already using the
    requestPermission() calls and how many pages are just using
    window.ondevice{motion,orientation} without it. We will then
    evaluate how to switch to prompting by default in the future, as
    discussed in the tracking bug.



            Initial public proposal



            Search tags

    device orientation
    <https://chromestatus.com/features#tags:device%20orientation>,device
    motion <https://chromestatus.com/features#tags:device%20motion>


            TAG review



            TAG review status

    Not applicable


            Risks



            Interoperability and Compatibility



    /Gecko/: Under consideration
    (https://bugzilla.mozilla.org/show_bug.cgi?id=1536382)

    /WebKit/: Shipped/Shipping
    (https://bugs.webkit.org/show_bug.cgi?id=195329)

    /Web developers/: No signals

    /Other signals/: Lots of comments in the Chromium tracking bug
    over the years


            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?



            Debuggability

    -



            Is this feature fully tested byweb-platform-tests
            
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?

    Yes (as part of the CL I am working on)


            Flag name



            Requires code in //chrome?

    False


            Tracking bug

    https://bugs.chromium.org/p/chromium/issues/detail?id=947112


            Estimated milestones

    No milestones specified



            Link to entry on the Chrome Platform Status

    https://chromestatus.com/feature/5051845089689600

    This intent message was generated byChrome Platform Status
    <https://chromestatus.com/>.
-- 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/a7bfbf70-0cbf-709f-6310-7af1101c2574%40intel.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/a7bfbf70-0cbf-709f-6310-7af1101c2574%40intel.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/01c2c348-bc39-71d2-c3e0-c34cc7d82b91%40intel.com.

Reply via email to