aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/empathy-new-chatroom-dialog.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/empathy-new-chatroom-dialog.c b/src/empathy-new-chatroom-dialog.c
index 837d9acfe..67f870fbc 100644
--- a/src/empathy-new-chatroom-dialog.c
+++ b/src/empathy-new-chatroom-dialog.c
@@ -75,6 +75,7 @@ enum {
COL_NAME,
COL_ROOM,
COL_MEMBERS,
+ COL_MEMBERS_INT,
COL_TOOLTIP,
COL_COUNT
};
@@ -253,6 +254,7 @@ new_chatroom_dialog_model_setup (EmpathyNewChatroomDialog *dialog)
G_TYPE_STRING, /* Name */
G_TYPE_STRING, /* Room */
G_TYPE_STRING, /* Member count */
+ G_TYPE_INT, /* Member count int */
G_TYPE_STRING); /* Tool tip */
dialog->model = GTK_TREE_MODEL (store);
@@ -295,12 +297,16 @@ new_chatroom_dialog_model_add_columns (EmpathyNewChatroomDialog *dialog)
cell,
"stock-id", COL_INVITE_ONLY,
NULL);
+
+ gtk_tree_view_column_set_sort_column_id (column, COL_INVITE_ONLY);
gtk_tree_view_append_column (view, column);
column = gtk_tree_view_column_new_with_attributes (NULL,
cell,
"stock-id", COL_NEED_PASSWORD,
NULL);
+
+ gtk_tree_view_column_set_sort_column_id (column, COL_NEED_PASSWORD);
gtk_tree_view_append_column (view, column);
cell = gtk_cell_renderer_text_new ();
@@ -315,6 +321,7 @@ new_chatroom_dialog_model_add_columns (EmpathyNewChatroomDialog *dialog)
"text", COL_NAME,
NULL);
+ gtk_tree_view_column_set_sort_column_id (column, COL_NAME);
gtk_tree_view_column_set_expand (column, TRUE);
gtk_tree_view_append_column (view, column);
@@ -329,6 +336,8 @@ new_chatroom_dialog_model_add_columns (EmpathyNewChatroomDialog *dialog)
cell,
"text", COL_MEMBERS,
NULL);
+
+ gtk_tree_view_column_set_sort_column_id (column, COL_MEMBERS_INT);
gtk_tree_view_append_column (view, column);
}
@@ -379,6 +388,7 @@ new_chatroom_dialog_account_changed_cb (GtkComboBox *combobox,
EmpathyAccountChooser *account_chooser;
McAccount *account;
gboolean listing = FALSE;
+ gboolean expanded = FALSE;
if (dialog->room_list) {
g_object_unref (dialog->room_list);
@@ -402,6 +412,11 @@ new_chatroom_dialog_account_changed_cb (GtkComboBox *combobox,
G_CALLBACK (new_chatroom_dialog_listing_cb),
dialog);
+ expanded = gtk_expander_get_expanded (GTK_EXPANDER (dialog->expander_browse));
+ if (expanded) {
+ new_chatroom_dialog_browse_start (dialog);
+ }
+
listing = empathy_tp_roomlist_is_listing (dialog->room_list);
if (listing) {
ephy_spinner_start (EPHY_SPINNER (dialog->throbber));
@@ -463,6 +478,7 @@ new_chatroom_dialog_new_room_cb (EmpathyTpRoomlist *room_list,
COL_NAME, empathy_chatroom_get_name (chatroom),
COL_ROOM, empathy_chatroom_get_room (chatroom),
COL_MEMBERS, members,
+ COL_MEMBERS_INT, empathy_chatroom_get_members_count (chatroom),
COL_TOOLTIP, tooltip,
-1);