GtkApplication *application; GtkWindow *window; GtkWidget *dialog; GError *error = NULL; application = GTK_APPLICATION (user_data); window = gtk_application_get_active_window (application); gtk_show_uri (window ? gtk_window_get_screen (GTK_WINDOW (window)) : gdk_screen_get_default (), "help:boilerplate-for-c-gtk3", gtk_get_current_event_time (), &error); if (error) { dialog = gtk_message_dialog_new (window ? GTK_WINDOW (window) : NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, _("There was an error displaying help: \n%s"), error->message); g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (gtk_widget_destroy), NULL); gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE); gtk_widget_show (dialog); g_error_free (error); }