diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-01-15 18:48:15 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-01-18 19:04:00 +0800 |
commit | efcf558673f83faf9621fe644ea1c20c78756d9f (patch) | |
tree | e1112450b663d35d2147d0f1610d3845cf2217ee | |
parent | e7dc37cd2c4be8c8ab892bfcebf57249c4a15460 (diff) | |
download | gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar.gz gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar.bz2 gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar.lz gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar.xz gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.tar.zst gsoc2013-empathy-efcf558673f83faf9621fe644ea1c20c78756d9f.zip |
update treeview when account's status is changed
-rw-r--r-- | src/empathy-accounts-dialog.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/empathy-accounts-dialog.c b/src/empathy-accounts-dialog.c index 15e6796e5..984604223 100644 --- a/src/empathy-accounts-dialog.c +++ b/src/empathy-accounts-dialog.c @@ -1471,6 +1471,25 @@ accounts_dialog_connection_changed_cb (TpAccount *account, } static void +update_account_in_treeview (EmpathyAccountsDialog *self, + TpAccount *account) +{ + EmpathyAccountsDialogPriv *priv = GET_PRIV (self); + GtkTreeIter iter; + GtkTreeModel *model; + + model = gtk_tree_view_get_model (GTK_TREE_VIEW (priv->treeview)); + if (accounts_dialog_get_account_iter (self, account, &iter)) + { + GtkTreePath *path; + + path = gtk_tree_model_get_path (model, &iter); + gtk_tree_model_row_changed (model, path, &iter); + gtk_tree_path_free (path); + } +} + +static void accounts_dialog_presence_changed_cb (TpAccount *account, guint presence, gchar *status, @@ -1479,6 +1498,8 @@ accounts_dialog_presence_changed_cb (TpAccount *account, { /* Update the status-infobar in the details view */ accounts_dialog_update_status_infobar (dialog, account); + + update_account_in_treeview (dialog, account); } static void |