--app option to run web applications in "app mode" Feature Request

NEW
Unassigned

Status

()

--
enhancement
2 years ago
4 hours ago

People

(Reporter: nathan, Unassigned)

Tracking

(Blocks: 2 bugs, {feature})

Trunk
feature
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox57 wontfix)

Details

(Reporter)

Description

2 years ago
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36

Steps to reproduce:

I want to use Firefox to run desktop web apps similar to Google's Chrome --app functionality. When running firefox --app='myurl.tld' the browser should open to a specified url without toolbars.


Actual results:

Feature Request


Expected results:

Feature Request

Updated

2 years ago
Severity: normal → enhancement
Component: Untriaged → Startup and Profile System
Product: Firefox → Toolkit

Updated

2 years ago
Component: Startup and Profile System → DOM: Apps
Product: Toolkit → Core
I'm not so sure this is a "Core" request.  After all, Firefox command-line flags are features of Firefox (even if some of them are provided by Gecko code).  And presumably a feature like this would require Firefox's cooperation.  It wouldn't be possibly to simply add it to Gecko and advertise it as a platform feature that happens to be accessible via Firefox.

Regardless, I'm interested in understanding the use case better.

Nathan: are you interested in using a feature like this to create a site-specific browser <https://en.wikipedia.org/wiki/Site-specific_browser>?  And would it be for your own personal use, or do you want to distribute an application that starts Firefox in this mode to other users (f.e. so they can use your website via a site-specific browser)?  Lastly, how would you expect to start Firefox in this mode (via a Windows shortcut, by starting another application that starts Firefox, by manually entering its path on a command line, etc.)?
(Reporter)

Comment 2

2 years ago
I have a computer at home that my kids use for some school and entertainment. I found Chrome's --app feature useful because I created specific icons for my younger kids to click on which take them directly to Netflix or Wikipedia or several other sites and the benefit is they do not have bookmarks shown or the address bar. Rather than a web browser it makes it more like an interface and simplifies it for my young kids. (this is all in Fedora KDE). 

I also do this with my own desktop as I use Roundcube for email and I created a chrome --app to access it, along with several other sites, which focuses the use to that specific site.

Along the same lines, at work I realized I could create an icon and share it around the office for users to access some internally developed web applications. In this respect it is really just a neato factor, though it does psychologically affect some people because they no longer look at the web app as a web app but as a real application worthy of consideration.

I appreciate your interest in my use cases, thank you!

Comment 3

2 years ago
After the latest upgrade of Firefox from 47 to 48 some keyboard shortcuts in our web-based erp-application doesn't work any longer. These are essentiell to our customers. For example our users can press CTRL-N to create a new object in the application. Other webapplications are also suffering from this problem.

The same problem exists in newer versions of Chrome but Google provides the application mode (starting chrome.exe with --app) and all our keyboard shortcuts works there. In addition there is a really great interface and a application based icon in the task-bar (based on the favicon of the server).

We welcome the idea of having an app mode in firefox because it will solve our problem.
(In reply to Jan Fader from comment #3)
> After the latest upgrade of Firefox from 47 to 48 some keyboard shortcuts in
> our web-based erp-application doesn't work any longer. These are essentiell
> to our customers. For example our users can press CTRL-N to create a new
> object in the application. Other webapplications are also suffering from
> this problem.

Hmm, I reviewed the Firefox 48 release notes <https://www.mozilla.org/en-US/firefox/48.0/releasenotes/< and I don't see a reference to a change that broke keyboard shortcuts in web applications. (I would have expected to see something related to key events, or possibly something about the behavior of Event.preventDefault/stopPropagation.)

Also, bug 380637 suggests that apps can still override browser shortcuts, although the bug is ambiguous, so it isn't clear whether it refers to keyboard shortcuts generally or Ctrl+S specifically.  Hearing that other apps are experiencing the same problem suggests that it isn't a bug in the apps themselves (unless they share a dependency that does event handling).

Have you tried filing a bug report on the problem?  If you file one with a reduced test case (i.e. the simplest possible web page that registers an event handler for the key event in question and demonstrates the difference in behavior between versions of Firefox), it'd be possible to determine whether or not the change is a regression or an intentional change.


> The same problem exists in newer versions of Chrome but Google provides the
> application mode (starting chrome.exe with --app) and all our keyboard
> shortcuts works there. In addition there is a really great interface and a
> application based icon in the task-bar (based on the favicon of the server).
> 
> We welcome the idea of having an app mode in firefox because it will solve
> our problem.

That's useful information, and it might be the case that an app mode is the only/best way to ensure reliable support for arbitrary keyboard shortcuts.  But I'd still confirm that the change in Firefox 48 is actually intentional, as it might be a regression.

Comment 5

2 years ago
Based on the feedback in the new bug (based on a reduced test case on jsfiddle) https://bugzilla.mozilla.org/show_bug.cgi?id=1301476 the change is intended behavior.

Comment 6

2 years ago
(In reply to Myk Melez [:myk] [@mykmelez] from comment #4)
> That's useful information, and it might be the case that an app mode is the
> only/best way to ensure reliable support for arbitrary keyboard shortcuts.

Our development team can confirm that an app mode works great for them (tested with Chrome) and all keyboard shortcuts (including CTRL-N) works as expected.
 
> But I'd still confirm that the change in Firefox 48 is actually intentional,
> as it might be a regression.

The new bug report with a minimal example (https://bugzilla.mozilla.org/show_bug.cgi?id=1301476) states that this change in the behavior is intentional.

Do Mozilla already have any further plans about the implementation of an app mode? We need a forecast for our customers and their users.

We don't want to change our recommended browser to Chrome but based on the feedback of Mozilla we will discuss this step internally.
(In reply to Jan Fader from comment #6)
> Do Mozilla already have any further plans about the implementation of an app
> mode? We need a forecast for our customers and their users.

I'm not aware of such a plan, but I've set the "productwanted" keyword and am requesting needinfo from a Firefox product manager who should be able to answer that question authoritatively (or redirect the request to another product manager who can do so).
Status: UNCONFIRMED → NEW
Component: DOM: Apps → General
Ever confirmed: true
Flags: needinfo?(jgriffiths)
Keywords: productwanted
Product: Core → Firefox
(In reply to Myk Melez [:myk] [@mykmelez] from comment #7)
> (In reply to Jan Fader from comment #6)
> > Do Mozilla already have any further plans about the implementation of an app
> > mode? We need a forecast for our customers and their users.
> 
> I'm not aware of such a plan, but I've set the "productwanted" keyword and
> am requesting needinfo from a Firefox product manager who should be able to
> answer that question authoritatively (or redirect the request to another
> product manager who can do so).

We currently have no plan to implement Chrome's app mode. Firefox as-is does prevent some keybindings including Cltr+N, on par with other browsers ( including chrome when not in app mode ).

See also bug 1164954
Flags: needinfo?(jgriffiths)
See Also: → bug 1164954
Keywords: productwanted

Comment 10

2 years ago
> We currently have no plan to implement Chrome's app mode. Firefox as-is does
> prevent some keybindings including Cltr+N, on par with other browsers (
> including chrome when not in app mode ).
> 
> See also bug 1164954

Wait, this only addresses keybindings use-case but not main use-case, in Comment #2, which I also have. There was this Standalone add-on ( https://addons.mozilla.org/pt-br/firefox/addon/standalone/ ) that used to do part of that (it missed some functionality but at least did the basic) but it no longer works because something it relied on was taken away, so apparently not even an add-on is an option anymore.

Comment 11

a year ago
The app mode feature really needs to be added to Firefox. Badly. Just google it and see how many people are requesting it. It is the number one reason our entire organization is not switching from Chrome to Firefox. This feature is becoming standard protocol for companies that have web apps. It's important to simply have an icon on your desktop or task bar that you can click and use a web app just like any other first class desktop app.
(Reporter)

Comment 12

a year ago
I originally wanted this for personal use at home with my kids... Now it is becoming exceedingly important at work. I have developed numerous web applications that we use Chrome with, simply because the higher-ups want a slick icon on the desktop to launch the program.
(In reply to freeman from comment #11)
> Just google it and see how many people are requesting it.

I googled for "firefox app mode" and saw these three people asking about it in the first ten search results:

https://superuser.com/questions/468580/create-application-shortcut-chromes-feature-in-firefox
https://askubuntu.com/questions/487936/how-do-i-open-fixed-window-in-firefox-like-chrome-app-mode
https://www.reddit.com/r/firefox/comments/5wrnsj/is_there_a_app_mode_in_firefox/

I'm unsure how to extrapolate from those numbers to the broader community of potential Firefox users, however.


> It is the number one reason our entire organization is not switching from Chrome to Firefox.

What are the other reasons, and how significant are they relative to this one?


> It's important to simply have an icon on your desktop or task bar that you can
> click and use a web app just like any other first class desktop app.

Is it important for this feature to be built into Firefox, or would it be sufficient for it to be provided by a separate product?

If there was a product that enabled your organization to create distributable desktop/task bar icons that launched a web app in a separate Firefox window, would that product satisfy your organization's needs?  Or is it important for users to be able to create their own icons for any given web app?

Comment 14

a year ago
(In reply to Myk Melez [:myk] [@mykmelez] from comment #13)
> (In reply to freeman from comment #11)
> > Just google it and see how many people are requesting it.
> 
> I googled for "firefox app mode" and saw these three people asking about it
> in the first ten search results:
> 
> https://superuser.com/questions/468580/create-application-shortcut-chromes-
> feature-in-firefox
> https://askubuntu.com/questions/487936/how-do-i-open-fixed-window-in-firefox-
> like-chrome-app-mode
> https://www.reddit.com/r/firefox/comments/5wrnsj/
> is_there_a_app_mode_in_firefox/
> 
> I'm unsure how to extrapolate from those numbers to the broader community of
> potential Firefox users, however.
> 
> 
> > It is the number one reason our entire organization is not switching from Chrome to Firefox.
> 
> What are the other reasons, and how significant are they relative to this
> one?
> 
The previous most significant issue was not having the security.enterprise_roots.enabled option.
> 
> > It's important to simply have an icon on your desktop or task bar that you can
> > click and use a web app just like any other first class desktop app.
> 
> Is it important for this feature to be built into Firefox, or would it be
> sufficient for it to be provided by a separate product?
> 
> If there was a product that enabled your organization to create
> distributable desktop/task bar icons that launched a web app in a separate
> Firefox window, would that product satisfy your organization's needs?  Or is
> it important for users to be able to create their own icons for any given
> web app?

In a separate window without any other toolbars/extensions etc. Just like Chrome's app mode. That might work...I have been completely unable to find any such app though.
status-firefox57: --- → wontfix
Keywords: feature

Comment 15

a year ago
Well I guess that means Chrome remains our company's browser.

Comment 16

a year ago
Missing of this feature makes me use Chrome. I really want to use Firefox.
It's just opening page without menus, address bar, in new window from console.

Comment 17

8 months ago
I have found a workaround. I make a separate profile directory for the instance like this:
  PROFILENAME="netflix"
  PROFILEPATH="$HOME/.firefox-profiles/$PROFILENAME"
  mkdir -p "$PROFILEPATH/chrome"
  chmod og-rwx -R "$PROFILEPATH"
  echo '#TabsToolbar,#nav-bar { visibility: collapse !important; }'>"${PROFILEPATH}/chrome/userChrome.css"

That last "echo" line adds a chrome/userChrome.css file that hides the toolbar and nav-bar. To start it i use a shell script like this:
  #! /bin/sh
  exec firefox -profile "$HOME/.firefox-profiles/netflix" -no-remote 'https://www.netflix.com/'

It's not perfect though, as I can still create tabs and such via shortcuts (e.g. Ctrl-t) and changing between them with Ctrl-Tab. Hitting the Alt button once also makes the menu bar appear, giving access to a lot of functions like preferences, addons etc, so this isn't perfect as a kiosk mode, but it solves my usecase which was Netflix without all the clutter, since that has all the navigation needed built in to the user interface. I also use it for slack, google calendar, google mail, and internal server monitoring tools. As an added benefit, every profile only needs to be logged in to one website/webapp. The only annoying thing is that I have to copy&paste all the URLs i receive on slack over to my "real" firefox browser, because clicking them would open them as a new tab in my slack profile, and I have hidden all the navigation&tabs.
Comment hidden (advocacy)

Comment 19

8 months ago
Hi, 

There is a workaround that allow to make own browser/app using Firefox:
https://github.com/precz/wpaana

Best,
Paweł.

Comment 20

6 months ago
(In reply to pawel.preczynski from comment #19)
> There is a workaround that allow to make own browser/app using Firefox:
> https://github.com/precz/wpaana

On Windows I use a similar system, manually creating separate `application.ini` and Firefox shortcuts to load them. I use these to open separate application-like websites: To-do, Slack, Google Calendar, Trello, Box, IcoMoon, etc.  The only issue with the method, beyond the manual set-up for each shortcut, is that the window takes the default firefox icon (although the taskbar icon uses the shortcut icon correctly.

I see two use cases: fast in-out tools which I open, use, close (To-do, Calendar, Box) and long running application (Trello, Slack) which stay open for longer but are easier to switch to when they live in a separate windows, with a separate taskbar entry.

The closest alternative is the "pinned website" in IE11, which however share cookies and other data with the main IE profile. And being IE, it probably does not have a future.

A `--app` option which open a chromeless window would be a great addition to Firefox. Additional requirements could be:

- open the website in its own context
- open all off-domain links in the default browser
- use the website favicon/manifest icon as application icon
- show a separate taskbar entry

Updated

6 months ago
Duplicate of this bug: 1459663

Comment 22

6 months ago
I would like to manifest that this is an important feature for the company i work to as well!!!

Like i mentioned on bug 1459663: We do not want any kiosk-like limitations. 
We just want a way so we can maximize the usable space for the software we're using (think, for example, OpenERP or solutions that, like that one, are web based). In other words we do want (and need)  page titles and window controls, but we do not need any of the browser specific UI/toolbars and we do not want the browser to start in complete full-screen.

This being able to be applied just to certain shortcuts is also needed because we do need a regular browser to browse the web. So, please, bring back that --app option again!!!

Comment 23

6 months ago
An -app option would be an alternative to some Electron-style applications.

Specifically, the DomTerm terminal emulator (https://domterm.org/) has a server backend written C and a UI front-end written in JavaScript that can run in any "modern" browser.  The current preferred "browsers" re either a small Electron wrapper or a Qt wrapper, because they replace the menubar and other chrome clutter with ones more appropriate to a terminal emulator.  However, using google-chrome -app is *almost* as good as Electron: It removes the chrome clutter and default key-bindings.  (A DomTerm-specific menubar and context menu could be added with JavaScript. (There is also a chrome --app bug in that --window-size is not handled properly.)

In other words: if Firefox could have a working --app (along with --window-size or --geometry) options, it would enable a good UI for some applications (including DomTerm) with less overhead than Electron.

Updated

5 months ago
Duplicate of this bug: 1467343
An -app option would be great for Intranet applications at work. We have several web apps that work well in the Chrome "Create shortcut, open as window" environment. Having no URL bar and remembering size and position of the window would be ace. In addition  to remembering size and position being able to set size and position via --geometry would also be ace.
Comment hidden (me-too)

Comment 27

2 months ago
I have several web applications that I want to start at boot, in dedicated windows, with maximum screen real estate. Without this feature I'm forced to use Chrome for this, losing Firefox's privacy protections and requiring manual copy/pasting of URL's from Chrome into Firefox.

I'd be fine with a secondary binary that, when invoked with a URL, resulted in a Firefox window of that URL with no menu or top bars.

I wouldn't object to keeping the bottom statusbar on link mouseover as it does not decrease screen real estate.

IMO clicking a link in this hypothetical app window should respect my OS's configured MIME types if any, opening in another window and potentially a different browser entirely.

Comment 28

29 days ago
Please add this feature.  I want to watch <insert name of video streaming service> on my laptop while I'm working, in a small window in the corner of my screen.  Browser tabs and the address bar take up too much space in a small browser window on a small screen.  Google-chrome's `--app` flag is the perfect solutions, except...I want to use Firefox!
Blocks: 1407202
No longer blocks: 1459977

Comment 29

a day ago
I think this is a perfect fit for https://bugzilla.mozilla.org/show_bug.cgi?id=720362

Comment 30

a day ago
(In reply to Maverick from comment #29)
> I think this is a perfect fit for
> https://bugzilla.mozilla.org/show_bug.cgi?id=720362

definitely!

Comment 31

a day ago
(In reply to pawel.preczynski from comment #30)
> (In reply to Maverick from comment #29)
> > I think this is a perfect fit for
> > https://bugzilla.mozilla.org/show_bug.cgi?id=720362
> 
> definitely!

(i don't have a clue on how to set the "depend on" tag, however ;)
I suspect mkaply is managing that dependency tree, giving him in a needinfo to see if he thinks it fits there.
Flags: needinfo?(mozilla)

Comment 33

20 hours ago
Yeah, it probably does. It has come up before.

Chrome's "app" mode is actually pretty straightforward. It only removes the chrome around the browser. Everything else still works (keyboard shortcuts for instance).

So it could just be a matter of creating a slimmed down browser.xul that we load in some cases and figuring out profiles.
Depends on: 720362
Flags: needinfo?(mozilla)

Comment 34

20 hours ago
(In reply to Mike Kaply [:mkaply] from comment #33)
> Yeah, it probably does. It has come up before.
> 
> Chrome's "app" mode is actually pretty straightforward. It only removes the
> chrome around the browser. Everything else still works (keyboard shortcuts
> for instance).
> 
> So it could just be a matter of creating a slimmed down browser.xul that we
> load in some cases and figuring out profiles.

Shouldn't this be the other way around? 
I mean, this bug blocks bug 720362, right?
Flags: needinfo?(mozilla)

Updated

20 hours ago
Blocks: 720362
No longer depends on: 720362
Flags: needinfo?(mozilla)

Comment 35

19 hours ago
For our use the default profile would be just fine (but then again, any profile would be ok, even a private one).

I suppose this would not require much work - removing all the browser's chrome and opening the url in the default profile
(dealing with more specific cases later, in case any comes up)

This would help a lot around here and for sure enable migrations from Chrome in many cases.

Comment 36

19 hours ago
It would also be helpful to have a simple way to give the "app" some extra permissions without requiring an explicit installation by user.  While one can implement menus with JavaScript, they aren't quite as nice as the browser menus - for one the latter can extend outside the browser window.  Clipboard access would be nice.  Etc.

Comment 37

19 hours ago
(In reply to per from comment #36)
> It would also be helpful to have a simple way to give the "app" some extra
> permissions without requiring an explicit installation by user.  While one
> can implement menus with JavaScript, they aren't quite as nice as the
> browser menus - for one the latter can extend outside the browser window. 
> Clipboard access would be nice.  Etc.

Agree, but i think that could be left for a second stage of implementation.

A first stage, imho, would basically be just a regular Firefox window without any chrome. Everything just like you would have if you open a normal firefox instance, but with no chrome.

This would bring the vast majority of features needed. Then, in subsequent stages, more specific (and also important) cases like that one mentioned could be studied.
You need to log in before you can comment on or make changes to this bug.