diff --git a/libcaja-private/caja-progress-info.c b/libcaja-private/caja-progress-info.c index 33f592a68..a0e2fd7e9 100644 --- a/libcaja-private/caja-progress-info.c +++ b/libcaja-private/caja-progress-info.c @@ -28,6 +28,7 @@ #include #include #include "caja-progress-info.h" +#include "caja-global-preferences.h" #include enum @@ -599,9 +600,12 @@ update_status_icon_and_window (void) GNotification *notification; static gboolean window_shown = FALSE; - notification = g_notification_new ("caja"); - icon = g_themed_icon_new ("system-file-manager"); - g_notification_set_icon (notification, icon); + if (g_settings_get_boolean (caja_preferences, CAJA_PREFERENCES_SHOW_NOTIFICATIONS)) + { + notification = g_notification_new ("caja"); + icon = g_themed_icon_new ("system-file-manager"); + g_notification_set_icon (notification, icon); + } tooltip = g_strdup_printf (ngettext ("%'d file operation active", "%'d file operations active", @@ -620,8 +624,13 @@ update_status_icon_and_window (void) if (window_shown) { gtk_widget_hide (get_progress_window ()); - g_notification_set_body (notification, _("Process completed")); - g_application_send_notification (g_application_get_default (), "caja", notification); + + if (g_settings_get_boolean (caja_preferences, CAJA_PREFERENCES_SHOW_NOTIFICATIONS)) + { + g_notification_set_body (notification, _("Process completed")); + g_application_send_notification (g_application_get_default (), "caja", notification); + } + window_shown = FALSE; } } @@ -630,8 +639,13 @@ update_status_icon_and_window (void) gtk_widget_show_all (get_progress_window ()); gtk_status_icon_set_visible (status_icon, TRUE); gtk_window_present (GTK_WINDOW (get_progress_window ())); - g_notification_set_body (notification, _("Working...")); - g_application_send_notification (g_application_get_default (), "caja", notification); + + if (g_settings_get_boolean (caja_preferences, CAJA_PREFERENCES_SHOW_NOTIFICATIONS)) + { + g_notification_set_body (notification, _("Working...")); + g_application_send_notification (g_application_get_default (), "caja", notification); + } + window_shown = TRUE; } } diff --git a/libcaja-private/org.mate.caja.gschema.xml b/libcaja-private/org.mate.caja.gschema.xml index a01088807..8555d5f75 100644 --- a/libcaja-private/org.mate.caja.gschema.xml +++ b/libcaja-private/org.mate.caja.gschema.xml @@ -256,7 +256,7 @@ true Whether to show desktop notifications - If set to true, Caja will show desktop notifications for eject events + If set to true, Caja will show desktop notifications.