From e50ea0a6d34b59e638ad30116d589bc7aa169f44 Mon Sep 17 00:00:00 2001 From: Leandro Pereira Date: Wed, 13 May 2020 22:42:22 -0700 Subject: Show "Benchmarking..." dialog on top of sync manager --- shell/shell.c | 6 ++++++ shell/syncmanager.c | 2 ++ 2 files changed, 8 insertions(+) (limited to 'shell') diff --git a/shell/shell.c b/shell/shell.c index 06e2f936..338e68f3 100644 --- a/shell/shell.c +++ b/shell/shell.c @@ -737,6 +737,11 @@ gboolean hardinfo_link(const gchar *uri) { return FALSE; /* didn't handle it */ } +void shell_set_transient_dialog(GtkWindow *dialog) +{ + shell->transient_dialog = dialog ? dialog : shell->window; +} + void shell_init(GSList * modules) { if (shell) { @@ -761,6 +766,7 @@ void shell_init(GSList * modules) shell->info_tree = info_tree_new(); shell->loadgraph = load_graph_new(75); shell->detail_view = detail_view_new(); + shell->transient_dialog = shell->window; update_tbl = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, destroy_update_tbl_value); diff --git a/shell/syncmanager.c b/shell/syncmanager.c index e2dabd7a..afe1930a 100644 --- a/shell/syncmanager.c +++ b/shell/syncmanager.c @@ -135,9 +135,11 @@ void sync_manager_show(GtkWidget *parent) if (gtk_dialog_run(GTK_DIALOG(sd->dialog)) == GTK_RESPONSE_ACCEPT) { shell_view_set_enabled(FALSE); shell_status_set_enabled(TRUE); + shell_set_transient_dialog(sd->dialog); sync_dialog_start_sync(sd); + shell_set_transient_dialog(NULL); shell_status_set_enabled(FALSE); shell_view_set_enabled(TRUE); } -- cgit v1.2.3