This is an exciting improvement to PWA parity with native apps! :) On Wed, Oct 20, 2021 at 10:49 PM 'Diego Gonzalez' via blink-dev < blink-dev@chromium.org> wrote:
> Contact emails > > amb...@microsoft.com, luigo...@microsoft.com, hata...@microsoft.com, > c...@chromium.org > > > Explainer > > https://github.com/WICG/window-controls-overlay/blob/master/explainer.md > > > Specification > > https://wicg.github.io/window-controls-overlay/ > The spec looks like it could use some work. Beyond the editorial, it doesn't seem like it defines the novel concepts that it introduces, nor the relevant processing models. > > Design docs > > > > https://github.com/WICG/window-controls-overlay/blob/main/explainer.md > > > Summary > > Window Controls Overlay allows a developer to create a custom title bar UX > by extending the installed app’s client area. The client area now covers > the entire window except for the window controls (close, maximize/restore, > minimize), which are overlaid in their respective position. > > > > The web app developer is responsible for drawing and input-handling for > the entire window except for the window controls overlay. This includes > defining which area of the window is draggable as well, with a prefixed and > non-prefixed version of a css property supported, as implemented in: > crrev.com/c/3094474. > > > > Intended uses for the Window Controls Overlay are creating seamless UX > that can use the area that was reserved for the title bar before. Many > modern applications include menus, search bars and other controls in the > title bar, and this feature enables this on installed web apps. > > > Blink component > > UI>Browser>WebAppInstalls > <https://bugs.chromium.org/p/chromium/issues/list?q=component:UI%3EBrowser%3EWebAppInstalls> > > > Search tags > > PWA <https://chromestatus.com/features#tags:PWA>, web app > <https://chromestatus.com/features#tags:web%20app>, title bar > <https://chromestatus.com/features#tags:title%20bar>, titlebar > <https://chromestatus.com/features#tags:titlebar>, customization > <https://chromestatus.com/features#tags:customization>, window controls > <https://chromestatus.com/features#tags:window%20controls> > > > TAG review > > https://github.com/w3ctag/design-reviews/issues/481 > > > TAG review status > > Resolution: satisfied > > > Risks > > > Interoperability and Compatibility > > Given that Edge has interest in the feature, there would be at least one > other browser that implements it. The feature involves additive changes > (new web app manifest entry, new JS API, new CSS env variables) and > modifications (changes to frame, new use of env(safe-area-inset-*), but no > removals, so the compatibility risk is minimal. > > > Gecko: defer https://github.com/mozilla/standards-positions/issues/529 > > > > WebKit: No signal > https://lists.webkit.org/pipermail/webkit-dev/2021-May/031865.html > > > > Web developers: Positive > > https://twitter.com/firt/status/1385238446046859268?s=20 > > https://twitter.com/AnaestheticsApp/status/1408727417330573314?s=20 > > https://twitter.com/bashik7/status/1385821988208275457?s=20 > > https://twitter.com/abraham/status/1385201046767738880?s=20 > > > Ergonomics > > The changes associated with this feature will only be enabled for PWAs > that opt-in to it, so there are minimal risks posed to the browser as a > whole. A PWA that opts-in to the feature should also have minimal > ergonomics risk since the manifest already needs to be parsed on startup to > determine the correct display mode in which the app should be launched, so > adding one extra manifest check on startup should have minimal impact. > > > Activation > > The activation risk is low since this feature includes all the tools > needed to create an app that uses the full extent of the window: new > UA-provided window controls overlay, JS APIs to query the size of the > overlay, and CSS environment variables to layout content around the overlay. > What do we expect developers to do as a fallback in non-supporting browsers? > > Security > > The major risk is that giving sites partial control over the top of the > app window allows developers to spoof content in what was previously a > trusted, UA-controlled region. To minimize the risk of spoofing, the app > will open by default in “standalone” mode with a full width title bar, and > the user can toggle window controls overlay on and off via a button in the > title bar/overlay. > OK, so both the app *and* the user need to opt-in? > > Debuggability > > The feature itself can be easily debugged by installing the PWA. Since it > is a visual feature on the window itself, it is easy to test. Nonetheless, > making sure parsing the “display-override” mode and associated values > correctly is desired, which should be incorporated into the application tab > of devtools, where all the other manifest warnings are displayed. > > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ? > > 3170531: dpwas: WPT Tests for window-controls-overlay | > https://chromium-review.googlesource.com/c/chromium/src/+/3170531 > > > Flag name > > #enable-desktop-pwas-window-controls-overlay > > > Requires code in //chrome? > > False > > > Tracking bug > > https://bugs.chromium.org/p/chromium/issues/detail?id=937121 > > > Launch bug > > https://crbug.com/1108107 > > > Sample links > > > > https://amandabaker.github.io/pwa/explainer-example/index.html > > > Estimated milestones > > OriginTrial desktop last > > 96 > > OriginTrial desktop first > > 93 > > Expected Release > > 97 > > > Link to entry on the Chrome Platform Status > > https://chromestatus.com/feature/5741247866077184 > > > Links to previous Intent discussions > > Intent to prototype: > https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/cper6nNLFRQ/hU91kfCWBQAJ > > Intent to Experiment: > https://groups.google.com/a/chromium.org/g/blink-dev/c/HNHbpxvrECA/m/JJoXKQI3BAAJ > > > > This intent message was generated by Chrome Platform Status > <https://www.chromestatus.com/>. > > > > > > Regards, > > > > *Diego González-Zúñiga* > > PM, Microsoft Edge > > > > > > -- > 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+unsubscr...@chromium.org. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/VI1PR83MB041666BD26451656C388347CCCBE9%40VI1PR83MB0416.EURPRD83.prod.outlook.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/VI1PR83MB041666BD26451656C388347CCCBE9%40VI1PR83MB0416.EURPRD83.prod.outlook.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 blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWDHDLWrOEuYFM6g8DOLK1%3DkTkGKdy-k4W5uiAZkoQEjw%40mail.gmail.com.