Posted on October 27th, 2009 No comments
One of the features in the Prism Webapp Bundle for Google Wave is a toaster pop-up notification of unread waves using the window.platform.showNotification() method. The third parameter is named aImageURI, and is described by the nsIPlatformGlue IDL as, “The URI of an image to use in alert. Can be null for no image.”
Which is great, except … what URI scheme and path does one use? Every example I could find always passed null for the image, so after giving up on the web I joined the Prism mailing list and posted a question. The first response was to use the inline data scheme, with a base64-encoded image. It was ugly, but it worked.
A later response, however, yielded the proper way:
Posted on October 26th, 2009 1 comment
Though Prism and Google Wave go great together simply creating a web app from the Prism Firefox add-on, Prism supports some script extensions that allow for more desktop-like integration of apps running inside it. For example, you can call the window.platform.showNotification() method to cause a little toaster pop-up with the number of unread Waves.
I’ve created a webapp bundle that does just that. Unfortunately, such bundles at present only work with the stand-alone version of Prism. The Firefox add-on is really a better way to run Prism, but if you’re using it you’ll need to do a little manual mucking in your webapp profile to use this bundle.
So, if you just want the bundle, here you go. Note that I haven’t really tested it on the stand-alone version, so please let me know if something is broken.
Hack Your Webapp
As I said, if you’re using the add-on version, you’ll need to do a little manual hacking. After you create the webapp, as described in my earlier post, open up Explorer and navigate to your Prism webapp bundle cache. On Windows, this is in %APPDATA%\WebApps (something like C:\Users\Brian\AppData\Roaming\WebApps); on Linux, it is ~/.webapps. You should see your Google Wave webapp in that directory. Add the webapp.js script to that directory, and also add in images/google-wave-52×32.png. Now you should get a toaster pop-up and task bar notification when there are new waves.
It would be nice if Google were to add a <link rel=”webapp”> to Wave, referencing an appropriate bundle. If anybody there sees this and cares to use my code as a crude starting point, I am releasing this code under an MIT license.
Posted on October 21st, 2009 4 comments
I received a Wave invite from Tim this morning. (Thanks, Tim!) I’m still not sure of Wave’s usefulness as a tool, although I had quite a positive experience doing a little collaborative feedback and editing. However, after about five minutes of using it, I was sure of one thing:
This thing screams for its own window.
That’s where Prism comes in. Prism allows web applications to be run in a separate browser process, complete with a separate profile, their own window, and a unique taskbar icon. For long-lived applications like a calendar or a chat tool, this is far more useful and stable than opening yet-another tab. Furthermore, I like to read web pages in a tall window (roughly the same proportions as an 8.5×11 piece of paper), but I prefer my communications tools in a wide window. Prism let’s me easily size Wave however I’d like.
After you install the add-on and restart Firefox, just navigate to Wave, click on the Tools menu in Firefox, and click Convert Website To Application. You’ll want to cut out the cruft from the end of the URL, leaving just https://wave.google.com/wave/. And it’s usually helpful to leave the status bar in place. If you’d prefer to have wave in the system tray, you can check that box here, too.
You’ll also want to pick a different icon – especially if you’re on Windows 7. The default favicon.ico that Prism auto-downloads is very small, and scales up really poorly. Here’s a 256×256 one that I used as a PNG and as an ICO. It looks great in my task bar.