diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-04 23:40:15 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-16 19:48:42 +0800 |
commit | 404871f95d42c41f01af2fdff862a877e624675b (patch) | |
tree | d796c0f78a396769cb5b177c91de7dc7838ec0f2 /src/empathy-accounts-dialog.c | |
parent | 6ea60bb165253f1355d9fbfa1a5a010fb79c2c06 (diff) | |
download | gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar.gz gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar.bz2 gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar.lz gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar.xz gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.tar.zst gsoc2013-empathy-404871f95d42c41f01af2fdff862a877e624675b.zip |
accounts-dialog: only update the row which have actually been changed; may fix #636189
Diffstat (limited to 'src/empathy-accounts-dialog.c')
-rw-r--r-- | src/empathy-accounts-dialog.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/empathy-accounts-dialog.c b/src/empathy-accounts-dialog.c index 919ba3f03..79c4369de 100644 --- a/src/empathy-accounts-dialog.c +++ b/src/empathy-accounts-dialog.c @@ -987,8 +987,22 @@ accounts_dialog_row_changed_foreach (GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { - gtk_tree_model_row_changed (model, path, iter); + TpAccount *account; + + gtk_tree_model_get (model, iter, COL_ACCOUNT, &account, -1); + + if (account == NULL) + return FALSE; + if (tp_account_get_connection_status (account, NULL) == + TP_CONNECTION_STATUS_CONNECTING) + { + /* Only update the row where we have a connecting account as that's the + * ones having a blinking icon. */ + gtk_tree_model_row_changed (model, path, iter); + } + + g_object_unref (account); return FALSE; } |