Intent to Extend Experiment: Page-Embedded Permission Control

131 views
Skip to first unread message

Chromestatus

unread,
Jun 26, 2025, 5:08:29 AMJun 26
to blin...@chromium.org, andy...@google.com, lemi...@google.com, voge...@google.com

Contact emails

andy...@google.com, lemi...@google.com, voge...@google.com

Explainer

https://github.com/andypaicu/PEPC/blob/main/explainer.md

Specification

https://wicg.github.io/PEPC/permission-element.html

Summary

Provide a new HTML element that interacts with the permission flow. The permission prompt is currently triggered directly from JS without the user agent having any strong signal of the user's intent. Having an in-content element that the user uses to trigger the permission flow allows for improved permission prompt UX for users as well as a recovery path from the "denied" permission state for sites. Explainer: https://github.com/WICG/PEPC/blob/main/explainer.md Instructions: https://github.com/WICG/PEPC/blob/main/HOWTO.md Developer facing documentation: https://developer.chrome.com/blog/permission-element-origin-trial



Blink component

UI>Browser>Permissions>Prompts

TAG review

https://github.com/w3ctag/design-reviews/issues/1079

TAG review status

Pending

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 polyfilling some of the functionality to ensure the feature is not completely broken in non-implementing browsers.



Gecko: Negative (https://github.com/mozilla/standards-positions/issues/908)

WebKit: Oppose (https://github.com/WebKit/standards-positions/issues/270)

Web developers: Positive 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

This feature will likely be used in tandem with the Permissions API (https://www.w3.org/TR/permissions/) which is already supported. The Permissions API runs async. 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?

None



Goals for experimentation



Reason this experiment is being extended

The OT originally spans from 126-131, we would like to extend it starting from 132-134 (inclusive), as there is new functionality being added to the existing trial to support the addition of support for geolocation permission (<permission type=”geolocation”>), as well as to give additional partners chances to experiment with the existing <permission> element OT support for camera & mic permission types. The new functionality will not be ready for OT until the stable release of 132.



Reason this experiment is being extended

PEPC is being introduced on Android as well in M134 and we wish to allow developers time to experiment with the feature on a mobile platform where the overall UX can be quite different and users interact with certain permissions differently. Additionally there are still open questions around the markup of the element and whether it should be a void element vs allowing contents, and we would like to further explore options in this space before committing to one particular solution.



Reason this experiment is being extended

Recent developments and feedback have provided an opening to further discuss and change the design and potentially change the feedback from Mozilla and Safari from "negative". Mozilla new standards position: https://github.com/mozilla/standards-positions/issues/1245 TAG meeting minutes: https://github.com/w3ctag/meetings/blob/gh-pages/2025/telcons/06-16-minutes.md#design-reviews1079-page-embedded-permission-controls---martinthomson-marcoscaceres-matatk-heisenburger New proposal: https://github.com/WICG/PEPC/issues/59 This means that we want to explore new changes to the design and the API shape, to hopefully reach a better consensus cross-browser.



Ongoing technical constraints

None



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

The Permission Element is not supported on Android WebView as it permission manager support to actually function and the WebView permission manager defers most permission decisions to the embedder.



Is this feature fully tested by web-platform-tests?

Yes

Partial WPT: https://wpt.fyi/results/html/semantics/permission-element



DevTrial instructions

https://github.com/WICG/PEPC/blob/main/HOWTO.md

Flag name on about://flags

None

Finch feature name

PermissionElement

Requires code in //chrome?

True

Estimated milestones

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
DevTrial on desktop 121
Origin trial Android first 134


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5125006551416832?gate=5182789372346368

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


This intent message was generated by Chrome Platform Status.

Reilly Grant

unread,
Jun 26, 2025, 1:02:18 PMJun 26
to Chromestatus, blin...@chromium.org, andy...@google.com, lemi...@google.com, voge...@google.com
A new Mozilla standards position thread has been opened here with additional discussion based on an updated explainer: https://github.com/mozilla/standards-positions/issues/1245 As an outside observer it appears that progress is being made.
 
--
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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/685d0e00.170a0220.291021.0232.GAE%40google.com.

Mike Taylor

unread,
Jul 8, 2025, 3:17:45 PMJul 8
to blin...@chromium.org, andy...@google.com, lemi...@google.com, voge...@google.com

LGTM to keep experimenting given progress / conversations with other vendors.

Reply all
Reply to author
Forward
0 new messages