diff options
author | Marc Deslauriers <[email protected]> | 2025-01-30 09:14:01 -0500 |
---|---|---|
committer | Luke from DC <[email protected]> | 2025-02-11 03:26:58 +0000 |
commit | 727e610a808e9490ca007cd9a5551f76f48d2329 (patch) | |
tree | c86c53630a3a26c149d9e949aa3faf517a7c3211 | |
parent | 75032aef04ba5326d29c7b594abe1d51491c376e (diff) | |
download | pluma-727e610a808e9490ca007cd9a5551f76f48d2329.tar.bz2 pluma-727e610a808e9490ca007cd9a5551f76f48d2329.tar.xz |
It is expected when maximizing a window, that the unmaximized
size should be remembered, and restored again when the window
is unmaximized.
The current behaviour was saving the maximized size, in addition
to the maximized state, which is unexpected.
In addition, there is no reason to hardcode a default size, as
the schema contains a default size.
-rw-r--r-- | pluma/pluma-app.c | 15 | ||||
-rw-r--r-- | pluma/pluma-window.c | 33 | ||||
-rw-r--r-- | pluma/pluma-window.h | 3 |
3 files changed, 12 insertions, 39 deletions
diff --git a/pluma/pluma-app.c b/pluma/pluma-app.c index 53de32e1..5060ec97 100644 --- a/pluma/pluma-app.c +++ b/pluma/pluma-app.c @@ -552,23 +552,18 @@ pluma_app_create_window_real (PlumaApp *app, GdkWindowState state; gint w, h; + g_settings_get (app->priv->window_settings, + PLUMA_SETTINGS_WINDOW_SIZE, + "(ii)", &w, &h); + gtk_window_set_default_size (GTK_WINDOW (window), w, h); + state = g_settings_get_int (app->priv->window_settings, PLUMA_SETTINGS_WINDOW_STATE); if ((state & GDK_WINDOW_STATE_MAXIMIZED) != 0) - { - _pluma_window_get_default_size (&w, &h); - gtk_window_set_default_size (GTK_WINDOW (window), w, h); gtk_window_maximize (GTK_WINDOW (window)); - } else - { - g_settings_get (app->priv->window_settings, - PLUMA_SETTINGS_WINDOW_SIZE, - "(ii)", &w, &h); - gtk_window_set_default_size (GTK_WINDOW (window), w, h); gtk_window_unmaximize (GTK_WINDOW (window)); - } if ((state & GDK_WINDOW_STATE_STICKY ) != 0) gtk_window_stick (GTK_WINDOW (window)); diff --git a/pluma/pluma-window.c b/pluma/pluma-window.c index a613beb0..f141ccb9 100644 --- a/pluma/pluma-window.c +++ b/pluma/pluma-window.c @@ -68,9 +68,6 @@ #define LANGUAGE_DATA "PlumaWindowLanguageData" #define FULLSCREEN_ANIMATION_SPEED 4 -#define PLUMA_WINDOW_DEFAULT_WIDTH 650 -#define PLUMA_WINDOW_DEFAULT_HEIGHT 500 - /* Local variables */ static gboolean cansave = TRUE; @@ -130,8 +127,9 @@ save_panes_state (PlumaWindow *window) pluma_debug (DEBUG_WINDOW); - g_settings_set (window->priv->editor_settings, PLUMA_SETTINGS_WINDOW_SIZE, - "(ii)", window->priv->width, window->priv->height); + if ((window->priv->window_state & GDK_WINDOW_STATE_MAXIMIZED) == 0) + g_settings_set (window->priv->editor_settings, PLUMA_SETTINGS_WINDOW_SIZE, + "(ii)", window->priv->width, window->priv->height); g_settings_set_int (window->priv->editor_settings, PLUMA_SETTINGS_WINDOW_STATE, window->priv->window_state); @@ -2076,22 +2074,14 @@ clone_window (PlumaWindow *origin) screen = gtk_window_get_screen (GTK_WINDOW (origin)); window = pluma_app_create_window (app, screen); - if ((origin->priv->window_state & GDK_WINDOW_STATE_MAXIMIZED) != 0) - { - gint w, h; + gtk_window_set_default_size (GTK_WINDOW (window), + origin->priv->width, + origin->priv->height); - _pluma_window_get_default_size (&w, &h); - gtk_window_set_default_size (GTK_WINDOW (window), w, h); + if ((origin->priv->window_state & GDK_WINDOW_STATE_MAXIMIZED) != 0) gtk_window_maximize (GTK_WINDOW (window)); - } else - { - gtk_window_set_default_size (GTK_WINDOW (window), - origin->priv->width, - origin->priv->height); - gtk_window_unmaximize (GTK_WINDOW (window)); - } if ((origin->priv->window_state & GDK_WINDOW_STATE_STICKY ) != 0) gtk_window_stick (GTK_WINDOW (window)); @@ -4803,12 +4793,3 @@ pluma_window_get_message_bus (PlumaWindow *window) return window->priv->message_bus; } -void -_pluma_window_get_default_size (gint *width, gint *height) -{ - g_return_if_fail (width != NULL && height != NULL); - - *width = PLUMA_WINDOW_DEFAULT_WIDTH; - *height = PLUMA_WINDOW_DEFAULT_HEIGHT; -} - diff --git a/pluma/pluma-window.h b/pluma/pluma-window.h index 55479d0a..c7133c5f 100644 --- a/pluma/pluma-window.h +++ b/pluma/pluma-window.h @@ -188,9 +188,6 @@ void _pluma_recent_add (PlumaWindow *window, void _pluma_recent_remove (PlumaWindow *window, const gchar *uri); -void _pluma_window_get_default_size (gint *width, - gint *height); - G_END_DECLS #endif /* __PLUMA_WINDOW_H__ */ |