Changes

Created page with "<noinclude>{{TOCright}} Category:Feature Page Incomplete Messages Notification </noinclude> == Summary == The current icons-only notification system is ..."
<noinclude>{{TOCright}}
[[Category:Feature Page Incomplete]]
[[Category:Feature|Messages Notification]]
</noinclude>

== Summary ==
The current icons-only notification system is generally ineffective to fully communicate different kind of system events. This feature provides a set of extensions to the current system to display simple text messages.

== Owner ==
* Name: [[User:tch|Martin Abente]]
* Email: <tch AT sugarlabs DOT org>

== Current status ==
* Targeted release: (0.9x)
* Percentage of completion: 25% (Design - prototyping)

== Detailed Description ==
This feature requires a some re-factoring of jarabe.frame.notification(NotificationIcon, NotificationWindow) widgets.

Also, requires minimal extensions to jarabe.frame.frame(Frame) to extract the text information from the current notifications.

Plus, since the current notifications can't show up for long periods of time (to avoid visual spam) a new tray bar needs to be added to the frame.

== Benefit to Sugar ==
Messages notification capabilities, useful in many different scenarios.

== Scope ==
sugar/src/jarabe/frame/frame.py

sugar/src/jarabe/frame/notification.py

sugar/src/jarabe/frame/notificationstray.py (new file)

sugar/src/jarabe/frame/Makefile.am

==UI Design==
Notification icons show up as usual, but, when clicking on icons a palette will show up with summary and body information.

A new horizontal tray is added in the left side of the bottom frame, this works as a historical registry of current session notifications.

[[File:Notif-status0.png|200px]]
[[File:Notif-status1.png|200px]]
[[File:Notif-status2.png|200px]]
[[File:Notif-status3.png|200px]]
[[File:Notif-status4.png|200px]]
[[File:Notif-status5.png|200px]]

== How To Test ==
Running this python script should work (provided by Gonzalo Odiard):


import dbus
BUS_NAME = 'org.freedesktop.Notifications'
OBJ_PATH = '/org/freedesktop/Notifications'
IFACE_NAME = 'org.freedesktop.Notifications'
bus = dbus.SessionBus()
notify_obj = bus.get_object(BUS_NAME,OBJ_PATH)
notifications = dbus.Interface(notify_obj,IFACE_NAME)
notifications.Notify("HelloWorld",0,'',"Summary","Body",[],{},-1)

== User Experience ==
1. User notice the notification pulsing icon.

2. User click on the icon to read its message.

== Dependencies ==
None

== Contingency Plan ==
Work harder.

== Documentation ==
None

== Release Notes ==
Nothing to be released (yet).

== Comments and Discussion ==
Please follow the DESIGN discussion at the sugar-devel list.
572

edits