desktop-webapp-browser-extension

A few months ago I started work on a Google Chrome/ium extension for integrating Chrome apps into GNOME Shell. The idea is that, whenever you install a Chrome app, a .desktop file is created in ~/.local/share/applications, for them to show up as normal applications.

Also, for desktop shortcuts for “normal” web pages, since Chrome/ium uses the favicon from the pages, the icons look really ugly on GNOME Shell’s overview. So, this extension also tries to retrieve a higher resolution icon and uses it if found, and if not, retrieves a snapshot from the page and uses that as the icon, making it look much nicer in the overview.

So, nothing really magic, but discussing it with some team mates, I thought it could be helpful for other people, so hence this public announcement :-)

The code can be found here.

Next step, when I have time and find out how, is to submit this to the Google Chrome store, but for now, you can just build it and install the .crx file into your Chrome/ium.

Tags: , ,

6 Responses to “desktop-webapp-browser-extension”

  1. Mattias Bengtsson says:

    I use this for Google Keep and the Spotify web app and it’s really nice, however the most annoying thing for me is that the shell still thinks that Keep and Spotify are chrome-windows and not separate apps, this makes alt-tab behaviour strange. Is this solved in your extension?

    Regards,
    Mattias

  2. rodrigo says:

    No, my extension doesn’t solve that, AFAIR

  3. Leif says:

    This sounds awesome. Look forward to seeing it in the Chrome store.

  4. Mattias Bengtsson says:

    rodrigo: ah, well you can’t get everything. Please blog when the extension is uploaded to the Chrome Store, I would love to test it!

  5. Mark says:

    I do this manually by creating .local/share/applications/*.desktop files with content like:

    #!/usr/bin/env xdg-open
    [Desktop Entry]
    Name=Gmail
    Type=Application
    Exec=chromium-browser –user-data-dir=”/home/mark/.config/gmail-chromium” –app=”https://mail.google.com” –class=Gmail
    Icon=/home/mark/icons/gmail.png
    StartupWMClass=Gmail

    This creates a separate chrome profile with its own config/cache directories and most importantly its own StartupWMClass so it appears as a distinct application with its own icon in the shell as opposed to clubbed together with all the rest of the Chromium group.

  6. rodrigo says:

    Right, was thinking about doing what Mark says. We can probably just generate a different StartupWMClass from the app name.