From de3dcd18a22c1522267df53f9b34a775289f7443 Mon Sep 17 00:00:00 2001 From: Alan Fitton Date: Fri, 16 Sep 2011 20:30:13 +0000 Subject: issue 85 --- src/trg-torrent-model.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'src/trg-torrent-model.c') diff --git a/src/trg-torrent-model.c b/src/trg-torrent-model.c index 39aa65d..4cd6cd0 100644 --- a/src/trg-torrent-model.c +++ b/src/trg-torrent-model.c @@ -58,7 +58,7 @@ static void trg_torrent_model_dispose(GObject * object) } static void -update_torrent_iter(TrgTorrentModel * model, gint64 rpcv, gint64 serial, +update_torrent_iter(TrgClient *tc, TrgTorrentModel * model, gint64 rpcv, GtkTreeIter * iter, JsonObject * t, trg_torrent_model_update_stats * stats); @@ -178,6 +178,7 @@ static void trg_torrent_model_init(TrgTorrentModel * self) column_types[TORRENT_COLUMN_PEERS_TO_US] = G_TYPE_INT64; column_types[TORRENT_COLUMN_TRACKERHOST] = G_TYPE_STRING; column_types[TORRENT_COLUMN_QUEUE_POSITION] = G_TYPE_INT64; + column_types[TORRENT_COLUMN_LASTACTIVE] = G_TYPE_INT64; gtk_list_store_set_column_types(GTK_LIST_STORE(self), TORRENT_COLUMN_COLUMNS, column_types); @@ -228,7 +229,7 @@ void trg_torrent_model_remove_all(TrgTorrentModel *model) } static void -update_torrent_iter(TrgTorrentModel * model, gint64 rpcv, gint64 serial, +update_torrent_iter(TrgClient *tc, TrgTorrentModel * model, gint64 rpcv, GtkTreeIter * iter, JsonObject * t, trg_torrent_model_update_stats * stats) { @@ -294,7 +295,7 @@ update_torrent_iter(TrgTorrentModel * model, gint64 rpcv, gint64 serial, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_ID, id, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_JSON, t, -1); - gtk_list_store_set(ls, iter, TORRENT_COLUMN_UPDATESERIAL, serial, -1); + gtk_list_store_set(ls, iter, TORRENT_COLUMN_UPDATESERIAL, trg_client_get_serial(tc), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_ADDED, torrent_get_added_date(t), -1); @@ -352,9 +353,13 @@ update_torrent_iter(TrgTorrentModel * model, gint64 rpcv, gint64 serial, TORRENT_COLUMN_ID, id, TORRENT_COLUMN_JSON, t, TORRENT_COLUMN_TRACKERHOST, firstTracker ? tracker_stats_get_host(firstTracker) : "", - TORRENT_COLUMN_UPDATESERIAL, serial, -1); + TORRENT_COLUMN_UPDATESERIAL, trg_client_get_serial(tc), -1); #endif + if (newFlags & TORRENT_FLAG_ACTIVE) + gtk_list_store_set(ls, iter, TORRENT_COLUMN_LASTACTIVE, + trg_client_get_last_update_unix_time(tc), -1); + if (lastJson) json_object_unref(lastJson); @@ -477,7 +482,7 @@ void trg_torrent_model_update(TrgTorrentModel * model, TrgClient * tc, if (!result) { gtk_list_store_append(GTK_LIST_STORE(model), &iter); - update_torrent_iter(model, rpcv, trg_client_get_serial(tc), &iter, t, stats); + update_torrent_iter(tc, model, rpcv, &iter, t, stats); path = gtk_tree_model_get_path(GTK_TREE_MODEL(model), &iter); rr = gtk_tree_row_reference_new(GTK_TREE_MODEL(model), path); @@ -495,7 +500,7 @@ void trg_torrent_model_update(TrgTorrentModel * model, TrgClient * tc, if (path) { if (gtk_tree_model_get_iter (GTK_TREE_MODEL(model), &iter, path)) { - update_torrent_iter(model, rpcv, trg_client_get_serial(tc), &iter, t, + update_torrent_iter(tc, model, rpcv, &iter, t, stats); } gtk_tree_path_free(path); -- cgit v1.2.3