summaryrefslogtreecommitdiff
path: root/src/trg-torrent-props-dialog.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2012-08-27 13:07:50 +0100
committerGravatar Alan Fitton <ajf@eth0.org.uk>2012-08-27 13:07:50 +0100
commit3c55413ea9d8fe1976affb15e35bb3d63e9a61b9 (patch)
tree93ea67b45371293b53157be45b9a04f727a4061b /src/trg-torrent-props-dialog.c
parent5cbe0ed71cd89c40f7a12464b90a4a934ee4e6bc (diff)
revert to gtk2 by default for a bit longer, because gtk3 seems crashy still in ubuntu
Diffstat (limited to 'src/trg-torrent-props-dialog.c')
-rw-r--r--src/trg-torrent-props-dialog.c34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/trg-torrent-props-dialog.c b/src/trg-torrent-props-dialog.c
index 7c1dc15..aef716a 100644
--- a/src/trg-torrent-props-dialog.c
+++ b/src/trg-torrent-props-dialog.c
@@ -303,7 +303,6 @@ static void info_page_update(TrgTorrentPropsDialog * dialog,
activityDate, error;
gchar *statusString;
guint flags;
- //const gchar * creator;
const gchar *str;
char buf[512];
@@ -465,29 +464,30 @@ static GtkWidget *trg_props_limits_page_new(TrgTorrentPropsDialog * win,
return t;
}
-static void models_updated(TrgTorrentModel * model, gpointer data)
-{
+static void models_updated(TrgTorrentModel * model, gpointer data) {
TrgTorrentPropsDialogPrivate *priv = GET_PRIVATE(data);
GHashTable *ht = get_torrent_table(model);
gint64 serial = trg_client_get_serial(priv->client);
- JsonObject *t;
+ JsonObject *t = NULL;
GtkTreeIter iter;
-
- if (get_torrent_data
- (ht, json_array_get_int_element(priv->targetIds, 0), &t, &iter)
- && t != priv->lastJson) {
- trg_files_model_update(priv->filesModel,
- GTK_TREE_VIEW(priv->filesTv), serial, t,
- TORRENT_GET_MODE_UPDATE);
- trg_peers_model_update(priv->peersModel,
- TRG_TREE_VIEW(priv->peersTv), serial, t,
- TORRENT_GET_MODE_UPDATE);
+ gboolean exists = get_torrent_data(ht,
+ json_array_get_int_element(priv->targetIds, 0), &t, &iter);
+
+ if (exists && priv->lastJson != t) {
+ trg_files_model_update(priv->filesModel, GTK_TREE_VIEW(priv->filesTv),
+ serial, t, TORRENT_GET_MODE_UPDATE);
+ trg_peers_model_update(priv->peersModel, TRG_TREE_VIEW(priv->peersTv),
+ serial, t, TORRENT_GET_MODE_UPDATE);
trg_trackers_model_update(priv->trackersModel, serial, t,
- TORRENT_GET_MODE_UPDATE);
+ TORRENT_GET_MODE_UPDATE);
info_page_update(TRG_TORRENT_PROPS_DIALOG(data), t, model, &iter);
-
- priv->lastJson = t;
}
+
+ gtk_widget_set_sensitive(GTK_WIDGET(priv->filesTv), exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(priv->trackersTv), exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(priv->peersTv), exists);
+
+ priv->lastJson = t;
}
static GObject *trg_torrent_props_dialog_constructor(GType type,