[haiku-bugs] Re: [Haiku] #1245: implement notification service and API

  • From: "plfiorini" <trac@xxxxxxxxxxxx>
  • Date: Wed, 26 May 2010 22:02:52 -0000

#1245: implement notification service and API
----------------------------------+-----------------------------------------
 Reporter:  wkornewald            |       Owner:  leavengood   
     Type:  enhancement           |      Status:  new          
 Priority:  normal                |   Milestone:  Unscheduled  
Component:  Kits/Application Kit  |     Version:  R1/pre-alpha1
 Keywords:                        |    Platform:  All          
Blockedby:                        |       Patch:  1            
 Blocking:                        |  
----------------------------------+-----------------------------------------

Comment(by plfiorini):

 Initial InfoPopper integration patch added.
 It's the code from its trunk with some improvements:
  - Haiku code style (well let's put it this way: I haven't checked with
 checkstyle yet but it's way more compatible with Haiku style than the
 original code)
 - Fixed crash when the server closes (the window needed to be locked
 before invoking Quit)
 - Removed overlay icon, one icon is good enough
 - Use BAlert's icons if nothing else is specified (the order should be
 application icon, icon set on BNotification, balert icons but I haven't
 tested application icons)
 - Hidden the notifications page from the preflet (read more below)
 - Icon size is either large icon or mini icon (since we use vector icons I
 would encourage more standard sizes defined as icon_size)
 - Icon size selector on preflet is now a menu field
 - Menu fiels in preflet enable the save button
 - No more hardcoded colors (or at least most of them are fixed)

 What need to be fixed:
 - Old _T() defines for Zeta does nothing, it would be better to use our
 Localization Kit here and there
 - Probably there are still style violations
 - Revert doesn't work in preflet and probably it's better to save settings
 immediately without pressing the Save button
 - Fill the blank space with your suggestion, I'm sure you will find a lot
 of other stuff to improve :)

 What I want to do in the future:
 This patch is just a starting point. The whole notifications filtering
 should be rewritten and that's why it's hidden in the preflet.
 I'm more inclined to do something like Growl. An application should
 "subscribe" the notification server in some way and tell what are its
 notifications. BRoster will send the application's signature in the app
 field so it will not be specified with BNotification::SetApplication().
 The preflet will let you:
   1) hide all the notification for an application
   2) hide all the notifications on a per 'type' basis
   3) enter a panel with all the notifications that the application can
 send and configure what to do (emit a sound, display the notification,
 etc...)

 PS: Sorry for the double post and for posting a still incomplete patch but
 I didn't want to loose it

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/1245#comment:5>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: