mirror of
https://gitlab.gnome.org/GNOME/nautilus
synced 2024-10-02 22:13:39 +00:00
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.
This commit is contained in:
parent
77f580f577
commit
a3126525a1
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue