LGTM3. I'm very excited to see this ship! IMHO PEPC opens up a new sweet
spot in the tradeoff space here for a wide variety of use cases, I can't
wait to see it deployed in other cases too.

Agreed we can continue to work on ease of adoption without blocking
shipping.

Rick

On Wed, Nov 26, 2025 at 11:16 AM Chris Harrelson <[email protected]>
wrote:

> LGTM2
>
> On Wed, Nov 26, 2025 at 8:15 AM Yoav Weiss (@Shopify) <
> [email protected]> wrote:
>
>> LGTM1
>>
>> The main concerns I heard at TPAC were around the restrictions
>> potentially being too restrictive, and/or lack of adoption as a result. I
>> think we can evolve the feature regarding the former if it turns out to be
>> necessary. And the best way to find out about the latter is to ship :)
>>
>> On Friday, November 21, 2025 at 1:43:37 PM UTC+1 Chromestatus wrote:
>>
>>> *Contact emails*
>>> [email protected], [email protected], [email protected]
>>>
>>> *Explainer*
>>> https://github.com/WICG/PEPC/blob/main/explainer.md
>>> https://github.com/WICG/PEPC/blob/main/geolocation_explainer.md
>>>
>>> *Specification*
>>> https://wicg.github.io/PEPC/permission-elements.html
>>>
>>> *Design docs*
>>>
>>>
>>> https://docs.google.com/document/d/1GyDZ9gq5ckrpLEr0l1xLM1kR-mxqWrS6LapwVa0mCLA/edit?tab=t.0#heading=h.bat9awopsp53
>>>
>>> *Summary*
>>> Introduces the <geolocation> element, a declarative, user-activated
>>> control for accessing the user's location. It streamlines the user and
>>> developer journey by not only handling the permission flow but also
>>> directly providing location data to the site, often eliminating the need
>>> for a separate JavaScript API call. This addresses the long-standing
>>> problem of permission prompts being triggered directly from JavaScript
>>> without a strong signal of user intent. By embedding a browser-controlled
>>> element in the page, the user's click provides a clear, intentional signal.
>>> This enables a much better prompt UX and, crucially, provides a simple
>>> recovery path for users who have previously denied the permission. Note:
>>> This feature was previously developed and tested in an Origin Trial as the
>>> more generic <permission> element. Based on feedback from developers and
>>> other browser vendors, it has evolved into the capability-specific
>>> <geolocation> element to provide a more tailored and powerful developer
>>> experience. Explainer:
>>> https://github.com/WICG/PEPC/blob/main/geolocation_explainer.md
>>> Instructions: https://github.com/WICG/PEPC/blob/main/HOWTO.md
>>>
>>> *Blink component*
>>> UI>Browser>Permissions>Prompts
>>> <https://issues.chromium.org/issues?q=customfield1222907:%22UI%3EBrowser%3EPermissions%3EPrompts%22>
>>>
>>> *Web Feature ID*
>>> permissions <https://webstatus.dev/features/permissions>
>>>
>>> *Motivation*
>>> The current web permission model for geolocation relies on
>>> JavaScript-triggered prompts, giving the user agent no strong signal of
>>> user intent. This results in out-of-context prompts, user frustration, and
>>> difficult-to-recover-from denial states. We propose the <geolocation>
>>> element, a semantic HTML control with browser-controlled content and strict
>>> styling constraints. These constraints are fundamental to the security
>>> model, ensuring a very high level of confidence in the user's intent when
>>> making a permission decision at both the site and OS level. Crucially, the
>>> <geolocation> element evolves beyond simply managing permissions; it
>>> streamlines the entire journey by also directly providing location data to
>>> the site. This often eliminates the need for separate JavaScript API calls,
>>> simplifying implementation and creating a more seamless user flow. By
>>> providing a clear, consistent, in-page control, this element solves
>>> significant user problems related to context blindness and "permission
>>> regret," offering a simple recovery path from a previously denied state.
>>> The combination of a user-initiated element and a subsequent
>>> browser-controlled confirmation UI enhances intent capture, improves
>>> accessibility, and prevents manipulative patterns, providing a
>>> significantly better experience for both users and developers.
>>>
>>> *Initial public proposal*
>>> https://github.com/WICG/proposals/issues/113
>>>
>>> *TAG review*
>>> https://github.com/w3ctag/design-reviews/issues/1079
>>> https://github.com/w3ctag/design-reviews/issues/1140
>>>
>>> *TAG review status*
>>> Issues addressed
>>>
>>> *Origin Trial Name*
>>> Page-embedded Permission Control (Camera/Mic)
>>>
>>> *Chromium Trial Name*
>>> PermissionElement
>>>
>>> *Origin Trial documentation link*
>>> https://github.com/WICG/PEPC/blob/main/explainer.md
>>>
>>> *WebFeature UseCounter name*
>>> kHTMLPermissionElement
>>>
>>> *Risks*
>>>
>>>
>>> *Interoperability and Compatibility*
>>> There is a risk that this feature fails to be adopted by other browsers.
>>> This can be mitigated by backwards designing a reasonable fallback
>>> mechanism so that the element can degrade gracefully if the it's in an
>>> unsupported environment.
>>>
>>> *Gecko*: Positive (
>>> https://github.com/mozilla/standards-positions/issues/1288)
>>>
>>> *WebKit*: No signal (
>>> https://github.com/WebKit/standards-positions/issues/545#issuecomment-3345403375
>>> )
>>>
>>> *Web developers*: Positive (https://github.com/WICG/PEPC/issues/59)
>>> https://github.com/WICG/PEPC/issues/2#issuecomment-2393820279
>>> https://github.com/WICG/PEPC/issues/2#issuecomment-2393861768
>>> https://github.com/WICG/PEPC/issues/2#issuecomment-2393911331
>>> https://github.com/WICG/PEPC/issues/2#issuecomment-2619657041
>>>
>>> *Other signals*:
>>>
>>> *Ergonomics*
>>> No foreseen ergonomics risks.
>>>
>>> *Activation*
>>> A polyfill can help developers use this feature without risking broken
>>> functionality on non-supporting browsers.
>>>
>>> *Security*
>>> https://github.com/WICG/PEPC/blob/main/explainer.md#Security
>>>
>>> *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?
>>> Feature is not shipping on WebView due to it requiring permission
>>> manager embedder support.
>>>
>>>
>>> *Debuggability*
>>> *No information provided*
>>>
>>> *Will this feature be supported on all six Blink platforms (Windows,
>>> Mac, Linux, ChromeOS, Android, and Android WebView)?*
>>> No
>>> The Geolocation Element is not supported on Android WebView as it
>>> requires permission manager support to function and the WebView permission
>>> manager defers most permission decisions to the embedder by design.
>>>
>>> *Is this feature fully tested by web-platform-tests
>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
>>> Yes
>>> https://wpt.fyi/results/html/semantics/permission-element
>>>
>>> *DevTrial instructions*
>>> https://github.com/WICG/PEPC/blob/main/HOWTO.md
>>>
>>> *Flag name on about://flags*
>>> *No information provided*
>>>
>>> *Finch feature name*
>>> GeolocationElement
>>>
>>> *Rollout plan*
>>> Will ship enabled for all users
>>>
>>> *Requires code in //chrome?*
>>> True
>>>
>>> *Tracking bug*
>>> https://b.corp.google.com/issues/435351699
>>>
>>> *Launch bug*
>>> https://launch.corp.google.com/launch/4428191
>>>
>>> *Availability expectation*
>>> Feature is available only in Chromium browsers. We are not aware of
>>> other browsers adoption.
>>>
>>> *Adoption expectation*
>>> Feature is used by specific partner(s) to provide functionality within
>>> 12 months of launch in Chrome. Partners who are tested the feature in OT
>>> are expected to continue usage.
>>>
>>> *Adoption plan*
>>> We are planning to publish on developer.chrome.com and do further
>>> partner outreach
>>>
>>> *Non-OSS dependencies*
>>>
>>> Does the feature depend on any code or APIs outside the Chromium open
>>> source repository and its open-source dependencies to function?
>>> No
>>>
>>> *Estimated milestones*
>>> Shipping on desktop 144
>>> Origin trial desktop first 126
>>> Origin trial desktop last 131
>>> Origin trial extension 1 end milestone 134
>>> Origin trial extension 2 end milestone 137
>>> Origin trial extension 3 end milestone 140
>>> Origin trial extension 4 end milestone 143
>>> DevTrial on desktop 121
>>> Shipping on Android 144
>>> Origin trial Android first 134
>>> DevTrial on Android 134
>>>
>>> *Anticipated spec changes*
>>>
>>> Open questions about a feature may be a source of future web compat or
>>> interop issues. Please list open issues (e.g. links to known github issues
>>> in the project for the feature specification) whose resolution may
>>> introduce web compat/interop risk (e.g., changing to naming or structure of
>>> the API in a non-backward-compatible way).
>>> NA
>>>
>>> *Link to entry on the Chrome Platform Status*
>>> https://chromestatus.com/feature/5125006551416832?gate=5202152317779968
>>>
>>> *Links to previous Intent discussions*
>>> Intent to Prototype:
>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/TGsrhP4ref0/m/bHFj3id9AgAJ?utm_medium=email&utm_source=footer
>>> Ready for Trial:
>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/D-mE5qIlkWY
>>> Intent to Experiment:
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFuQ4YuA5Fskj1QyrzL%2BXpZdQGe_vCu-wQjgqqhDwazC0Rr4FA%40mail.gmail.com
>>> Intent to Extend Experiment 1:
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALTCLq7M2xaMvR4xFUk29gAsLLUcmWBFqgKhwQfADrf%3DmniNHg%40mail.gmail.com
>>> Intent to Extend Experiment 2:
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/679cc50c.2b0a0220.243291.0754.GAE%40google.com
>>> Intent to Extend Experiment 3:
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/685d0e00.170a0220.291021.0232.GAE%40google.com
>>> Intent to Extend Experiment 4:
>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/z2ikrqboP3o
>>>
>>>
>>> This intent message was generated by Chrome 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 visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/2c3f0786-805a-4eec-b576-e52c755ae0fdn%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/2c3f0786-805a-4eec-b576-e52c755ae0fdn%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 [email protected].
> To view this discussion visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw8FKd65J3Cim9BrAGPj8cnN%2B1xKY4MSwXX7udWsoUSCGQ%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw8FKd65J3Cim9BrAGPj8cnN%2B1xKY4MSwXX7udWsoUSCGQ%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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY_0EN0ZLaxoj_8OX%2ByB1Y6LdiNP5yGZ9OSeXfMNDMT6Xw%40mail.gmail.com.

Reply via email to