summaryrefslogtreecommitdiff
path: root/src/trg-files-tree-view.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-09-18 16:21:04 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-09-18 16:21:04 +0000
commit79cd86dbfd5b2ea0963c84b48088ec189acfc795 (patch)
tree535769200823fdaa1fec9795fe986668cb33bdee /src/trg-files-tree-view.c
parent63763bb00502e3c235e478ec50e097904c774696 (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-files-tree-view.c')
-rw-r--r--src/trg-files-tree-view.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/trg-files-tree-view.c b/src/trg-files-tree-view.c
index f0975fa..d9661b0 100644
--- a/src/trg-files-tree-view.c
+++ b/src/trg-files-tree-view.c
@@ -30,7 +30,6 @@
#include "requests.h"
#include "util.h"
#include "json.h"
-#include "dispatch.h"
#include "protocol-constants.h"
G_DEFINE_TYPE(TrgFilesTreeView, trg_files_tree_view, TRG_TYPE_TREE_VIEW)
@@ -104,15 +103,17 @@ static void send_updated_file_prefs_foreachfunc(GtkTreeModel * model,
add_file_id_to_array(args, FIELD_FILES_PRIORITY_NORMAL, id);
}
-static void
-on_files_update(JsonObject * response, int status, gpointer data)
+static gboolean
+on_files_update(gpointer data)
{
- TrgFilesTreeViewPrivate *priv = TRG_FILES_TREE_VIEW_GET_PRIVATE(data);
- GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(data));
+ trg_response *response = (trg_response*)data;
+ TrgFilesTreeViewPrivate *priv = TRG_FILES_TREE_VIEW_GET_PRIVATE(response->cb_data);
+ GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data));
trg_files_model_set_accept(TRG_FILES_MODEL(model), TRUE);
- on_generic_interactive_action(response, status, priv->win);
+ response->cb_data = priv->win;
+ return on_generic_interactive_action(data);
}
static void send_updated_file_prefs(TrgFilesTreeView * tv)