diff options
author | Matthias Clasen <mclasen@redhat.com> | 2020-02-09 22:24:47 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2020-02-09 23:12:32 -0500 |
commit | a6c54669007f3932d6e2813e618bb106579fd28f (patch) | |
tree | 13835ffeb8a11f13a6fc142023050a6bac0f9354 /tests/testheaderbar.c | |
parent | c78971165215ca749af68c3f6f16fb7eca08e142 (diff) | |
download | gtk+-a6c54669007f3932d6e2813e618bb106579fd28f.tar.gz |
Stop using gtk_main and gtk_main_quit
Replace these calls with direct use of GMainContext api.
Diffstat (limited to 'tests/testheaderbar.c')
-rw-r--r-- | tests/testheaderbar.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/tests/testheaderbar.c b/tests/testheaderbar.c index 51f5a97a13..d366ab1766 100644 --- a/tests/testheaderbar.c +++ b/tests/testheaderbar.c @@ -70,6 +70,19 @@ toggle_fullscreen (GtkButton *button, gpointer data) } } +static gboolean done = FALSE; + +static void +quit_cb (GtkWidget *widget, + gpointer data) +{ + gboolean *done = data; + + *done = TRUE; + + g_main_context_wakeup (NULL); +} + static void change_header (GtkButton *button, gpointer data) { @@ -100,7 +113,7 @@ change_header (GtkButton *button, gpointer data) widget = gtk_button_new_with_label ("_Close"); gtk_button_set_use_underline (GTK_BUTTON (widget), TRUE); gtk_style_context_add_class (gtk_widget_get_style_context (widget), "suggested-action"); - g_signal_connect (widget, "clicked", G_CALLBACK (gtk_main_quit), NULL); + g_signal_connect (widget, "clicked", G_CALLBACK (quit_cb), &done); gtk_header_bar_pack_end (GTK_HEADER_BAR (header), widget); @@ -142,7 +155,6 @@ main (int argc, char *argv[]) box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_container_add (GTK_CONTAINER (window), box); - content = gtk_image_new_from_icon_name ("start-here-symbolic"); gtk_image_set_pixel_size (GTK_IMAGE (content), 512); @@ -162,7 +174,8 @@ main (int argc, char *argv[]) gtk_container_add (GTK_CONTAINER (box), footer); gtk_widget_show (window); - gtk_main (); + while (!done) + g_main_context_iteration (NULL, TRUE); gtk_widget_destroy (window); |