Projects/Usability/HIG/Notifications: Difference between revisions

From KDE TechBase
< Projects‎ | Usability‎ | HIG
(Created page with "__NOTOC__ back to Human Interface Guidelines == Purpose == A ''notification'' is an information that is not relevant to actual workflow. It is displ...")
 
(Added guideline for persistent notifications)
(15 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
back to [[Projects/Usability/HIG|Human Interface Guidelines]]
 
== Purpose ==
== Purpose ==
A ''notification'' is an information that is not relevant to actual workflow. It is displayed via a certain [[Projects/Usability/HIG/NotificationMechanism|notification mechanism]] on a panel beneath the taskbar notification area. Notifications inform users about non-critical problems, but they don't prevent them.
A ''notification'' is an information that is not directly relevant to the user's current task. It is displayed via a certain notification mechanism on a panel above/below the taskbar notification area. Notifications inform users about non-critical problems, but they don't prevent them.


Notifications pop-up and overlay all other windows. More than one notification are stacked vertically. Notifications disappear after a short period automatically, but can be closed by the user or keep visible by mouse over (remark: better description necessary). Each notification has its own [[Projects/Usability/HIG/CentralConfiguration|central configuration]] which can be reach by a small button with a wrench icon. (remark: icon description is too specific here)
== Examples ==
== Examples ==
(remark: pictures only?)
 
=== Positive ===
* Email received
* New update available
* Download completed
* Low battery power
todo: picture
=== (Epic) Fails ===
* Low space on medium (this information becomes relevant for file managers and invoked as modal message in this case)
todo: picture
== Guidelines ==
== Guidelines ==
* Do not use notifications for user assistance (consider to use [[Projects/Usability/HIG/Tooltip|tool-tips]] or [[Projects/Usability/HIG/Balloon|balloons]] for short information, or refer to [[Projects/Usability/HIG/HelpSystem|help system]] for extended text.
=== Is this the right control ===
* Do not use notifications for context relevant information that might interfere with the actual workflow (consider to use a [[Projects/Usability/HIG/MessageDialog|message dialog]].
* Use a notification to inform about a non-critical problem that is not directly relevant to the user's current task.
* Do not add controls to notification.
* Do not use notifications for user assistance (consider to use [[Projects/Usability/HIG/Tooltip|tool-tips]] for short information, or refer to [[Projects/Usability/HIG/HelpSystem|help system]] for extended text).
* Do not override system settings. (remark: more specific)
* Do not use notifications for context relevant information that might interfere with the actual workflow (consider to use a [[Projects/Usability/HIG/Messages|message dialog]]).
* Provide header and content text (remark: not precise enough)
 
* Add origin and topic to the header. For instance: "Amarok: Now playing" or "Konsole: Event"
=== Behavior ===
* Notification content must not exceed three lines.
* Notifications disappear automatically after a short period (unless the cursor hovers over them), but can be closed by the user at any point (KNotification::NotificationFlag == CloseOnTimeout).
* Customize notification with the origin's icon. (remark: word "origin" needs to be replaced; "icon" might be replaced by technical term)
* A notification can be set as "persistent" which, under Plasma, makes it go into a notification queue where it stays for 10 minutes unless the user removes it actively use persistent notifications only to inform about events which are both '''very important''' and '''unexpected'''. For example, do ''not'' use a persistent notification to inform about a completed file transfer, but use one to inform about a failed transfer.
* Provide actionable information (e.g. "Low battery power" "Only 13 min (2%) capacity remaining. Please save your stuff now. Your system will get shut down soon.") (remark: should be according actual text)
* Do not add more than three actions to a particular notification. And take care about limited space for labels. For instance, ''Skip'', ''Info'', and ''Buy'' in case of Amarok's "Now playing" notification.
to be defined: Are all notifications configured in KCM? If not, how to separate?
 
== Code snippets ==
=== Appearance ===
to be done
* Make sure to make the origin of the notification clear from the notification title. For instance: "Amarok: Now playing" or "Konsole: Event".
* Keep the notification content concise (no more than about three simple sentences).
* Provide actionable information (e.g. "Low battery power: Approximately 13 min (2%) capacity remaining.").
 
== Implementation ==
 
[[Category:Usability]][[Category:Behavior]][[Category:User_Assistance]][[Category:User-driven_assistance]]

Revision as of 14:57, 18 July 2016


Purpose

A notification is an information that is not directly relevant to the user's current task. It is displayed via a certain notification mechanism on a panel above/below the taskbar notification area. Notifications inform users about non-critical problems, but they don't prevent them.

Examples

Guidelines

Is this the right control

  • Use a notification to inform about a non-critical problem that is not directly relevant to the user's current task.
  • Do not use notifications for user assistance (consider to use tool-tips for short information, or refer to help system for extended text).
  • Do not use notifications for context relevant information that might interfere with the actual workflow (consider to use a message dialog).

Behavior

  • Notifications disappear automatically after a short period (unless the cursor hovers over them), but can be closed by the user at any point (KNotification::NotificationFlag == CloseOnTimeout).
  • A notification can be set as "persistent" which, under Plasma, makes it go into a notification queue where it stays for 10 minutes unless the user removes it actively use persistent notifications only to inform about events which are both very important and unexpected. For example, do not use a persistent notification to inform about a completed file transfer, but use one to inform about a failed transfer.
  • Do not add more than three actions to a particular notification. And take care about limited space for labels. For instance, Skip, Info, and Buy in case of Amarok's "Now playing" notification.

Appearance

  • Make sure to make the origin of the notification clear from the notification title. For instance: "Amarok: Now playing" or "Konsole: Event".
  • Keep the notification content concise (no more than about three simple sentences).
  • Provide actionable information (e.g. "Low battery power: Approximately 13 min (2%) capacity remaining.").

Implementation