Revision: 862 http://svn.sourceforge.net/geany/?rev=862&view=rev Author: eht16 Date: 2006-10-03 04:21:36 -0700 (Tue, 03 Oct 2006)
Log Message: ----------- Save configuration(i.e. list of open files) as late as possible and save the filetype build commands first shortly before quitting.
Modified Paths: -------------- trunk/ChangeLog trunk/src/callbacks.c
Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2006-10-02 15:22:29 UTC (rev 861) +++ trunk/ChangeLog 2006-10-03 11:21:36 UTC (rev 862) @@ -1,3 +1,10 @@ +2006-10-03 Enrico Tröger enrico.troeger@uvena.de + + * src/callbacks.c: Save configuration(i.e. list of open files) as late + as possible and save the filetype build commands + first shortly before quitting. + + 2006-10-02 Nick Treleaven nick.treleaven@btinternet.com
* src/templates.c:
Modified: trunk/src/callbacks.c =================================================================== --- trunk/src/callbacks.c 2006-10-02 15:22:29 UTC (rev 861) +++ trunk/src/callbacks.c 2006-10-03 11:21:36 UTC (rev 862) @@ -87,6 +87,7 @@ #endif
keybindings_free(); + filetypes_save_commands(); filetypes_free_types(); styleset_free_styles(); templates_free_templates(); @@ -162,10 +163,6 @@ { app->quitting = TRUE;
- // TODO: only save config if definitely quitting - configuration_save(); - filetypes_save_commands(); - if (gtk_notebook_get_n_pages(GTK_NOTEBOOK(app->notebook)) > 0) { gint i; @@ -181,21 +178,36 @@ } if (has_dirty_editors) { - if (on_close_all1_activate(NULL, NULL)) destroyapp(NULL, gdata); + // there is the chance that the user cancel the exit process while closing open + // files, so save the configuration(i.e. the list of open files) first + configuration_save(); + if (on_close_all1_activate(NULL, NULL)) + { + destroyapp(NULL, gdata); + } else app->quitting = FALSE; } else { if (app->pref_main_confirm_exit) { + // there is the chance that the user cancel the exit process while closing open + // files, so save the configuration(i.e. the list of open files) first + configuration_save(); if (dialogs_show_question_full(GTK_STOCK_QUIT, GTK_STOCK_CANCEL, NULL, _("Do you really want to quit?")) && on_close_all1_activate(NULL, NULL)) + { destroyapp(NULL, gdata); + } else app->quitting = FALSE; } else { - if (on_close_all1_activate(NULL, NULL)) destroyapp(NULL, gdata); + if (on_close_all1_activate(NULL, NULL)) + { + configuration_save(); + destroyapp(NULL, gdata); + } else app->quitting = FALSE; } } @@ -206,11 +218,15 @@ { if (dialogs_show_question_full(GTK_STOCK_QUIT, GTK_STOCK_CANCEL, NULL, _("Do you really want to quit?"))) - destroyapp(NULL, gdata); + { + configuration_save(); + destroyapp(NULL, gdata); + } else app->quitting = FALSE; } else { + configuration_save(); destroyapp(NULL, gdata); } } @@ -2258,7 +2274,7 @@ filetype *ft = user_data;
g_return_if_fail(ft != NULL); - + if (response == GTK_RESPONSE_ACCEPT) { const gchar *newstr;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.