From 3050e6d36dfe605418dc67e50903395f1cb051bd Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Tue, 22 Apr 2008 15:13:23 +0000 Subject: ** Fixes bug #494171 2008-04-22 Matthew Barnes ** Fixes bug #494171 * mail/mail-send-recv.c (build_dialog): Make the "Send & Receive Mail" window dimensions persistent. * mail/evolution-mail.schemas.in: Add keys for storing "Send & Receive Mail" window dimensions: /apps/evolution/mail/send_recv_height /apps/evolution/mail/send_recv_maximized /apps/evolution/mail/send_recv_width Note the "maximized" key is required by GConfBridge but is not actually used since the window cannot be maximized. svn path=/trunk/; revision=35400 --- mail/ChangeLog | 15 +++++++++++++ mail/evolution-mail.schemas.in | 49 ++++++++++++++++++++++++++++++++++++++++++ mail/mail-send-recv.c | 9 +++++++- 3 files changed, 72 insertions(+), 1 deletion(-) diff --git a/mail/ChangeLog b/mail/ChangeLog index 19d902e9ee..553559546a 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,18 @@ +2008-04-22 Matthew Barnes + + ** Fixes bug #494171 + + * mail-send-recv.c (build_dialog): + Make the "Send & Receive Mail" window dimensions persistent. + + * evolution-mail.schemas.in: + Add keys for storing "Send & Receive Mail" window dimensions: + /apps/evolution/mail/send_recv_height + /apps/evolution/mail/send_recv_maximized + /apps/evolution/mail/send_recv_width + Note the "maximized" key is required by GConfBridge but is not + actually used since the window cannot be maximized. + 2008-04-22 Matthew Barnes * em-composer-prefs.c: diff --git a/mail/evolution-mail.schemas.in b/mail/evolution-mail.schemas.in index 8259f67c64..7e3234f76c 100644 --- a/mail/evolution-mail.schemas.in +++ b/mail/evolution-mail.schemas.in @@ -1268,5 +1268,54 @@ + + + + /schemas/apps/evolution/mail/send_recv_height + /apps/evolution/mail/send_recv_height + evolution-mail + int + 200 + + "Send and Receive Mail" window height + + Initial height of the "Send and Receive Mail" window. + The value updates as the user resizes the window vertically. + + + + + + /schemas/apps/evolution/mail/send_recv_maximized + /apps/evolution/mail/send_recv_maximized + evolution-mail + bool + + "Send and Receive Mail" window maximize state + + Initial maximize state of the "Send and Receive Mail" window. + The value updates when the user maximizes or unmaximizes the + window. Note, this particular value is not used by Evolution + since the "Send and Receive Mail" window cannot be maximized. + This key exists only as an implementation detail. + + + + + + /schemas/apps/evolution/mail/send_recv_width + /apps/evolution/mail/send_recv_width + evolution-mail + int + 600 + + "Send and Receive Mail" window width + + Initial width of the "Send and Receive Mail" window. + The value updates as the user resizes the window horizontally. + + + + diff --git a/mail/mail-send-recv.c b/mail/mail-send-recv.c index 3b922c549b..199a85baa7 100644 --- a/mail/mail-send-recv.c +++ b/mail/mail-send-recv.c @@ -59,6 +59,7 @@ #include "mail-folder-cache.h" #include "em-event.h" #include +#include #define d(x) @@ -68,6 +69,9 @@ /* pseudo-uri to key the send task on */ #define SEND_URI_KEY "send-task:" +/* Prefix for window size GConf keys */ +#define GCONF_KEY_PREFIX "/apps/evolution/mail/send_recv" + /* send/receive email */ /* ********************************************************************** */ @@ -393,6 +397,10 @@ build_dialog (EAccountList *accounts, CamelFolder *outbox, const char *destinati gd = (GtkDialog *)(send_recv_dialog = gtk_dialog_new_with_buttons(_("Send & Receive Mail"), NULL, GTK_DIALOG_NO_SEPARATOR, NULL)); gtk_window_set_modal ((GtkWindow *) gd, FALSE); + gconf_bridge_bind_window_size ( + gconf_bridge_get (), GCONF_KEY_PREFIX, + GTK_WINDOW (send_recv_dialog)); + gtk_widget_ensure_style ((GtkWidget *)gd); gtk_container_set_border_width ((GtkContainer *)gd->vbox, 0); gtk_container_set_border_width ((GtkContainer *)gd->action_area, 6); @@ -442,7 +450,6 @@ build_dialog (EAccountList *accounts, CamelFolder *outbox, const char *destinati GTK_SCROLLED_WINDOW (scrolled_window), table); gtk_box_pack_start ( GTK_BOX (gd->vbox), scrolled_window, TRUE, TRUE, 0); - gtk_widget_set_size_request (gd->vbox, 600, 200); gtk_widget_show (scrolled_window); /* must bet setup after send_recv_dialog as it may re-trigger send-recv button */ -- cgit v1.2.3