GNOME Notification System: Banners and Lists

This article explores how the GNOME desktop environment manages system and application alerts through non-intrusive banners and an integrated notification list. It covers the mechanics of top-bar banner pop-ups, the behavior of the central message tray within the calendar menu, and the ways GNOME prioritizes user focus by preventing desktop workflow disruptions.

Non-Intrusive Notification Banners

GNOME delivers incoming alerts through banners that drop down briefly from the top-center of the screen, just beneath the primary panel. These banners are designed to inform the user without breaking their current workflow. Unlike traditional pop-ups in some operating systems, GNOME banners do not steal keyboard or window focus, allowing continuous typing or navigating in the active application.

Banners remain visible for a few seconds before sliding back out of view automatically. If an alert requires immediate attention, banners can include interactive elements such as action buttons, snooze options, or inline text fields for direct message replies. Users can also dismiss a banner manually with an upward swipe gesture or a mouse click.

To prevent disruption during focus-heavy tasks, GNOME automatically suppresses banners when an application runs in full-screen mode, such as during video playback or gaming. Instead of flashing over the media, the notifications are silently routed directly to the system log for later review.

The Central Notification List

When a banner disappears—whether dismissed or left to time out—the alert is not lost. GNOME collects all pending alerts into a unified notification list integrated directly into the Date & Time menu at the top center of the screen. Clicking the clock or pressing the Super + M keyboard shortcut opens a dual-pane menu containing the calendar on the right and the notification list on the left.

The notification list organizes alerts sequentially and groups them by application. This aggregation provides several key management features:

  • Persistent History: Notifications stay in the list until explicitly acted upon or dismissed, ensuring messages, updates, and system alerts are available when the user is ready.
  • Granular Control: Users can dismiss individual notifications by clicking the close button on a specific card, or they can clear an entire application’s queue at once. A global "Clear All" button clears the entire tray.
  • Application Focus: Clicking a notification card inside the list automatically raises the relevant window to the foreground and navigates to the context of the alert.

Do Not Disturb and System Settings

GNOME gives users complete authority over notification behavior via system-level controls. Within the notification drawer, a "Do Not Disturb" (DND) toggle instantly mutes all incoming banners. When DND is active, new notifications bypass the screen entirely and are placed directly into the notification list without visual interruptions or sounds.

Users can also fine-tune alert behaviors on a per-application basis in the main GNOME Settings panel. Options include:

  • Disabling banners while keeping notifications in the central list.
  • Hiding notification content on the lock screen for privacy.
  • Disabling sound alerts.
  • Completely revoking notification permissions for specific software.

Standardized Protocol Integration

GNOME adheres to the standard FreeDesktop.org Desktop Notifications specification (org.freedesktop.Notifications). By leveraging this D-Bus interface, both native GNOME Core applications and third-party software—including Flatpaks, web browsers, and command-line utilities—can send notifications that respect the desktop's layout, theme, and urgency rules automatically. Alerts marked with "critical" urgency override standard dismissal timers, remaining visible until acknowledged, ensuring vital system events are never missed.