/* * Test case showing how gtkmozembed widgets that never 'realize' cause * crashes on exit. * * - Steven Brown */ #include "gtkmozembed.h" #include static void destroy(GtkWidget *widget, gpointer data) { gtk_main_quit (); } int main(int argc, char **argv) { gtk_init(&argc, &argv); GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget *vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(window), vbox); GtkWidget *browser = gtk_moz_embed_new(); gtk_box_pack_start(GTK_BOX(vbox), browser, TRUE, TRUE, 0); gtk_widget_set_usize(browser, 320, 240); g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(destroy), NULL); // If the widget never gets shown, Init() is never called, but when we exit, // Destroy() was being called, anyway. //gtk_widget_show(browser); gtk_widget_show(vbox); gtk_widget_show(window); gtk_main(); }