summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntónio Fernandes <antoniof@gnome.org>2021-08-15 17:45:18 +0100
committerOndrej Holy <oholy@redhat.com>2021-11-22 15:16:18 +0000
commita3126525a11af09dcc1197eab10074ec201eb283 (patch)
treeb26b64af1cdad6f0fcc88926ab1779e5375a38ca
parent77f580f5778bfabf48c39961a05fc07c41629587 (diff)
downloadnautilus-a3126525a11af09dcc1197eab10074ec201eb283.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 f82d3d687..d6f998d61 100644
--- a/src/nautilus-file-operations.c
+++ b/src/nautilus-file-operations.c
@@ -2990,16 +2990,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),
@@ -3013,22 +3005,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;