IWA OWNER LGTM

I would like to eventually see a version of this capability available
cross-platform. However as discussed with Blink API OWNERS this
ChromeOS-specific API is being proposed in a way that avoids accidentally
burning it into the platform and will need to be redesigned if platform
support is expanded.
Reilly Grant | Software Engineer | [email protected] | Google Chrome
<https://www.google.com/chrome>


On Wed, Jul 15, 2026 at 9:17 AM Chris Harrelson <[email protected]>
wrote:

> LGTM1
>
> This is a very specific API just on ChromeOS, and the global variables are
> only visible to IWAs explicitly opted into it via controls on that OS. It
> doesn't set a new precedent.
>
> This also aligns with the plan of action discussed on
> blink-api-owners-dsicuss.
>
> On Mon, Jul 13, 2026 at 1:05 PM 'Edman Anjos' via blink-dev <
> [email protected]> wrote:
>
>> 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
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/a2a7f5c3-e2f2-4c6e-97b3-79ecf2c040b0n%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%2Bw9vF8eew04g%3DBuwiGD2TCPhWCPLn3fT2PRRx_uHpxmGkA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9vF8eew04g%3DBuwiGD2TCPhWCPLn3fT2PRRx_uHpxmGkA%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/CAEmk%3DMZKA2G4x3cnxS%3DkaYLRCRF9KzOau9sGkNYrsL9JNH1eSw%40mail.gmail.com.

Reply via email to