diff options
author | Alan Fitton <ajf@eth0.org.uk> | 2012-01-02 00:04:22 +0000 |
---|---|---|
committer | Alan Fitton <ajf@eth0.org.uk> | 2012-01-02 00:04:22 +0000 |
commit | 94e9936deac2818db70d77a70d809fe16234e05e (patch) | |
tree | c0156aa9e87fb62a08f702d5121bbbaca3e97f58 /src/trg-torrent-model.c | |
parent | 6b84bc3968c7b09a7eb180a5c73d4cf3f646d759 (diff) |
contributed patch to change two Kbps to the correct KB/s. also have another go at the more efficient filter refreshes.
Diffstat (limited to 'src/trg-torrent-model.c')
-rw-r--r-- | src/trg-torrent-model.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/trg-torrent-model.c b/src/trg-torrent-model.c index e46b876..ace6bae 100644 --- a/src/trg-torrent-model.c +++ b/src/trg-torrent-model.c @@ -249,6 +249,8 @@ static gboolean trg_torrent_model_reload_dir_aliases_foreachfunc( void trg_torrent_model_reload_dir_aliases(TrgClient * tc, GtkTreeModel * model) { gtk_tree_model_foreach(model, trg_torrent_model_reload_dir_aliases_foreachfunc, tc); + g_signal_emit(model, signals[TMODEL_STATE_CHANGED], 0, + TORRENT_UPDATE_PATH_CHANGE); } static gboolean trg_torrent_model_stats_scan_foreachfunc(GtkTreeModel * model, @@ -274,23 +276,25 @@ static gboolean trg_torrent_model_stats_scan_foreachfunc(GtkTreeModel * model, stats->error++; if (flags & TORRENT_FLAG_COMPLETE - ) + ) stats->complete++; else stats->incomplete++; if (flags & TORRENT_FLAG_CHECKING - ) + ) stats->checking++; if (flags & TORRENT_FLAG_ACTIVE - ) + ) stats->active++; - if (flags & TORRENT_FLAG_SEEDING_WAIT) + if (flags & TORRENT_FLAG_SEEDING_WAIT + ) stats->seed_wait++; - if (flags & TORRENT_FLAG_DOWNLOADING_WAIT) + if (flags & TORRENT_FLAG_DOWNLOADING_WAIT + ) stats->down_wait++; stats->count++; @@ -720,9 +724,12 @@ trg_torrent_model_update_stats *trg_torrent_model_update( } if (whatsChanged != 0) { - trg_torrent_model_stat_counts_clear(&priv->stats); - gtk_tree_model_foreach(GTK_TREE_MODEL(model), - trg_torrent_model_stats_scan_foreachfunc, &(priv->stats)); + if ((whatsChanged & TORRENT_UPDATE_ADDREMOVE) + || (whatsChanged & TORRENT_UPDATE_STATE_CHANGE)) { + trg_torrent_model_stat_counts_clear(&priv->stats); + gtk_tree_model_foreach(GTK_TREE_MODEL(model), + trg_torrent_model_stats_scan_foreachfunc, &(priv->stats)); + } g_signal_emit(model, signals[TMODEL_STATE_CHANGED], 0, whatsChanged); } |