From 38d45d254923dc14068f43eccac1f1d24c032ded Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrico=20Tr=C3=B6ger?= Date: Mon, 4 Jun 2007 15:37:11 +0000 Subject: [PATCH] Removed unneeded function destroyapp. Re-maximize the main window on startup when closed in maximized state (closes #1730369). git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1598 ea778897-0a13-0410-b9d1-a72fbfd435f5 --- ChangeLog | 5 +++++ src/callbacks.c | 10 +--------- src/callbacks.h | 3 --- src/keyfile.c | 9 ++++++++- src/main.c | 6 +++++- 5 files changed, 19 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0444ecfa0..8d205b2f7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,11 @@ * po/POTFILES.in: Add navqueue.c. * po/intl_stats.sh: Add revision time to the output. + * src/callbacks.c, src/callbacks.h: + Removed unneeded function destroyapp. + * src/keyfile.c, src/main.c: + Re-maximize the main window on startup when closed in maximized state + (closes #1730369). 2007-06-04 Enrico Tröger diff --git a/src/callbacks.c b/src/callbacks.c index 747ca55cd..4e2ef7af0 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -87,14 +87,6 @@ static gboolean insert_callback_from_menu = FALSE; CallbacksData callbacks_data = {-1}; -// real exit function -gint destroyapp(GtkWidget *widget, gpointer gdata) -{ - main_quit(); - return (FALSE); -} - - static gboolean check_no_unsaved() { guint i; @@ -157,7 +149,7 @@ static void quit_app() } on_close_all1_activate(NULL, NULL); - destroyapp(NULL, NULL); + main_quit(); } diff --git a/src/callbacks.h b/src/callbacks.h index a351f07e8..0d43f93ad 100644 --- a/src/callbacks.h +++ b/src/callbacks.h @@ -29,9 +29,6 @@ typedef struct extern CallbacksData callbacks_data; -gint -destroyapp (GtkWidget *widget, gpointer gdata); - gboolean on_exit_clicked (GtkWidget *widget, gpointer gdata); diff --git a/src/keyfile.c b/src/keyfile.c index fb670ce37..d90a28f74 100644 --- a/src/keyfile.c +++ b/src/keyfile.c @@ -237,7 +237,14 @@ void configuration_save() if (app->pref_main_save_winpos && ! app->fullscreen) { gtk_window_get_position(GTK_WINDOW(app->window), &app->geometry[0], &app->geometry[1]); - gtk_window_get_size(GTK_WINDOW(app->window), &app->geometry[2], &app->geometry[3]); + if (gdk_window_get_state(app->window->window) & GDK_WINDOW_STATE_MAXIMIZED) + { // use -1 for width and height if the window is maximized + app->geometry[2] = -1; + app->geometry[3] = -1; + } + else + gtk_window_get_size(GTK_WINDOW(app->window), &app->geometry[2], &app->geometry[3]); + g_key_file_set_integer_list(config, PACKAGE, "geometry", app->geometry, 4); } g_key_file_set_integer(config, PACKAGE, "pref_editor_tab_width", editor_prefs.tab_width); diff --git a/src/main.c b/src/main.c index 582611f9e..008f884fe 100644 --- a/src/main.c +++ b/src/main.c @@ -205,7 +205,11 @@ static void apply_settings(void) if (app->pref_main_save_winpos && app->geometry[0] != -1) { gtk_window_move(GTK_WINDOW(app->window), app->geometry[0], app->geometry[1]); - gtk_window_set_default_size(GTK_WINDOW(app->window), app->geometry[2], app->geometry[3]); + if (app->geometry[2] == -1 && app->geometry[3] == -1) + gtk_window_maximize(GTK_WINDOW(app->window)); + else + gtk_window_set_default_size(GTK_WINDOW(app->window), app->geometry[2], app->geometry[3]); + } // hide statusbar if desired