From 791fbad5b9c2847a9a90521c75fc7f7001b1eb01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Thu, 10 Jun 2021 20:07:00 +0200 Subject: tools/debug-gui: use GMainLoop instead of gtk_main MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Migrate to GMainLoop because gtk_main is deprecated in GTK 4. Signed-off-by: José Expósito --- tools/libinput-debug-gui.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'tools/libinput-debug-gui.c') diff --git a/tools/libinput-debug-gui.c b/tools/libinput-debug-gui.c index 249d3a6a..a14c178d 100644 --- a/tools/libinput-debug-gui.c +++ b/tools/libinput-debug-gui.c @@ -82,6 +82,8 @@ struct window { struct tools_options options; struct list evdev_devices; + GMainLoop *event_loop; + GtkWidget *win; GtkWidget *area; int width, height; /* of window */ @@ -847,7 +849,15 @@ map_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data) static void window_quit(struct window *w) { - gtk_main_quit(); + g_main_loop_quit(w->event_loop); +} + +static void +window_delete_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data) +{ + struct window *w = data; + + window_quit(w); } static void @@ -865,7 +875,7 @@ window_init(struct window *w) gtk_window_set_resizable(GTK_WINDOW(w->win), TRUE); gtk_widget_realize(w->win); g_signal_connect(G_OBJECT(w->win), "map-event", G_CALLBACK(map_event_cb), w); - g_signal_connect(G_OBJECT(w->win), "delete-event", G_CALLBACK(window_quit), w); + g_signal_connect(G_OBJECT(w->win), "delete-event", G_CALLBACK(window_delete_event_cb), w); w->area = gtk_drawing_area_new(); gtk_widget_set_events(w->area, 0); @@ -1687,7 +1697,8 @@ main(int argc, char **argv) sockets_init(li); handle_event_libinput(NULL, 0, li); - gtk_main(); + w.event_loop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(w.event_loop); window_cleanup(&w); libinput_unref(li); -- cgit v1.2.1