diff --git a/images/ui/notifications/alert.png b/images/ui/notifications/alert.png deleted file mode 100644 index 8e3987882..000000000 Binary files a/images/ui/notifications/alert.png and /dev/null differ diff --git a/images/ui/notifications/banner.png b/images/ui/notifications/banner.png deleted file mode 100644 index 98fe846bc..000000000 Binary files a/images/ui/notifications/banner.png and /dev/null differ diff --git a/images/ui/notifications/notification_type_alert.png b/images/ui/notifications/notification_type_alert.png new file mode 100644 index 000000000..bc9426bc7 Binary files /dev/null and b/images/ui/notifications/notification_type_alert.png differ diff --git a/images/ui/notifications/notification_type_alert_dark.png b/images/ui/notifications/notification_type_alert_dark.png new file mode 100644 index 000000000..25525472f Binary files /dev/null and b/images/ui/notifications/notification_type_alert_dark.png differ diff --git a/images/ui/notifications/notification_type_balloon_action_not_required.png b/images/ui/notifications/notification_type_balloon_action_not_required.png new file mode 100644 index 000000000..0058aa3a3 Binary files /dev/null and b/images/ui/notifications/notification_type_balloon_action_not_required.png differ diff --git a/images/ui/notifications/notification_type_balloon_action_not_required_dark.png b/images/ui/notifications/notification_type_balloon_action_not_required_dark.png new file mode 100644 index 000000000..d35da4a01 Binary files /dev/null and b/images/ui/notifications/notification_type_balloon_action_not_required_dark.png differ diff --git a/images/ui/notifications/notification_type_banner_action_required_dialog.png b/images/ui/notifications/notification_type_banner_action_required_dialog.png new file mode 100644 index 000000000..0f1861da6 Binary files /dev/null and b/images/ui/notifications/notification_type_banner_action_required_dialog.png differ diff --git a/images/ui/notifications/notification_type_banner_action_required_dialog_dark.png b/images/ui/notifications/notification_type_banner_action_required_dialog_dark.png new file mode 100644 index 000000000..db3912f82 Binary files /dev/null and b/images/ui/notifications/notification_type_banner_action_required_dialog_dark.png differ diff --git a/images/ui/notifications/notification_type_banner_action_required_editor.png b/images/ui/notifications/notification_type_banner_action_required_editor.png new file mode 100644 index 000000000..bb0236b42 Binary files /dev/null and b/images/ui/notifications/notification_type_banner_action_required_editor.png differ diff --git a/images/ui/notifications/notification_type_banner_action_required_editor_dark.png b/images/ui/notifications/notification_type_banner_action_required_editor_dark.png new file mode 100644 index 000000000..bf62c2896 Binary files /dev/null and b/images/ui/notifications/notification_type_banner_action_required_editor_dark.png differ diff --git a/images/ui/notifications/sticky_toast.png b/images/ui/notifications/sticky_toast.png deleted file mode 100644 index 306b292c0..000000000 Binary files a/images/ui/notifications/sticky_toast.png and /dev/null differ diff --git a/images/ui/notifications/timed_toast.png b/images/ui/notifications/timed_toast.png deleted file mode 100644 index 5514b5e54..000000000 Binary files a/images/ui/notifications/timed_toast.png and /dev/null differ diff --git a/images/ui/notifications/toolwindow_balloon.png b/images/ui/notifications/toolwindow_balloon.png deleted file mode 100644 index d6515a054..000000000 Binary files a/images/ui/notifications/toolwindow_balloon.png and /dev/null differ diff --git a/topics/ui/controls/notification_types.md b/topics/ui/controls/notification_types.md index 679de894a..0997cb108 100644 --- a/topics/ui/controls/notification_types.md +++ b/topics/ui/controls/notification_types.md @@ -6,96 +6,43 @@ Notifications inform users about the status of user or system initiated operations. They can have different actions depending on the message. -There are four types of notifications: +Types of notifications: - Alert - [Banner](banner.md) -- [Balloon](balloon.md) -- Tool window balloon +- [Notification balloon](balloon.md) ## What notification to use -Consider two factors when deciding which notification type to use. +Choose a notification type based on a combination of two factors: -**User action** +1. Is **user action** required to proceed? + - [Required immediately](#action-is-required-immediately) + - [Required but not immediately](#action-is-required-but-not-immediately) + - [Not required](#action-is-not-required-to-proceed) -

Are the users required to address the notification before they can proceed with current tasks?

- - Required immediately - - Required, but not immediately - - Not required +2. From what **context** the notification was initiated? + - Editor + - Tool window + - Dialog + - Any other location -**Context of trigger** -

What initiated the notification? Does the initiation point to a particular context or location?

- - File tab - - Tool windows - - Other +### Action is required immediately +Use an alert in any context: +![An alert 'Open Project' asking where to open 'myJavaProject' with options to cancel, open in a new window or this window](notification_type_alert.png){width=706} -Use the following table to determine which notification to use based on the two factors: +### Action is required but not immediately +Use a [banner](banner.md) if the context is the editor, a tool window, or a dialog: +![A banner in the editor with a warning 'Project JDK is not defined' and action 'Setup JDK'](notification_type_banner_action_required_editor.png){width=706} + +In any other context, use a [notification balloon](balloon.md). + +### Action is not required to proceed +Use a [notification balloon](balloon.md) in any context except dialogs: +![A notification balloon warning about a shortcut conflict with a description and actions 'Modify shortcuts' and 'Don't show again'](notification_type_balloon_action_not_required.png){width=706} + +In a dialog, use a [banner](banner.md): +![A banner in a dialog with a notification 'Interactive lesson available' and actions 'Open lesson' and an icon button to close the banner](notification_type_banner_action_required_dialog.png){width=706} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
User actionContextTypeExamples
Required immediately - All - Alerts - -

Confirm Restart

-

Opening projects in new window

-

When trying to rename a method, but a conflict is found

-

Need a dependency before using a feature

-

-
Required, but not immediately -

File tabs

-

Tool windows

-
Banners -

Configuring SDK for your project

-

Requiring a Gradle sync for tools to work properly

-

-
Not requiredTool windowsTool Window balloons -

Status of task completion

-

When Find Usages is invoked on a method, use a tool window balloon to show the feedback since the results will be found in the Find tool window

-

-
All but file tabs or tool windowsSticky balloons - IDE and Plugin Updates - -
Timed balloons -

Module imported

-

Framework detection

-

-
-**Exception**: If the action is highly recommended, consider using Banners across all files for visibility instead of Sticky balloon.