Re: A cross-platform status icon api



On Sat, 2005-08-27 at 00:23 +0300, Mart Raudsepp wrote:
> On Fri, 2005-08-26 at 16:01 -0400, Matthias Clasen wrote:
> > Anything we add in that area has to be examined for
> > cross-platformability. Does anybody have a pointer to the
> > MSDN docs about balloon messages on Win32 ?
> 
> A balloon message is just a tooltip with a certain style on win32.
> 
> Tooltip Control Reference:
> http://msdn.microsoft.com/library/en-us/shellcc/platform/commctls/tooltip/reflist.asp
> 
> Tooltip styles, TTS_BALLOON being the one worth noting:
> http://msdn.microsoft.com/library/en-us/shellcc/platform/commctls/tooltip/styles.asp
> 
> Shell_NotifyIcon function reference, used to send messages to the
> taskbar status area, including adding of an icon together with an
> associated balloon styled tooltip, and modifying it to show a balloon:
> http://msdn.microsoft.com/library/en-us/shellcc/platform/shell/reference/functions/shell_notifyicon.asp
> 
> Data structure for the notification, including a field to set the icon
> of the balloon:
> http://msdn.microsoft.com/library/en-us/shellcc/platform/shell/reference/structures/notifyicondata.asp
> 
> Hope that helps.
> 

Thanks for those pointers. Looks like Win32 has much more than we would
here, and it should be possible to do what Colins notification bubble
does:

- display a message with title, icon and detail text
- optionally set a timeout after which the bubble goes away on its own
- send a signal when the bubble is clicked 
- send a signal when the bubble times out

Here are some more comments on Colins eggnotificationbubble:

- We can't take a widget for the icon, it should probably be a pixbuf
- We may also want to allow stock icons/named icons instead of a pixbuf
- There are quite a few details which the implementation currently 
  doesn't handle currently:
  * the bubble needs to be repositioned if the user changes panel    
    orientation
  * the bubble "stem" needs to be redrawn if the tray icon moves 
    because another status icon appears/disappears or because the
    tray moves inside the panel
  * Concurrent notifications from different status icons should probably
    avoid each other
  * if the panel is not sticky, does the bubble go away if the user
    switches to a desktop without the panel ?

I am going to commit the GtkStatusIcon code initially without
notification.


Regards, Matthias
 





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]