From 08f479a8540b60dccef47a2d30cb83deba54bdcd Mon Sep 17 00:00:00 2001 From: Pablo Barciela Date: Mon, 17 Dec 2018 16:34:37 +0100 Subject: caja-progress-info: show notifications with the gsettings key: org.mate.caja.preferences.show-notifications Closes https://github.com/mate-desktop/caja/issues/1093 --- libcaja-private/caja-progress-info.c | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) (limited to 'libcaja-private/caja-progress-info.c') diff --git a/libcaja-private/caja-progress-info.c b/libcaja-private/caja-progress-info.c index 33f592a6..a0e2fd7e 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; } } -- cgit v1.2.1