Links

DreamHost Web Hosting - http://www.dreamhost.com/

JabberView

JabberStudio

JabberTools

JabCast

 

The System Tray Icon

The icon that lives in the Windows System tray is a small, but vitally important part of a Windows Jabber client.  The system tray icon is the place that your user will check most regular for new messages or other events, and to make sure they are online, and what their current status is, even when the main contact list window is obscured or minimised.  

The functions of the Windows system tray are somewhat limited, but with a little imagination, it can be used as a great way to pack a lot of information and function into a small space on the screen.  It is worth spending some time on this part of the client, because it is all the user has to go by when the main contact list window is minimised or obscured by other windows.

First of all, the icon itself should give the user some feedback as to his or her online status, and if there are any events waiting that require attention.  Usually the icon is changed by the program whenever the system status changes or is changed by the user.  It is also helpful if hovering the mouse pointer over the icon will show the current status and status message as text in the form of a tool-tip.

To indicate to the user that a message or other event requires their attention, the icon on the system tray should blink to attract attention.  A bright colour for the flashing icon is preferable.

For minor events that do not require user interaction (such as a user coming online), it is helpful to also notify the user in a non-obtrusive way.  It is worth remembering that anything like this that pops up without the users direct request has the potential to obscure something that the user is working on.  This may be a good chance to use the semi-transparent window properties or Balloon Tooltips that were introduced in Win2000/ME.

Left clicking on the icon should bring up a menu that lets the user change status, in the same way as the main status button on the contact list window does.

Right clicking on the icon should bring up the same menu that is called by the main Start-style button on the contact list window.

Double clicking on the icon should action the next queued event if one exists, or if there is no event waiting, should restore the contact list window and give it focus.

I would suggest clicking both buttons simultaneously on the system tray icon could bring up a small history window showing the last 10 or so events.

Note:  Because Microsoft have not provided anyway to request a position of your icon in the System Tray, and the user has no way of changing the order, icons get added to the right-hand side near the clock, and then get gradually pushed further to the left as other icons get added.  This means that if you want your icon to be the rightmost icon in the tray (where I prefer my IM icon to reside) the best you can do is code a small time delay into the auto-startup of your client.  This will mean (hopefully) it is the last icon to get added to the tray, and will stay on the very right.  (Although this will not prevent programs that are started manually by the user adding icons later).

Note:  Windows being Windows, means that sometimes the Explorer Shell task crashes.  When this happens, it will (most of the time) restart on its own, but means that the icons that were added to the system tray as programs were started are no longer visible.  To solve this problem, with the release of Internet Explorer 4.0 and later Microsoft introduced a system message that is broadcast to all running applications when the Taskbar (re)initialises.  Your Jabber client should trap this message and use the the opportunity to refresh the programs system tray icon, otherwise it will be lost, causing user frustration.

 

This site last modified
2002-07-01