gui/ocarina: Deinitialize gui with the GtkApplication "shutdown" signal

Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
This commit is contained in:
Anna Schumaker 2016-02-26 10:33:59 -05:00
parent d0179a9bfa
commit fff2da5439
1 changed files with 7 additions and 11 deletions

View File

@ -76,26 +76,22 @@ static void __ocarina_startup(GApplication *application, gpointer data)
static void __ocarina_shutdown(GApplication *application, gpointer data)
{
idle_cancel();
core_deinit();
gui_window_deinit();
gui_settings_deinit();
gui_builder_deinit();
}
int main(int argc, char **argv)
{
GtkApplication *ocarina;
int ret;
GtkApplication *ocarina = gtk_application_new(OCARINA_NAME, OCARINA_FLAGS);
startup_argc = argc;
startup_argv = argv;
ocarina = gtk_application_new(OCARINA_NAME, OCARINA_FLAGS);
g_signal_connect(G_APPLICATION(ocarina), "activate", (GCallback)__ocarina_activate, NULL);
g_signal_connect(G_APPLICATION(ocarina), "startup", (GCallback)__ocarina_startup, NULL);
g_signal_connect(G_APPLICATION(ocarina), "shutdown", (GCallback)__ocarina_shutdown, NULL);
ret = g_application_run(G_APPLICATION(ocarina), argc, argv);
core_deinit();
gui_window_deinit();
gui_settings_deinit();
gui_builder_deinit();
return ret;
return g_application_run(G_APPLICATION(ocarina), argc, argv);
}