summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntónio Fernandes <antoniof@gnome.org>2021-08-15 17:45:18 +0100
committerAntónio Fernandes <antoniof@gnome.org>2021-08-15 21:21:07 +0100
commit34b4168bb709201bc439d81efe5286e454a71a81 (patch)
tree334aebfd8826eb8afc49e7584468d6c734bef6c9
parentd318e62dd1aa5979b954ff9f2437696c78a3a328 (diff)
downloadnautilus-34b4168bb709201bc439d81efe5286e454a71a81.tar.gz
file-operations: Make "trash on unmount" dialog modal
Actually set the parent window, instead of juggling with GdkScreen, which is going away with GdkScreen. Furthermore, parentless dialogs should not exist, HIG-wise. While we are at it, also remove gtk_window_set_skip_taskbar_hint() which is going away with GTK4 too.
-rw-r--r--src/nautilus-file-operations.c25
1 files changed, 2 insertions, 23 deletions
diff --git a/src/nautilus-file-operations.c b/src/nautilus-file-operations.c
index 7927bd504..259ecaccc 100644
--- a/src/nautilus-file-operations.c
+++ b/src/nautilus-file-operations.c
@@ -2989,16 +2989,8 @@ prompt_empty_trash (GtkWindow *parent_window)
{
gint result;
GtkWidget *dialog;
- GdkScreen *screen;
- screen = NULL;
- if (parent_window != NULL)
- {
- screen = gtk_widget_get_screen (GTK_WIDGET (parent_window));
- }
-
- /* Do we need to be modal ? */
- dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL,
+ dialog = gtk_message_dialog_new (parent_window, GTK_DIALOG_MODAL,
GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
_("Do you want to empty the trash before you unmount?"));
gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog),
@@ -3012,22 +3004,9 @@ prompt_empty_trash (GtkWindow *parent_window)
CANCEL, GTK_RESPONSE_CANCEL,
_("Empty _Trash"), GTK_RESPONSE_ACCEPT, NULL);
gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
- gtk_window_set_title (GTK_WINDOW (dialog), ""); /* as per HIG */
- gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), TRUE);
- if (screen)
- {
- gtk_window_set_screen (GTK_WINDOW (dialog), screen);
- }
+ gtk_window_set_title (GTK_WINDOW (dialog), "");
atk_object_set_role (gtk_widget_get_accessible (dialog), ATK_ROLE_ALERT);
- /* Make transient for the window group */
- gtk_widget_realize (dialog);
- if (screen != NULL)
- {
- gdk_window_set_transient_for (gtk_widget_get_window (GTK_WIDGET (dialog)),
- gdk_screen_get_root_window (screen));
- }
-
result = gtk_dialog_run (GTK_DIALOG (dialog));
gtk_widget_destroy (dialog);
return result;