I think it makes perfect sense for a web-based OS to have a system back
button, given that the back button has historically been such a core part
of interacting with the web. I do think the back button should be disabled
or hidden when there is no session history for the current browsing context
like a browser would, rather than trying to guess which other window to go
"back" to like Android does.

What other parts of the chrome we display where and when is a bit more
complicated and we should think about if and how we want to represent the
four display modes <http://w3c.github.io/manifest/#display-modes> defined
by the W3C Web App Manifest spec in our UI. All of those display modes
(except the default, "browser") are optional and there are fallbacks for
each if not implemented.

Part of the vision of Pin the Web is to reduce the number of window modes
down to just two - unpinned and pinned - a lot like tabs and pinned tabs in
Firefox. Both have access to full browser chrome but when pinned the
browser chrome gets out of the way in a reduced "pinned" state until
manually expanded. (Fullscreen is a special case of both pinned and
unpinned). Like browser tabs a window is not confined to just one website
and can actually switch between being pinned and unpinned during its
lifetime as you navigate into and out of pinned sites. We're not quite
there yet, because we still have app windows and app windows with chrome
which behave in subtly different (and broken) ways.

A persistent system "back" button alongside the software home button would
complement this design well because it makes the very common "back" action
easier in the pinned state. A system "menu" button makes sense too, then
you'd only have to expand the pinned browser chrome to reload or access the
current URL. A system "windows"/"tabs" button like Android could be equally
useful but maybe the menu button makes more sense, like early Android
devices.

The current design concepts for Alopex have the system back and menu
buttons and also have a similar concept of two different types of window
(called tabs). One with chrome expanded by default, one with chrome
collapsed by default (plus fullscreen). I think these two modes make sense
for for when you're "just browsing" the open web and for something you
re-use often in an app-like manner.

I would be sad to see edge gestures go away as a method of switching
between windows because it's currently my favourite feature of Firefox OS,
but I understand that it makes for a simpler spatial model if edge gestures
go back/forward in session history instead.

Making built-in Gaia apps work more like the web with real URLs is super
important, for both navigation and deep-linking.

Ben

On 21 October 2015 at 13:30, Michael Henretty <[email protected]> wrote:

> Hi Gaia folk,
>
> In the early days of Firefox OS, we built all of Gaia as single-page apps.
> I wasn't around then but I imagine we did this for a number of reasons,
> with performance and responsiveness at the top of the list. As part of
> this, we encouraged app developers to implement navigation controls in
> their own apps and not rely on browser chrome functionality like "back" and
> "refresh". This totally made sense in the context of a single-page app,
> especially when you take into account that native apps on iOS and Android
> (albeit to a lesser extent) have to implement their own navigation as well.
>
> But with more recent technologies like Service Workers, better caching
> APIs, pre-rendering, etc. (basically all the stuff that NGA takes advantage
> of), I think the web is shifting away from single-page apps as a
> performance workaround. And let's not forget that single-page apps often
> negate one of the webs biggest strengths: deep linking.
>
> So I write this email today as sort of an opinion poll. Personally, I
> think it's time we bring back the browser chrome into Firefox OS apps. I
> think we should encourage developers to write URL-based apps, to not be
> afraid of browser chrome navigation, and therefore to build their Firefox
> OS app as a standard website + some experimental (or proprietary :/) APIs.
>
> There has been some discussion around this with the work we are doing on
> Pinning the Web and Alopex. But I want to hear from the greater FxOS
> community too, especially those with app development experience. What do
> you think, should we bring the "back" button back?
>
> -Michael
>
> _______________________________________________
> dev-fxos mailing list
> [email protected]
> https://lists.mozilla.org/listinfo/dev-fxos
>
>
_______________________________________________
dev-fxos mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-fxos

Reply via email to