summaryrefslogtreecommitdiff
path: root/src/trg-torrent-model.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2012-01-02 00:04:22 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2012-01-02 00:04:22 +0000
commit94e9936deac2818db70d77a70d809fe16234e05e (patch)
treec0156aa9e87fb62a08f702d5121bbbaca3e97f58 /src/trg-torrent-model.c
parent6b84bc3968c7b09a7eb180a5c73d4cf3f646d759 (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.c23
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);
}