Hi Alex, thanks a lot for your reply,
there's some additional context I can share about this feature:

* This feature is designed as a ChromeOS-specific Blink extension 
exclusively for Isolated Web Apps (IWAs). It is not a general web standard 
or cross-platform web API, and will not become one. Access is further 
restricted to allowlisted applications. Because the target audience and 
platform scope are so narrow, standardization is not a goal in this feature.

* We first proposed this style of APIs on blink-api-owners-discuss 
<https://groups.google.com/a/chromium.org/g/blink-api-owners-discuss/c/q_bRRc_RxBo/m/iAaMUIbOAAAJ>.
 
`setShape` is our first (and currently only planned) API following this 
proposal. The use of `chromeos.isolatedWebApp.*` comes from the need of a 
namespace that won't pollute standard web or IWA API surfaces, or 
potentially other ChromeOS-only APIs.

* The API signature and behavior comes from the existing 
`chrome.app.window.setShape` API for Chrome Apps on ChromeOS. Partners are 
already familiar with the Chrome App API, so mirroring it for the IWA API 
greatly simplifies adoption.

I hope this clarifies things.

Thanks again,
Edman

On Monday, July 13, 2026 at 8:44:21 PM UTC+2 Alex Russell wrote:

> Hey folks,
>
> I'm *very* excited to see this capability coming to the web!
>
> At the same time, the shape of this proposal is not going to pass muster 
> in current form.
>
> First, we can't be embedding the name `chromeos` into APIs that can be 
> used across platforms. We should hope and expect for a day when IWAs are 
> lit up more broadly, so putting this in a CrOS-specific namespace is a bad 
> smell. It also isn't clear that this should be prefixed with an 
> IWA-specific namespace.
>
> Second, it isn't clear that this making format is common to other masking 
> formats on the web. I don't see a list of considered design alternatives 
> for these (and other) API shape concerns in the Explainer, which in and of 
> itself is concerning. Can you please reach out to a current or former TAG 
> memeber in your org to get guidance on API shape?
>
> Best,
>
> Alex
>
> On Wednesday, July 8, 2026 at 9:58:26 AM UTC-7 Chromestatus wrote:
>
>> *Contact emails*
>> [email protected], [email protected]
>>
>> *Explainer*
>>
>> https://github.com/explainers-by-googlers/chromeos-iwa-apis/blob/main/window-shape-explainer.md
>>
>> *Specification*
>> https://explainers-by-googlers.github.io/chromeos-iwa-apis 
>>
>> *Design docs*
>>
>>
>> https://docs.google.com/document/d/1zPr1QgS-bXsJE7nrO44zx9RBopR4gHuvHxfcqxsX5Ag/edit?tab=t.0#heading=h.pcgro84kqnh3
>>
>> *Summary*
>> Window Shape API enables allowlisted [Isolated Web Apps](
>> https://chromeos.dev/en/web/isolated-web-apps) on ChromeOS to customize 
>> their window shape. By enabling non-rectangular and non-contiguous window 
>> layouts, developers can implement unique user experiences (such as widgets, 
>> floating panels, and overlays) that match the look-and-feel of native 
>> applications. The API `window.chromeos.isolatedWebApp.setShape` requires 
>> the window to be in the unframed display mode and requires the 
>> window-management permission to be granted. Administrators can manage this 
>> feature with existing policies for window management: - 
>> [DefaultWindowManagementSetting](
>> https://chromeenterprise.google/policies/#DefaultWindowManagementSetting) 
>> configures the default state for the window management for all apps. The 
>> policies below can override this default. - 
>> [WindowManagementAllowedForUrls](
>> https://chromeenterprise.google/policies/#WindowManagementAllowedForUrls) 
>> allows IWAs with specified origins to enter unframed mode and set custom 
>> window shapes without any user interaction. - 
>> [WindowManagementBlockedForUrls](
>> https://chromeenterprise.google/policies/#WindowManagementBlockedForUrls) 
>> blocks the permission for specified origins, forcing Chrome to remove any 
>> custom window shapes and fallback to other available display modes. 
>>
>> *Blink component*
>> UI>Browser>WebAppInstalls>Isolated 
>> <https://issues.chromium.org/issues?q=customfield1222907:%22UI%3EBrowser%3EWebAppInstalls%3EIsolated%22>
>>
>> *Web Feature ID*
>> Missing feature 
>>
>> *Motivation*
>> *No information provided* 
>>
>> *Initial public proposal*
>> *No information provided*
>>
>> *TAG review*
>> N/A - TAG review is not needed for IWA APIs 
>> https://crsrc.org/c/docs/website/site/blink/launching-features/isolated-web-apps/index.md;l=73;drc=a5459539e0dfc093d8dc137fb9f8a72ddf5dcbb3
>>  
>>
>> *TAG review status*
>> Not applicable
>>
>> *Goals for experimentation*
>> None 
>>
>> *Risks*
>>
>>
>> *Interoperability and Compatibility*
>> N/A, this feature is not meant to be implemented by other browsers. 
>>
>> *Gecko*: No signal
>>
>> *WebKit*: No signal
>>
>> *Web developers*: No signals
>>
>> *Other signals*:
>>
>> *Ergonomics*
>> N/A
>>
>> *Activation*
>> N/A, the feature is a single JS API that follows the same behavior as a 
>> pre-existing Chrome App API. Developers already know how to use it.
>>
>> *Security*
>> See 
>> https://github.com/explainers-by-googlers/chromeos-iwa-apis/blob/main/window-shape-explainer.md#security--privacy-considerations
>>  
>> In summary: The custom shape can be used to create a hidden window, or for 
>> clickjacking. We mitigate this by requiring a minimum shape size of 10x10 
>> pixels, and by enforcing an allowlist of partners that can use this API.
>>
>> *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? 
>> N/A 
>>
>>
>> *Debuggability*
>> N/A 
>>
>> *Will this feature be supported on all six Blink platforms (Windows, Mac, 
>> Linux, ChromeOS, Android, and Android WebView)?*
>> No 
>> This feature is implemented as a Blink extensions for Chrome on ChromeOS. 
>> It will not be available in any other platform. 
>>
>> *Is this feature fully tested by web-platform-tests 
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
>> No 
>>
>>
>> *Flag name on about://flags*
>> enable-chromeos-isolated-web-app-set-shape 
>>
>> *Finch feature name*
>> *No information provided* 
>>
>> *Non-finch justification*
>> *No information provided*
>>
>> *Rollout plan*
>> Will ship enabled for all users
>>
>> *Requires code in //chrome?*
>> False
>>
>> *Availability expectation*
>> Feature is available only in Chrome on ChromeOS, and only for allowlisted 
>> IWAs.
>>
>> *Adoption expectation*
>> Feature is used by allowlisted IWAs within 12 months of launch in Chrome.
>>
>> *Adoption plan*
>> Work with partners: The feature is currently available behind a feature 
>> flag in ChromeOS, and two partners already use it to develop new IWAs. The 
>> target release of their IWAs is 26Q4. 
>>
>> *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? 
>> N/A
>>
>> *Estimated milestones*
>> Shipping on desktop 152 
>>
>> *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). 
>> N/A
>>
>> *Link to entry on the Chrome Platform Status*
>> https://chromestatus.com/feature/5075144470036480?gate=6125215051546624
>>
>> 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/a2a7f5c3-e2f2-4c6e-97b3-79ecf2c040b0n%40chromium.org.

Reply via email to