diff options
author | Alan Fitton <ajf@eth0.org.uk> | 2011-09-18 16:21:04 +0000 |
---|---|---|
committer | Alan Fitton <ajf@eth0.org.uk> | 2011-09-18 16:21:04 +0000 |
commit | 79cd86dbfd5b2ea0963c84b48088ec189acfc795 (patch) | |
tree | 535769200823fdaa1fec9795fe986668cb33bdee /src/trg-trackers-tree-view.c | |
parent | 63763bb00502e3c235e478ec50e097904c774696 (diff) |
Big changeset, may break stuff. Unfortunately you can't magically jump into the UI thread using gdk_threads_enter/leave() on Windows, the only way is to schedule a callback using g_idle_add. This required a lot of reworking. Good news, Windows support actually works now \o/
Diffstat (limited to 'src/trg-trackers-tree-view.c')
-rw-r--r-- | src/trg-trackers-tree-view.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/trg-trackers-tree-view.c b/src/trg-trackers-tree-view.c index 7f385ba..f4c1e87 100644 --- a/src/trg-trackers-tree-view.c +++ b/src/trg-trackers-tree-view.c @@ -27,7 +27,6 @@ #include "trg-client.h" #include "trg-menu-bar.h" #include "requests.h" -#include "dispatch.h" #include "json.h" #include "trg-trackers-model.h" #include "trg-main-window.h" @@ -56,16 +55,18 @@ static gboolean is_tracker_edit_supported(TrgClient *tc) return trg_client_get_rpc_version(tc) >= 10; } -static void -on_trackers_update(JsonObject * response, int status, gpointer data) +static gboolean +on_trackers_update(gpointer data) { + trg_response *response = (trg_response*)data; TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(data); - GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(data)); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(response->cb_data); + GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data)); trg_trackers_model_set_accept(TRG_TRACKERS_MODEL(model), TRUE); - on_generic_interactive_action(response, status, priv->win); + response->cb_data = priv->win; + return on_generic_interactive_action(data); } void trg_trackers_tree_view_new_connection(TrgTrackersTreeView * tv, |