Hi Yoav,

The API was specifically designed to allow developers to customize the
fallback, so the short answer is "whatever fallback they want".

Since the "display" Manifest member only allows for a single string, adding
a new value there would break backwards compatibility for any site that
used the new value. That is why we do not allow "tabbed" and other new
display modes in that member; they can only be used in the new
"display_override" member which is a list of display modes representing a
developer-supplied fallback chain, with the final fallback being the value
of the old "display" member.

So developers can generally choose between two configurations:

   1. "display_override": ["tabbed"], "display": "standalone"
   2. "display_override": ["tabbed"], "display": "browser"

If they choose #1, non-supported platforms will fall back to a standalone
non-tabbed window (feeling like an app but not having a tabbed experience).
If they choose #2, non-supported platforms will fall back to not having a
separate window and just opening the content in the browser (giving the
user a tabbed experience but not feeling like an app).

We would recommend that developers fall back to whatever they are already
using. That way, tabbed mode is an additive experience (currently only on
ChromeOS but automatically upgrading to that experience on any platform
that supports it in the future), with a graceful degradation to the status
quo.

Therefore, we don't think cross platform support for this feature is
necessary, though of course it has been designed for this as a future
possibility. Also there is nothing ChromeOS-specific about this design, as
Marijn pointed out, it just hasn't been prioritized by the engineering team
outside of ChromeOS.

Regards

Matt

On Tue, 7 May 2024 at 19:24, Yoav Weiss (@Shopify) <yoavwe...@chromium.org>
wrote:

> Can you elaborate on the cross-platform story here? What kind of fallback
> do we expect developers to use in non-supporting platforms?
>
> On Tue, May 7, 2024 at 12:34 AM Marijn Kruisselbrink <m...@chromium.org>
> wrote:
>
>> I don't think there are major technical reasons, no. With some rough
>> edges the flagged implementation should more or less work on other
>> desktop platforms as well. My understanding is that this is largely a
>> product choice and a choice not to prioritize the remaining engineering
>> needed to clean up the rough edges on other desktop platforms.
>>
>> On Mon, May 6, 2024 at 3:29 PM Daniel Herr <danielherrsoftw...@gmail.com>
>> wrote:
>>
>>> May I ask why? I've tried out the flagged implementation on Chrome OS,
>>> and I think it is a pretty nice UI paradigm. I don't see any technical
>>> reason it shouldn't be available on other platforms.
>>>
>>> On Monday, May 6, 2024 at 10:30:58 AM UTC-4 Brett Wilson wrote:
>>>
>>>> On Mon, May 6, 2024 at 3:02 AM Yoav Weiss (@Shopify) <
>>>> yoav...@chromium.org> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Fri, May 3, 2024 at 7:28 PM Brett Wilson <bre...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>> Contact emailsbre...@chromium.org, alanc...@chromium.org,
>>>>>> mgi...@chromium.org, loub...@google.com
>>>>>>
>>>>>> Explainer
>>>>>> https://github.com/WICG/manifest-incubations/blob/gh-pages/tabbed-mode-explainer.md
>>>>>>
>>>>>> Specificationhttps://wicg.github.io/manifest-incubations/#dfn-tabbed
>>>>>>
>>>>>> Summary
>>>>>>
>>>>>> Allow web app windows to have a tab strip. This adds a new display
>>>>>> mode "tabbed" and a new manifest field to allow customizations to the tab
>>>>>> strip.
>>>>>>
>>>>>>
>>>>>> Blink componentBlink>AppManifest
>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EAppManifest>
>>>>>>
>>>>>> TAG reviewhttps://github.com/w3ctag/design-reviews/issues/841
>>>>>>
>>>>>> TAG review statusIssues addressed
>>>>>>
>>>>>> Chromium Trial NameWebAppTabStrip
>>>>>>
>>>>>> Link to origin trial feedback summary
>>>>>> https://github.com/WICG/manifest-incubations/issues
>>>>>>
>>>>>> Origin Trial documentation link
>>>>>> https://github.com/WICG/manifest-incubations/blob/gh-pages/tabbed-mode-explainer.md
>>>>>>
>>>>>> Risks
>>>>>>
>>>>>>
>>>>>> Interoperability and Compatibility
>>>>>>
>>>>>>
>>>>>>
>>>>>> *Gecko*: Defer (
>>>>>> https://github.com/mozilla/standards-positions/issues/811)
>>>>>>
>>>>>> *WebKit*: No signal (
>>>>>> https://github.com/WebKit/standards-positions/issues/195)
>>>>>>
>>>>>> *Web developers*: Positive (
>>>>>> https://github.com/w3c/manifest/issues/737)
>>>>>>
>>>>>> *Other signals*:
>>>>>>
>>>>>> 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
>>>>>>
>>>>>> chrome://web-app-internals can be used for debugging, and the new
>>>>>> manifest field could also be added to the DevTools Application pane.
>>>>>>
>>>>>>
>>>>>> Will this feature be supported on all six Blink platforms (Windows,
>>>>>> Mac, Linux, ChromeOS, Android, and Android WebView)?No
>>>>>>
>>>>>> The origin trial is available on ChromeOS only. Support for other
>>>>>> desktop platforms is planned.
>>>>>>
>>>>>>
>>>>>> Is this feature fully tested by web-platform-tests
>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>> ?Yes
>>>>>>
>>>>>>
>>>>>> https://github.com/web-platform-tests/wpt/tree/master/appmanifest/display-override-member
>>>>>>
>>>>>>
>>>>>> Flag name on chrome://flags
>>>>>> chrome://flags/#enable-desktop-pwas-tab-strip
>>>>>>
>>>>>> Finch feature nameDesktopPWAsTabStrip
>>>>>>
>>>>>> Requires code in //chrome?True
>>>>>>
>>>>>> Tracking bughttps://issuetracker.google.com/issues/40598974
>>>>>>
>>>>>> Launch bughttps://launch.corp.google.com/launch/4253814
>>>>>>
>>>>>> MeasurementLaunch.WebAppDisplayMode: Tabbed
>>>>>>
>>>>>> Availability expectationFeature is available only on
>>>>>> Chrome-on-ChromeOS for the foreseeable future.
>>>>>>
>>>>>
>>>>> This seems a bit contradictory with "Support for other desktop
>>>>> platforms is planned" above. Are there plans for support beyond CrOS?
>>>>>
>>>>>>
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABiGVV9MstA8bLmUTLkkfTjeYK8bb7fkhyKL_OMt_d7UzavRTA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>
>>>>>
>>>> Sorry, the first part was a mistake. Chrome team has requested this not
>>>> be on other platforms now.
>>>>
>>>> Brett
>>>>
>>> --
>>> 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/670da4b2-f0f9-4774-96a9-5cd5f96d168cn%40chromium.org
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/670da4b2-f0f9-4774-96a9-5cd5f96d168cn%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 blink-dev+unsubscr...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJ%2BqhpnANLEHdz4auCwS4Mu6P--%2B5p6A0pmHe2k2Ep5PA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJ%2BqhpnANLEHdz4auCwS4Mu6P--%2B5p6A0pmHe2k2Ep5PA%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 blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAHqYdcbh%2BkNhR225FvzVYEBziQYQiSVthjB-KMdWWpwcj7L6Fg%40mail.gmail.com.

Reply via email to