[empathy] remember the chat window's paned width (#586290)
- From: Guillaume Desmottes <gdesmott src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [empathy] remember the chat window's paned width (#586290)
- Date: Tue, 8 Dec 2009 10:15:36 +0000 (UTC)
commit 9a2a6a34682af3eb6ff1741e45a0c1b5cd4d386f
Author: ranjiao <ranjiao gmail com>
Date: Tue Dec 8 09:29:25 2009 +0800
remember the chat window's paned width (#586290)
libempathy-gtk/empathy-chat.c | 24 ++++++++++++++++++++++++
libempathy-gtk/empathy-conf.h | 1 +
2 files changed, 25 insertions(+), 0 deletions(-)
---
diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c
index e942f21..e627a5e 100644
--- a/libempathy-gtk/empathy-chat.c
+++ b/libempathy-gtk/empathy-chat.c
@@ -1994,6 +1994,18 @@ chat_destroy_cb (EmpathyTpChat *tp_chat,
chat_update_contacts_visibility (chat, FALSE);
}
+static gboolean
+chat_hpaned_pos_changed_cb (GtkWidget* hpaned, gpointer user_data)
+{
+ gint hpaned_pos;
+ hpaned_pos = gtk_paned_get_position (GTK_PANED(hpaned));
+ empathy_conf_set_int (empathy_conf_get (),
+ EMPATHY_PREFS_UI_CHAT_WINDOW_PANED_POS,
+ hpaned_pos);
+ return TRUE;
+}
+
+
static void
show_pending_messages (EmpathyChat *chat) {
EmpathyChatPriv *priv = GET_PRIV (chat);
@@ -2019,6 +2031,7 @@ chat_create_ui (EmpathyChat *chat)
GList *list = NULL;
gchar *filename;
GtkTextBuffer *buffer;
+ gint paned_pos;
filename = empathy_file_lookup ("empathy-chat.ui",
"libempathy-gtk");
@@ -2085,6 +2098,17 @@ chat_create_ui (EmpathyChat *chat)
/* Initialy hide the topic, will be shown if not empty */
gtk_widget_hide (priv->hbox_topic);
+ g_signal_connect (priv->hpaned, "notify::position",
+ G_CALLBACK (chat_hpaned_pos_changed_cb),
+ NULL);
+
+ /* Load the paned position */
+ if (empathy_conf_get_int (empathy_conf_get (),
+ EMPATHY_PREFS_UI_CHAT_WINDOW_PANED_POS,
+ &paned_pos)
+ && paned_pos)
+ gtk_paned_set_position (GTK_PANED(priv->hpaned), paned_pos);
+
/* Set widget focus order */
list = g_list_append (NULL, priv->scrolled_window_input);
gtk_container_set_focus_chain (GTK_CONTAINER (priv->vbox_left), list);
diff --git a/libempathy-gtk/empathy-conf.h b/libempathy-gtk/empathy-conf.h
index d8e34f6..8d0066d 100644
--- a/libempathy-gtk/empathy-conf.h
+++ b/libempathy-gtk/empathy-conf.h
@@ -74,6 +74,7 @@ struct _EmpathyConfClass {
#define EMPATHY_PREFS_UI_AVATAR_DIRECTORY EMPATHY_PREFS_PATH "/ui/avatar_directory"
#define EMPATHY_PREFS_UI_SHOW_AVATARS EMPATHY_PREFS_PATH "/ui/show_avatars"
#define EMPATHY_PREFS_UI_COMPACT_CONTACT_LIST EMPATHY_PREFS_PATH "/ui/compact_contact_list"
+#define EMPATHY_PREFS_UI_CHAT_WINDOW_PANED_POS EMPATHY_PREFS_PATH "/ui/chat_window_paned_pos"
#define EMPATHY_PREFS_CONTACTS_SHOW_OFFLINE EMPATHY_PREFS_PATH "/contacts/show_offline"
#define EMPATHY_PREFS_CONTACTS_SORT_CRITERIUM EMPATHY_PREFS_PATH "/contacts/sort_criterium"
#define EMPATHY_PREFS_HINTS_CLOSE_MAIN_WINDOW EMPATHY_PREFS_PATH "/hints/close_main_window"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]