KarmicNotifyOSD

Differences between revisions 2 and 3
Revision 2 as of 2009-06-25 15:36:46
Size: 4710
Editor: dslb-088-077-197-112
Comment:
Revision 3 as of 2009-06-25 16:32:24
Size: 5395
Editor: dslb-088-077-197-112
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
##(see the SpecSpec for an explanation)
Line 4: Line 2:
 * '''Created''':
Line 6: Line 3:
 * '''Packages affected''': notify-osd  * '''Packages affected''': notify-osd, evolution, firefox, NetworkManager, gnome-settings-daemon, pidgin
Line 10: Line 7:
For Karmic Koala (Ubuntu 9.10) we want to further improve the capabilities and integration with the notification-daemon notify-osd. This means working on the following topics. For Karmic Koala (Ubuntu 9.10) we want to improve the capabilities and user-experience of the notification-daemon notify-osd and further its integration into the Ubuntu- and Kubuntu-desktop.
Line 32: Line 29:
 * better d-n-d mode for full-screen applications, adaptive timer  * better DnD mode (Do-not-Disturb) for full-screen applications, adaptive timer
Line 35: Line 32:
=== KDE-integration ===
 * (agateau and ScottK could provide the needed bullet points here)
Line 36: Line 36:
 * Helping to get the FreeDesktop.org notifications specification to 1.0 ===  * Helping to get the [[http://www.freedesktop.org|FreeDesktop]] notifications specification to 1.0 ===
Line 47: Line 47:
The original [[http://wiki.ubuntu.com/NotifyOSD specification]] to improve of the notification-system used in Ubuntu written for the Jaunty Jackalope (Ubuntu 9.04) was not fully implemented in time due to its complexity and interaction with so many external applications. Furthermore the gather feedback and bug-reports from users introduced rethinking some aspects of the original specification, which has been updated since. The original [[http://wiki.ubuntu.com/NotifyOSD|specification]] to improve of the notification-system used in Ubuntu written for the Jaunty Jackalope (Ubuntu 9.04) was not fully implemented in time due to its complexity and interaction with so many external applications. Furthermore the gather feedback and bug-reports from users introduced rethinking some aspects of the original specification, which has been updated since.
Line 59: Line 59:
This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:
Line 63: Line 61:
Should cover changes required to the UI, or specific UI that is required to implement this The looks of notifications
 * [[https://wiki.ubuntu.com/NotifyOSD#Bubble%20appearance%20and%20layout|on composited desktops]]
 * no non-composited case (designs still missing)
Line 67: Line 67:
Code changes should include an overview of what needs to change, and in some cases even the specific details. Mainly [[http://launchpad.net/notify-osd|notify-osd]] has to be modified for the required enhcancements. But there are also external applications which need patches in order to meet [[http://wiki.ubuntu.com/]].

Mandatory (applications in main):
 * NetworkManager
 * rhythmbox
 * pidgin
 * firefox
 * evolution
 * AppCenter
 * gnome-settings-daemon
 * gnome-power-manager

"Nice to have" (applications in universe):
 * gwibber
 * thunderbird
 * liferea
 * empathy
 * banshee
Line 71: Line 88:
Include:
 * data migration, if any
 * redirects from old URLs to new ones, if any
 * how users will be pointed to the new way of doing things, if necessary.
Application developers need to be aware of [[https://wiki.ubuntu.com/NotificationDevelopmentGuidelines|NotificationDevelopmentGuidelines]] and [[https://wiki.ubuntu.com/NotificationDesignGuidelines|NotificationDesignGuidelines]] if they want to make sure their applications notifications seamlessly integrate with notify-osd on the Ubuntu desktop.
  • Launchpad Entry: dx-karmic-notify-osd

  • Contributors: Canonical "Desktop Experience"- and "User Interaction Design"-teams, numerous Ubuntu-community members

  • Packages affected: notify-osd, evolution, firefox, NetworkManager, gnome-settings-daemon, pidgin

Summary

For Karmic Koala (Ubuntu 9.10) we want to improve the capabilities and user-experience of the notification-daemon notify-osd and further its integration into the Ubuntu- and Kubuntu-desktop.

Rendering / performance aspects

  • surface tweaks, blur cache
  • non-composited fallback mode
  • adapt better to the DPI settings

Interaction enhancements

  • improving the appearance and behavior (making composited bubbles more obviously unclickable, and non-composited bubbles classier, pause on hover, proximity hover, more subtle transitions)
  • investigating whether we can use non-critical priorities for anything useful

Presentation enhancements

  • positioning on (multiple) screen(s), depending on the type of notification
  • experimenting with better positioning for the notification bubbles
  • implementing the duration rules, so that notifications with longer text are shown for longer
  • better handling of long backlogs of notifications
  • accessibility, e.g. sound theme compliance and maybe alt text for icons

Audio application enhancements

  • consistent feedback for multimedia keys

Context awareness

  • better DnD mode (Do-not-Disturb) for full-screen applications, adaptive timer
  • suppressing bubbles when any window is full-screen

KDE-integration

  • (agateau and ScottK could provide the needed bullet points here)

Contribute our experience to FDO

  • Helping to get the FreeDesktop notifications specification to 1.0 ===

Testing

  • a test suite for the rendering layer.

Release Note

The new included version of notify-osd x.y.z now provides increased rendering performance (and reduced CPU-usage) in general, notification-bubbles look nicer on non-composited desktops, non-critial notifications are now suppressed when using an application in fullscreen-mode or the screensaver is active (but e.g. notifications like "battery-low" still show up), on-screen time of notification now adapts to user behaviour (e.g. timing out is paused when a user hovers the mouse-pointer over a notification-bubble), notifications better adjust their positioning to users with multi-screen setups, old notifications (of exited or crashed applications) get removed from the notification queue, feedback-notifications for multi-media keys on keyboards are introduced again (e.g. Play/Pause, Stop, Forward, Backward).

Rationale

The original specification to improve of the notification-system used in Ubuntu written for the Jaunty Jackalope (Ubuntu 9.04) was not fully implemented in time due to its complexity and interaction with so many external applications. Furthermore the gather feedback and bug-reports from users introduced rethinking some aspects of the original specification, which has been updated since.

User stories

Assumptions

Design

You can have subsections that better describe specific parts of the issue.

Implementation

UI Changes

The looks of notifications

Code Changes

Mainly notify-osd has to be modified for the required enhcancements. But there are also external applications which need patches in order to meet http://wiki.ubuntu.com/.

Mandatory (applications in main):

"Nice to have" (applications in universe):

  • gwibber
  • thunderbird
  • liferea
  • empathy
  • banshee

Migration

Application developers need to be aware of NotificationDevelopmentGuidelines and NotificationDesignGuidelines if they want to make sure their applications notifications seamlessly integrate with notify-osd on the Ubuntu desktop.

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.

BoF agenda and discussion

Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected.


CategorySpec

DesktopExperienceTeam/KarmicNotifyOSD (last edited 2009-06-26 10:45:56 by dbarth)