The story of my work on the message tray this week can be summed up in two words - "more pictures." I've been trying to replicate the music player mockup we have by getting the previous and next icons into the notifications and getting the album art into the background. This has resulted in two branches I'm working on at the moment. One is my attempt to add an optional background image to notifications in general. This has been (and continues to be) a lesson in the shell toolkit of widgets. I'm still not entirely sure how they all work together, and some of them have unexpected interactions (or lack thereof). My other branch, which is doing its job nicely, implements icon buttons as part of normal libnotify notifications. Without asking applications to add more info to notifications, I made the code that haddles the actions sent in the notification check to see if the action key corresponds to a stock icon, if it does, icon button! This means I've patched my copy of rhythmbox to send the next action as 'media-playback-next' or something like that, but I hope that is an easy and relatively non-invasive way to make the notifications more interesting with minimal effort.
While trying to implement things for the message tray, it's been interesting seeing how the pro designers think about it. At first it was a bit frustrating when marina was insisting on sticking to the notification spec and not jumping right into writing mini dbus applications for every program, but I think I'm starting to realize the value of all that. She also has the uncanny ability to pop up in IRC when I least expect her.
This past week, while I have gotten some things working, I've made quite a mess of some code, and still need to polish things off. I don't tend to have lots of time right now because classes are still in full swing for me, so these weekends are my best work time.
In the coming week, I'd love to see the status icons moving down to the message tray, once I've finished these bits up. I feel like that's an important part in seeing how this all will fit together, but the project is still pretty fluid, as people who follow development will know, and we'll see where those up top think I'm best put to use in the coming week.