[gtranslator/gtk4: 43/79] Fix shortcut dialog action




commit ec30397233e757391e3fc8f4189c8d5b4e323071
Author: Daniel GarcĂ­a Moreno <dani danigm net>
Date:   Wed Jun 29 19:53:23 2022 +0200

    Fix shortcut dialog action

 src/gtr-application.c | 29 +++++++++--------------------
 1 file changed, 9 insertions(+), 20 deletions(-)
---
diff --git a/src/gtr-application.c b/src/gtr-application.c
index c6bd1a8e..0ecb396c 100644
--- a/src/gtr-application.c
+++ b/src/gtr-application.c
@@ -358,31 +358,20 @@ shortcuts_activated (GSimpleAction *action,
 {
   GtrApplication *app = GTR_APPLICATION (user_data);
   GtrApplicationPrivate *priv = gtr_application_get_instance_private (app);
-  static GtkWidget *shortcuts_window;
   GtkWindow *window = GTK_WINDOW (priv->active_window);
+  GtkWidget *shortcuts_window = NULL;
 
-  if (shortcuts_window == NULL)
-    {
-      GtkBuilder *builder;
-
-      builder = gtk_builder_new_from_resource ("/org/gnome/translator/help-overlay.ui");
-      shortcuts_window = GTK_WIDGET (gtk_builder_get_object (builder, "help_overlay"));
+  g_autoptr (GtkBuilder) builder = NULL;
 
-      g_signal_connect (shortcuts_window,
-                "destroy",
-                G_CALLBACK (gtk_window_destroy),
-                NULL);
-      g_free(shortcuts_window);
-
-      g_object_unref (builder);
-    }
+  builder = gtk_builder_new_from_resource ("/org/gnome/translator/help-overlay.ui");
+  shortcuts_window = GTK_WIDGET (gtk_builder_get_object (builder, "help_overlay"));
 
-    if (window != gtk_window_get_transient_for (GTK_WINDOW (shortcuts_window)))
-      {
-        gtk_window_set_transient_for (GTK_WINDOW (shortcuts_window), GTK_WINDOW (window));
-      }
+  g_signal_connect (shortcuts_window,
+            "destroy",
+            G_CALLBACK (gtk_window_destroy),
+            NULL);
 
-  gtk_widget_show (shortcuts_window);
+  gtk_window_set_transient_for (GTK_WINDOW (shortcuts_window), GTK_WINDOW (window));
   gtk_window_present (GTK_WINDOW (shortcuts_window));
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]