Web application mode in GNOME 3.2

If you attended either of my talks at the Desktop Summit or COSCUP (or both! Although I think only the British Citizen Bastien Nocera might have done so, assuming he was sober enough to go to the former) you might remember my somewhat failed attempts at demoing the new web application mode in Epiphany. Although there are still some improvements to do I’ve landed the bulk of the code for the upcoming 3.1.90 release, so I figured it would be useful to give a brief overview of how this thing works for the global audience of the intertubes.

The main idea here, to give a bit of context, is that some of us use a certain number of web pages as if they were applications: we open them the minute we open the browser, keep them open all the time, check on them periodically, etc. Once you figure this out, the next logical step (sort of “independently discovered” by pretty much anyone doing browsers) is: well, if you use them as applications shouldn’t you try to make them a bit more like actual applications? Right. So let’s see how we have done this in GNOME.

Let’s say you are using a certain micro-blogging service with a blue logo and a tendency to break down from time to time. At some point you figure you use this thing so much that you might as well create an app for it. Press Ctrl-Shift-A, or access the File menu and select “Save as Web Application…”:

Save as Web Application ...

Now a small dialog pops up. It will present you the icon to be used for the new application and a tentative title, which you can edit. If the page is providing a specific high-resolution icon (usually meant for touch devices like the iPhone) we’ll use that, otherwise we fall back to a screenshot that will hopefully be recognizable enough. There’s lots of smalll improvements to do here, from overlaying the normal favicon on top of the screenshot to allowing the user to select the region to snapshot (or even scrapping the page trying to see if we can find the logo somewhere), but those can come later.

Create web application

We click “Create”, and the system informs us that the application is ready to be used.

Launch the web application

If you click “Launch”, or access the newly created application from the Shell, you’ll get a new browser instance in the so called “application mode”.

Very briefly:

  • There’s absolutely no UI chrome other than the title bar.
  • The application is sandboxed to a given domain. If you try to go somewhere else, say by clicking a link, the petition will be forwarded to a normal browser instance.
  • The existing cookies for the application domain are inherited from the main browser profile (so that you don’t have to login again), but other than that this is a completely fresh profile.
  • Finally, this is running in a different process. If you crash your main browser your Twitter app will still be there.

And that’s pretty much it! I have been using this intensively for a while now, and I must say it feels totally natural and, for me at least, it provides a much more convenient way of using the web applications that I’ve come to rely on. I’m eager to get feedback from the early adopters using 3.1.90, and with a bit of luck even patches fixing the low hanging fruit!

Until the next time, happy hacking!

Edit: a bunch of people are asking whether the apps show up in the overview, in the dash, whether they can be pinned, etc. The answer to all of that is: yes. The web apps created through Epiphany behave just like normal apps. You can launch them from the shell, they show up in the dash and you can pin them there as favorites if you want.

This entry was posted in Blogroll, General. Bookmark the permalink.

65 Responses to Web application mode in GNOME 3.2

  1. Kenny Strawn says:

    My point: Chrome 15 already has this functionality (and yes, it does open in standalone “application mode”-like windows)…

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  2. xan says:

    @Kenny: I don’t think I’ve said Epiphany was the only browser doing (something more or less similar to) this. In fact pretty much the opposite.

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  3. David Prieto says:

    Xan, I have two question about this:

    – Can web applications trigger desktop notifications?
    – Can web applications catch clicks? E.g. if I click a link to a sandboxed domain from Epiphany, will it open in Epiphany or in its own web-app window?

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  4. Pingback: GNOME 3.2 supporterà le applicazioni Web | TUXJournal.net

  5. bbking says:

    Great! It took you only 15 years after Windows 95 to implement this feature. It was called Active Desktop.

    Anyway, nice to see it.

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  6. xan says:

    @David:

    Notifications are being worked on. Not sure if it will make it for 3.2, but surely for 3.4.

    About the main instance detecting navigations to domains that have a web app, no, that does not happen. It wouldn’t be too difficult to do, but i’m not sure if it’s a good idea.

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  7. Frej Soya says:

    This is a really great feature. Tabs are just a poor way to manage your applications. The desktop should be able to handle it. The big problem is that web as a concept are quite abstract.

    Two comments.

    Short term:
    Isn’t ‘web apps’ just a better concept for bookmarks for some websites? You could make the feature more discoverable if the feature was integrated in bookmark dialog. In a users mind I think they are related abstractions.

    Long term:
    I know epiphany doesn’t have much clout with web developers, webkit does though ;). But what about a meta tag (or link if some description is needed, like an icon) similar to the link rss tag to make the feature auto detected by websites, and show whatever button a browser prefers.

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  8. Frej Soya says:

    Web _apps_ is abstract.. not just web 😉

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  9. Bill says:

    Yes, Chrome does this. Would like to see what can be done with integration into the desktop, like using webmail as primary email client, perhaps even self-hosted web apps

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  10. red says:

    how to delete that from the applications and my computer?

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  11. Pingback: Announcing the WebKitGTK+ hackfest 2011 « Here we are

  12. Mr.Spacklecrisp says:

    If gnome3 didn’t have such a clunky, awkward interface I would totally install it to use this webapp feature.

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

  13. Pingback: Iocane powder » Blog Archive » A new design for Epiphany: Web

Leave a Reply

Your email address will not be published. Required fields are marked *