From d1aebb274004269c127798d44183bb43d909f2b3 Mon Sep 17 00:00:00 2001
From: Bruce Cowan <bruce@bcowan.me.uk>
Date: Tue, 11 Oct 2022 21:32:29 +0100
Subject: [PATCH] Don't use global variable for storing window

---
 src/main.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/main.c b/src/main.c
index 20756b4..b80e79c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -8,14 +8,15 @@
 #include "rugby-app-window.h"
 #include "rugby-pref-window.h"
 
-static GtkWidget *window = NULL;
-
 static void
 on_activate (              GApplication *app,
              G_GNUC_UNUSED gpointer      user_data)
 {
+    g_assert (GTK_IS_APPLICATION (app));
+
+    GtkWindow *window = gtk_application_get_active_window (GTK_APPLICATION (app));
     if (!window)
-        window = GTK_WIDGET (rugby_app_window_new (GTK_APPLICATION (app)));
+        window = GTK_WINDOW (rugby_app_window_new (GTK_APPLICATION (app)));
 
     if (g_strcmp0 (PROFILE, "development") == 0)
         gtk_widget_add_css_class (GTK_WIDGET (window), "devel");
-- 
GitLab