GNOME Bugzilla – Bug 644002
Support adding websites as applications
Last modified: 2011-09-03 21:25:55 UTC
Chrome and Chromium allow that, but with a number of problems. - epiphany should use the higher resolution icons when available (such as the ones used for iOS devices, clipping/modifying them appropriately) - such launched applications should show up separately in GNOME Shell (different WM class, etc.) - I do not think there is a need to segregate cookies and other settings from the main application, but menus and other such distractions should probably be kept to a minimum
Note that there should also be a way to manage and edit those "applications" from within ephy, as there are no easy ways to remove apps from the shell.
Here is how I'd do it, any advice appreciated - have a simple launcher (basically a WebView or a an Embed) - create a .desktop file for each application, starting the launcher with the right URL - make a small web app editor outside of ephy, creating/modifying the .desktop and prefetching the icon - have an ephy extension starting the editor with the current page url. I will work on that post-3.0.
Regarding instal/deletion, i would be nice to generate a rpm/deb for the web app. But I am not sure we can depend on rpm-packager or whatever-debian-uses
(In reply to comment #2) > Here is how I'd do it, any advice appreciated > > - have a simple launcher (basically a WebView or a an Embed) Nope, it should be Epiphany itself. > - create a .desktop file for each application, starting the launcher with the > right URL Right, it would also need to use a different wmclass (thus application name), so it can appear as a separate application to GNOME Shell. > - make a small web app editor outside of ephy, creating/modifying the .desktop > and prefetching the icon Again, it should be in epiphany, probably in core, or at least an extension shipped with the core. > - have an ephy extension starting the editor with the current page url. Don't think it's necessary. In "stand-alone" epiphany, you could have Edit -> Web applications (if any were actually created), and you could remove the .desktop file and the cached icon there. > I will work on that post-3.0. It's also listed as a Summer Of Code idea, though I'm not sure it would take a whole summer, probably worth merging with something else. http://live.gnome.org/action/edit/SummerOfCode2011/Ideas
(In reply to comment #3) > Regarding instal/deletion, i would be nice to generate a rpm/deb for the web > app. > > But I am not sure we can depend on rpm-packager or whatever-debian-uses Given how it would be integrated, it would be easy enough to write a small script to do that after the fact, but it shouldn't be one of the requirements (eg. the point isn't to create apps for installation system-wide).
(In reply to comment #4) > (In reply to comment #2) > > Here is how I'd do it, any advice appreciated > > > > - have a simple launcher (basically a WebView or a an Embed) > > Nope, it should be Epiphany itself. Why ? I really think webapps should run in there own silo, without ephy ui, bookmark support and with their own private cache/cookie storage. Also that would make possible stuff we'd prefer to avoid in ephy for security reasons: system integration with (future) g-s jump lists, notifications, dash icons badges etc I actually like the Fluid.app approach on osx (http://fluidapp.com/) > > > - create a .desktop file for each application, starting the launcher with the > > right URL > > Right, it would also need to use a different wmclass (thus application name), so > it can appear as a separate application to GNOME Shell. So lets make them actual separate applications :) > > > - make a small web app editor outside of ephy, creating/modifying the .desktop > > and prefetching the icon > > Again, it should be in epiphany, probably in core, or at least an extension > shipped with the core. Why ? > > > - have an ephy extension starting the editor with the current page url. > > Don't think it's necessary. In "stand-alone" epiphany, you could have Edit -> > Web applications (if any were actually created), and you could remove the > .desktop file and the cached icon there. > > > I will work on that post-3.0. > > It's also listed as a Summer Of Code idea, though I'm not sure it would take a > whole summer, probably worth merging with something else. > http://live.gnome.org/action/edit/SummerOfCode2011/Ideas Thanks for the hint.
> Don't think it's necessary. In "stand-alone" epiphany, you could have Edit -> > Web applications (if any were actually created), and you could remove the > .desktop file and the cached icon there. > Given how it would be integrated, it would be easy enough to write a small > script to do that after the fact, but it shouldn't be one of the requirements > (eg. the point isn't to create apps for installation system-wide). Not sure we want to create yet another paralel applications installation system. We could create user-local rpm db as found in http://www.nordugrid.org/documents/rpm_for_everybody.html#4 Opinion ?
There's a ton of code we have in Ephy (and that we want in a web app "visor") that we don't want to neither fork nor reimplement, so I agree with Bastien that a "Web app mode" is clearly the way to go. It can hide all the unneeded chrome and use a per-app profile for increased security.
(In reply to comment #8) > There's a ton of code we have in Ephy (and that we want in a web app "visor") > that we don't want to neither fork nor reimplement, so I agree with Bastien that > a "Web app mode" is clearly the way to go. It can hide all the unneeded chrome > and use a per-app profile for increased security. Wouldn't an EphyEmbed be sufficient ? That'd allow not to have to patch ephy everywhere for such a visor mode, adding codepathes to disabled several behaviour. Chrome seems to do just that, if you look closely, an "app" window it doesn't uses chrome's decorations but mutter's. That might indicate they have a specific window type for that purpose.
Created attachment 183153 [details] For reference a desktop file generated by chrome
(In reply to comment #7) > Not sure we want to create yet another paralel applications installation > system. > > We could create user-local rpm db as found in > http://www.nordugrid.org/documents/rpm_for_everybody.html#4 > > Opinion ? No, no, no, no, please =) this is not an application instalation system, it's just a way to conveniently integrate web sites that are more like applications with the desktop environment; there's no good reason for this to be system-wide, and there's no reason why epiphany itself can't manage the desktop files and icons for web apps. No point in complicating the design and making it not work for non-rpm adopters.
Hi Kov, Thanks for your comment > No, no, no, no, please =) this is not an application instalation system, it's > just a way to conveniently integrate web sites that are more like applications > with the desktop environment; Well, it is actually a kind of application installation system. We want user to be able to install/remove web applications. Making them 1st class citizen in the desktop and blending the difference they have with "native" applications. Managing them using the standard tools provided by their distro seems a step in that direction IMHO. The input from the design/interaction team might be interestiing. Handling them in ephy would indeed create a parallel installation system. But that might not be a day 1 priority, we can do the imple way firt then argue later about that :) > there's no good reason for this to be system-wide, > and there's no reason why epiphany itself can't manage the desktop files and > icons for web apps. Indeed we don't want the user to install the web apps system-wide, avoiding the need to sudo/ConsoleKit and poluting the rpm/deb database with stuff like fb, gmail, twitter... Thus the proposition of a local db, which seems possible for both rpm and deb based systems. > No point in complicating the design and making it not work > for non-rpm adopters. I took rpm as a reference because that is what I know best, but clearly we need to do the same for deb distributions if we I succeed convincing you it is worth :)
So, yeah, we do this now. Since 3.1.90.