On Tuesday, November 30, 2021 at 6:48:07 PM UTC+1 Diego González wrote:
> Hola Yoav, > > I wanted to add that we implemented the concept of a display-override to > control the fallback of display modes. For non supported browsers, > developers can also specify the display-override and even if this is not > supported it will default to the display value in the manifest file. > > > > On Monday, 29 November 2021 at 18:29:41 UTC Diego González wrote: > >> Hola Yoav, >> >> For non supported browsers there are 2 options: >> >> - env variables take the specified default value by developers (if >> devs enable WCO). >> >> So IIUC developers are supposed to use the env variables with reasonable fallback values for non-supporting browsers? Is that advice captured/documented somewhere? > >> - The web app will open as it would in the browser, with a titlebar >> if installed (if devs don't enable WCO). >> >> WCO is enabled by the end user. The user must enable the feature by >> toggling the chevron on the controls overlay. This is remembered on >> subsequent app launches. >> > OK, so lack of WCO support by the browser and lack of user opt-in would look the same from the developer's perspective? > >> --diego >> >> On Friday, 19 November 2021 at 06:05:44 UTC yoav...@chromium.org wrote: >> >>> This looks great! Thanks for following up on the spec work!! >>> >>> I had a couple more questions upthread: >>> >>> - What are developers expected to do in non-supporting browsers? >>> - Would the user need to opt-in to having web app control over their >>> title bar? >>> >>> >>> On Fri, Nov 19, 2021 at 1:25 AM Diego González <die...@gmail.com> wrote: >>> >>>> the the new *new* spec update >>>> https://wicg.github.io/window-controls-overlay/ >>>> >>>> On Wednesday, 17 November 2021 at 19:06:24 UTC Diego González wrote: >>>> >>>>> Hola, >>>>> >>>>> See the updated spec here: >>>>> https://wicg.github.io/window-controls-overlay. >>>>> >>>>> Thanks >>>>> >>>>> >>>>> On Monday, 15 November 2021 at 17:00:34 UTC Ajay Rahatekar wrote: >>>>> >>>>>> cc: ajayra...@google.com >>>>>> >>>>>> On Monday, November 15, 2021 at 8:53:37 AM UTC-8 Diego González wrote: >>>>>> >>>>>>> Hola Yoav, I am looking at making the amendments listed on the >>>>>>> github issues. I will update soon with the changes. Thanks >>>>>>> >>>>>>> On Monday, 15 November 2021 at 08:44:41 UTC yoav...@chromium.org >>>>>>> wrote: >>>>>>> >>>>>>>> Thanks Diego! The updates are a great improvement, but I suspect >>>>>>>> are not sufficient for an interoperable implementation. I left a >>>>>>>> couple of >>>>>>>> comments on the open issues. >>>>>>>> >>>>>>>> On Wed, Nov 10, 2021 at 5:11 PM Diego González <die...@gmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hola Yoav, >>>>>>>>> >>>>>>>>> We've gone through several iterations of the WCO spec reviewed by >>>>>>>>> Joshua Bell from Google, and while we are still making changes to it, >>>>>>>>> we >>>>>>>>> believe it is in a much better state and want to resubmit for >>>>>>>>> consideration >>>>>>>>> of the approvals needed for I2S. See the updated spec below: >>>>>>>>> https://wicg.github.io/window-controls-overlay/ >>>>>>>>> >>>>>>>>> --Diego >>>>>>>>> >>>>>>>>> On Thursday, 21 October 2021 at 21:05:09 UTC+1 >>>>>>>>> yoav...@chromium.org wrote: >>>>>>>>> >>>>>>>>>> On Thursday, October 21, 2021 at 9:31:23 AM UTC+2 Yoav Weiss >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> 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 < >>>>>>>>>>> blin...@chromium.org> wrote: >>>>>>>>>>> >>>>>>>>>>>> Contact emails >>>>>>>>>>>> >>>>>>>>>>>> amb...@microsoft.com, luig...@microsoft.com, >>>>>>>>>>>> hat...@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. >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Let me expand on that a bit. The spec introduces a new concept of >>>>>>>>>> a "window overlay" without really creating it as a concept. >>>>>>>>>> What I expect an interoperable spec to define the concept with as >>>>>>>>>> much detail as possible without getting OS- or >>>>>>>>>> implementation-specific. >>>>>>>>>> (Just to draw an example of what I have in mind, if I had to make >>>>>>>>>> something up, I'd go with something like: "<dfn>Window overlay</dfn> >>>>>>>>>> is an >>>>>>>>>> interface element that the operating system uses consistently across >>>>>>>>>> applications to enable the user to perform certain action to control >>>>>>>>>> the >>>>>>>>>> application such as closing it, expanding it to full screen, etc. >>>>>>>>>> This UI >>>>>>>>>> element takes fixed dimensions....") >>>>>>>>>> >>>>>>>>>> Then, once you have that concept defined, you can start building >>>>>>>>>> on it and define the processing of the different methods based on >>>>>>>>>> that. >>>>>>>>>> >>>>>>>>>> I'll open issues with other suggestions. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> 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+...@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/8bb6dba3-0b56-45e5-b895-60753f1e7bc2n%40chromium.org.