From 72785d7ab576618ccc2847b8d51d1f4c9ff19241 Mon Sep 17 00:00:00 2001 From: Chandni Verma Date: Sun, 8 May 2011 00:44:43 +0530 Subject: Save changes to chatrooms.xml configuration file only when needed. Changes will be written to the file only when changes are made to a chatroom property that is listed in the file. Fixes room-list flicker: https://bugzilla.gnome.org/show_bug.cgi?id=642087 --- libempathy/empathy-chatroom-manager.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'libempathy') diff --git a/libempathy/empathy-chatroom-manager.c b/libempathy/empathy-chatroom-manager.c index 9ad75ee03..7872bbb19 100644 --- a/libempathy/empathy-chatroom-manager.c +++ b/libempathy/empathy-chatroom-manager.c @@ -192,7 +192,16 @@ add_chatroom (EmpathyChatroomManager *self, priv->chatrooms = g_list_prepend (priv->chatrooms, g_object_ref (chatroom)); - g_signal_connect (chatroom, "notify", + /* Watch only those properties which are exported in the save file */ + g_signal_connect (chatroom, "notify::name", + G_CALLBACK (chatroom_changed_cb), self); + g_signal_connect (chatroom, "notify::room", + G_CALLBACK (chatroom_changed_cb), self); + g_signal_connect (chatroom, "notify::account", + G_CALLBACK (chatroom_changed_cb), self); + g_signal_connect (chatroom, "notify::auto-connect", + G_CALLBACK (chatroom_changed_cb), self); + g_signal_connect (chatroom, "notify::always_urgent", G_CALLBACK (chatroom_changed_cb), self); } -- cgit v1.2.3