Projects/Usability/HIG/Notifications
back to Human Interface Guidelines
Purpose
A notification is an information that is not relevant to actual workflow. It is displayed via a certain notification mechanism on a panel beneath 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 central configuration which can be reach by a small button with a wrench icon. (remark: icon description is too specific here)
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
- Do not use notifications for user assistance (consider to use tool-tips or balloons 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.
- Do not add controls to notification.
- Do not override system settings. (remark: more specific)
- Provide header and content text (remark: not precise enough)
- Add origin and topic to the header. For instance: "Amarok: Now playing" or "Konsole: Event"
- Notification content must not exceed three lines.
- Customize notification with the origin's icon. (remark: word "origin" needs to be replaced; "icon" might be replaced by technical term)
- 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)
to be defined: Are all notifications configured in KCM? If not, how to separate?
Code snippets
to be done