/* tracker-tags-view.c generated by valac 0.35.1.15-f996c-dirty, the Vala compiler
 * generated from tracker-tags-view.vala, do not modify */

/*
 * Copyright (C) 2011, Martyn Russell <martyn@lanedo.com>
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301, USA.
 */

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
#include "libtracker-sparql/tracker-sparql.h"
#include <glib/gi18n-lib.h>
#include <pango/pango.h>
#include <gobject/gvaluecollector.h>


#define TYPE_TAG_DATA (tag_data_get_type ())
#define TAG_DATA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_DATA, TagData))
#define TAG_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_DATA, TagDataClass))
#define IS_TAG_DATA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_DATA))
#define IS_TAG_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_DATA))
#define TAG_DATA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_DATA, TagDataClass))

typedef struct _TagData TagData;
typedef struct _TagDataClass TagDataClass;
typedef struct _TagDataPrivate TagDataPrivate;

#define TYPE_TRACKER_TAGS_VIEW (tracker_tags_view_get_type ())
#define TRACKER_TAGS_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRACKER_TAGS_VIEW, TrackerTagsView))
#define TRACKER_TAGS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRACKER_TAGS_VIEW, TrackerTagsViewClass))
#define IS_TRACKER_TAGS_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRACKER_TAGS_VIEW))
#define IS_TRACKER_TAGS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRACKER_TAGS_VIEW))
#define TRACKER_TAGS_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRACKER_TAGS_VIEW, TrackerTagsViewClass))

typedef struct _TrackerTagsView TrackerTagsView;
typedef struct _TrackerTagsViewClass TrackerTagsViewClass;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
typedef struct _ParamSpecTagData ParamSpecTagData;
typedef struct _TrackerTagsViewPrivate TrackerTagsViewPrivate;
#define __g_list_free_g_free0(var) ((var == NULL) ? NULL : (var = (_g_list_free_g_free (var), NULL)))
#define _tag_data_unref0(var) ((var == NULL) ? NULL : (var = (tag_data_unref (var), NULL)))
#define __g_list_free__tag_data_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__tag_data_unref0_ (var), NULL)))

#define TRACKER_TAGS_VIEW_TYPE_COL (tracker_tags_view_col_get_type ())

#define TRACKER_TAGS_VIEW_TYPE_SELECTION (tracker_tags_view_selection_get_type ())
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _Block1Data Block1Data;
#define _gtk_tree_path_free0(var) ((var == NULL) ? NULL : (var = (gtk_tree_path_free (var), NULL)))
typedef struct _TrackerTagsViewModelToggleRowData TrackerTagsViewModelToggleRowData;
typedef struct _Block2Data Block2Data;
typedef struct _TrackerTagsViewRemoveTagData TrackerTagsViewRemoveTagData;
typedef struct _TrackerTagsViewAddTagData TrackerTagsViewAddTagData;
typedef struct _Block3Data Block3Data;
typedef struct _TrackerTagsViewQueryTagsForFilesData TrackerTagsViewQueryTagsForFilesData;
typedef struct _TrackerTagsViewQueryTagsData TrackerTagsViewQueryTagsData;
typedef struct _TrackerTagsViewQueryFilesForTagIdData TrackerTagsViewQueryFilesForTagIdData;
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _TagData {
	GTypeInstance parent_instance;
	volatile int ref_count;
	TagDataPrivate * priv;
	TrackerTagsView* tv;
	GCancellable* cancellable;
	gchar* tag_id;
	GtkTreeIter iter;
	gint items;
	gboolean update;
	gboolean selected;
};

struct _TagDataClass {
	GTypeClass parent_class;
	void (*finalize) (TagData *self);
};

struct _ParamSpecTagData {
	GParamSpec parent_instance;
};

struct _TrackerTagsView {
	GtkBox parent_instance;
	TrackerTagsViewPrivate * priv;
};

struct _TrackerTagsViewClass {
	GtkBoxClass parent_class;
};

struct _TrackerTagsViewPrivate {
	TrackerSparqlConnection* connection;
	GCancellable* cancellable;
	GList* tag_data_requests;
	GList* files;
	GtkListStore* store;
	GtkBox* vbox;
	GtkLabel* label;
	GtkEntry* entry;
	GtkButton* button_add;
	GtkButton* button_remove;
	GtkScrolledWindow* scrolled_window;
	GtkTreeView* view;
};

typedef enum  {
	TRACKER_TAGS_VIEW_COL_SELECTION,
	TRACKER_TAGS_VIEW_COL_TAG_ID,
	TRACKER_TAGS_VIEW_COL_TAG_NAME,
	TRACKER_TAGS_VIEW_COL_TAG_COUNT,
	TRACKER_TAGS_VIEW_COL_TAG_COUNT_VALUE,
	TRACKER_TAGS_VIEW_COL_N_COLUMNS
} TrackerTagsViewCol;

typedef enum  {
	TRACKER_TAGS_VIEW_SELECTION_INCONSISTENT = -1,
	TRACKER_TAGS_VIEW_SELECTION_FALSE = 0,
	TRACKER_TAGS_VIEW_SELECTION_TRUE = 1
} TrackerTagsViewSelection;

struct _Block1Data {
	int _ref_count_;
	TrackerTagsView* self;
	GtkMessageDialog* msg;
};

struct _TrackerTagsViewModelToggleRowData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	GtkTreePath* path;
	GtkTreeModel* model;
	GtkTreeIter iter;
	gchar* id;
	gchar* tag;
	gint selection;
	GtkTreeView* _tmp0_;
	GtkTreeModel* _tmp1_;
	GtkTreeModel* _tmp2_;
	GtkTreeModel* _tmp3_;
	GtkTreePath* _tmp4_;
	GtkTreeIter _tmp5_;
	gboolean _tmp6_;
	GtkTreeModel* _tmp7_;
	GtkTreeIter _tmp8_;
	TrackerTagsViewSelection _tmp9_;
	gint _tmp10_;
	gint new_value;
	gchar* tag_escaped;
	const gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* filter;
	gchar* _tmp13_;
	gchar* query;
	TagData* td;
	gint _tmp14_;
	const gchar* _tmp15_;
	const gchar* _tmp16_;
	gchar* _tmp17_;
	const gchar* _tmp18_;
	const gchar* _tmp19_;
	gchar* _tmp20_;
	const gchar* _tmp21_;
	GtkTreeIter _tmp22_;
	TagData* _tmp23_;
	TagData* _tmp24_;
	TagData* _tmp25_;
	TagData* _tmp26_;
	TrackerSparqlConnection* _tmp27_;
	GtkEntry* _tmp28_;
	const gchar* _tmp29_;
	GtkTreeIter _tmp30_;
	gint _tmp31_;
	TagData* _tmp32_;
	TagData* _tmp33_;
	TagData* _tmp34_;
	TrackerSparqlConnection* _tmp35_;
	const gchar* _tmp36_;
	TagData* _tmp37_;
	GCancellable* _tmp38_;
	TagData* _tmp39_;
	GtkEntry* _tmp40_;
	GError* e;
	GError* _tmp41_;
	const gchar* _tmp42_;
	GError* _tmp43_;
	TagData* _tmp44_;
	GtkEntry* _tmp45_;
	GError * _inner_error_;
};

struct _Block2Data {
	int _ref_count_;
	TrackerTagsView* self;
	GtkTreeIter found_iter;
	gboolean found;
	gchar* tag;
};

struct _TrackerTagsViewRemoveTagData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	TagData* td;
	TrackerSparqlConnection* _tmp0_;
	TagData* _tmp1_;
	const gchar* _tmp2_;
	TagData* _tmp3_;
	gchar* query;
	TagData* _tmp5_;
	const gchar* _tmp6_;
	gchar* _tmp7_;
	TrackerSparqlConnection* _tmp8_;
	const gchar* _tmp9_;
	TagData* _tmp10_;
	GCancellable* _tmp11_;
	GtkListStore* _tmp12_;
	TagData* _tmp13_;
	GtkTreeIter _tmp14_;
	GError* e;
	GError* _tmp15_;
	const gchar* _tmp16_;
	GError* _tmp17_;
	TagData* _tmp18_;
	GError * _inner_error_;
};

struct _TrackerTagsViewAddTagData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	gchar* tag;
	gchar* query;
	TrackerSparqlConnection* _tmp0_;
	const gchar* _tmp1_;
	GtkEntry* _tmp2_;
	gboolean _tmp3_;
	GList* _tmp4_;
	GList* _tmp5_;
	guint _tmp6_;
	gchar* _tmp7_;
	gchar* filter;
	gchar* _tmp8_;
	gchar* tag_escaped;
	const gchar* _tmp9_;
	gchar* _tmp10_;
	GList* _tmp11_;
	GList* url_collection;
	GList* url_it;
	gchar* _tmp12_;
	gchar* url;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	const gchar* _tmp19_;
	const gchar* _tmp20_;
	const gchar* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	gchar* _tmp24_;
	gchar* _tmp25_;
	gchar* _tmp26_;
	gchar* tag_label_escaped;
	const gchar* _tmp27_;
	gchar* _tmp28_;
	const gchar* _tmp29_;
	const gchar* _tmp30_;
	gchar* _tmp31_;
	TagData* td;
	GList* _tmp32_;
	guint _tmp33_;
	TagData* _tmp34_;
	TagData* _tmp35_;
	TagData* _tmp36_;
	TrackerSparqlConnection* _tmp37_;
	const gchar* _tmp38_;
	TagData* _tmp39_;
	GCancellable* _tmp40_;
	TagData* _tmp41_;
	GtkEntry* _tmp42_;
	GError* e;
	GError* _tmp43_;
	const gchar* _tmp44_;
	GError* _tmp45_;
	TagData* _tmp46_;
	GtkEntry* _tmp47_;
	GError * _inner_error_;
};

struct _Block3Data {
	int _ref_count_;
	TrackerTagsView* self;
	GtkListStore* store;
};

struct _TrackerTagsViewQueryTagsForFilesData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	GList* _tmp0_;
	gchar* files_filter;
	gchar* _tmp1_;
	GList* _tmp2_;
	GList* url_collection;
	GList* url_it;
	gchar* _tmp3_;
	gchar* url;
	const gchar* _tmp4_;
	gint _tmp5_;
	gint _tmp6_;
	const gchar* _tmp7_;
	gchar* _tmp8_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	gchar* query;
	const gchar* _tmp14_;
	gchar* _tmp15_;
	TrackerSparqlCursor* cursor;
	TrackerSparqlConnection* _tmp16_;
	const gchar* _tmp17_;
	TrackerSparqlCursor* _tmp18_;
	gboolean _tmp19_;
	TrackerSparqlCursor* _tmp20_;
	gboolean _tmp21_;
	const gchar* id;
	TrackerSparqlCursor* _tmp22_;
	const gchar* _tmp23_;
	const gchar* label;
	TrackerSparqlCursor* _tmp24_;
	const gchar* _tmp25_;
	const gchar* _tmp26_;
	const gchar* _tmp27_;
	GtkTreeIter iter;
	const gchar* _tmp28_;
	GtkTreeIter _tmp29_;
	gboolean _tmp30_;
	GtkListStore* _tmp31_;
	GtkTreeIter _tmp32_;
	GError* e;
	GError* _tmp33_;
	const gchar* _tmp34_;
	GError* _tmp35_;
	GError * _inner_error_;
};

struct _TrackerTagsViewQueryTagsData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	gchar* query;
	gchar* _tmp0_;
	GtkListStore* _tmp1_;
	TrackerSparqlCursor* cursor;
	TrackerSparqlConnection* _tmp2_;
	const gchar* _tmp3_;
	TrackerSparqlCursor* _tmp4_;
	gboolean _tmp5_;
	TrackerSparqlCursor* _tmp6_;
	gboolean _tmp7_;
	const gchar* id;
	TrackerSparqlCursor* _tmp8_;
	const gchar* _tmp9_;
	const gchar* label;
	TrackerSparqlCursor* _tmp10_;
	const gchar* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	GtkTreeIter iter;
	GtkListStore* _tmp14_;
	GtkTreeIter _tmp15_;
	GtkListStore* _tmp16_;
	GtkTreeIter _tmp17_;
	const gchar* _tmp18_;
	const gchar* _tmp19_;
	TagData* td;
	const gchar* _tmp20_;
	GtkTreeIter _tmp21_;
	TagData* _tmp22_;
	TagData* _tmp23_;
	TagData* _tmp24_;
	TagData* _tmp25_;
	GError* e;
	GError* _tmp26_;
	const gchar* _tmp27_;
	GError* _tmp28_;
	GError * _inner_error_;
};

struct _TrackerTagsViewQueryFilesForTagIdData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TrackerTagsView* self;
	TagData* td;
	TrackerSparqlConnection* _tmp0_;
	TagData* _tmp1_;
	const gchar* _tmp2_;
	TagData* _tmp3_;
	gchar* query;
	TagData* _tmp5_;
	const gchar* _tmp6_;
	gchar* _tmp7_;
	TrackerSparqlCursor* cursor;
	TrackerSparqlConnection* _tmp8_;
	const gchar* _tmp9_;
	TagData* _tmp10_;
	GCancellable* _tmp11_;
	TrackerSparqlCursor* _tmp12_;
	guint has_tag_in_selection;
	guint files_with_tag;
	guint files_selected;
	GList* _tmp13_;
	guint _tmp14_;
	gboolean _tmp15_;
	TrackerSparqlCursor* _tmp16_;
	gboolean _tmp17_;
	guint _tmp18_;
	GList* _tmp19_;
	GList* url_collection;
	GList* url_it;
	gchar* _tmp20_;
	gchar* url;
	const gchar* url_returned;
	TrackerSparqlCursor* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	const gchar* _tmp24_;
	const gchar* _tmp25_;
	const gchar* _tmp26_;
	const gchar* _tmp27_;
	guint _tmp28_;
	guint _tmp29_;
	guint _tmp30_;
	guint _tmp31_;
	guint _tmp32_;
	GtkListStore* _tmp33_;
	TagData* _tmp34_;
	GtkTreeIter _tmp35_;
	guint _tmp36_;
	guint _tmp37_;
	GtkListStore* _tmp38_;
	TagData* _tmp39_;
	GtkTreeIter _tmp40_;
	GtkListStore* _tmp41_;
	TagData* _tmp42_;
	GtkTreeIter _tmp43_;
	gchar* str;
	guint _tmp44_;
	gchar* _tmp45_;
	GtkListStore* _tmp46_;
	TagData* _tmp47_;
	GtkTreeIter _tmp48_;
	const gchar* _tmp49_;
	guint _tmp50_;
	GError* e;
	GError* _tmp51_;
	const gchar* _tmp52_;
	GError* _tmp53_;
	TagData* _tmp54_;
	GError * _inner_error_;
};


static gpointer tag_data_parent_class = NULL;
static gpointer tracker_tags_view_parent_class = NULL;

gpointer tag_data_ref (gpointer instance);
void tag_data_unref (gpointer instance);
GParamSpec* param_spec_tag_data (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_tag_data (GValue* value, gpointer v_object);
void value_take_tag_data (GValue* value, gpointer v_object);
gpointer value_get_tag_data (const GValue* value);
GType tag_data_get_type (void) G_GNUC_CONST;
GType tracker_tags_view_get_type (void) G_GNUC_CONST;
enum  {
	TAG_DATA_DUMMY_PROPERTY
};
TagData* tag_data_new (const gchar* _tag_id, GtkTreeIter* _iter, gboolean _update, gboolean _selected, gint _items, TrackerTagsView* _tv);
TagData* tag_data_construct (GType object_type, const gchar* _tag_id, GtkTreeIter* _iter, gboolean _update, gboolean _selected, gint _items, TrackerTagsView* _tv);
static void tag_data_finalize (TagData * obj);
#define TRACKER_TAGS_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TRACKER_TAGS_VIEW, TrackerTagsViewPrivate))
enum  {
	TRACKER_TAGS_VIEW_DUMMY_PROPERTY
};
static void _g_list_free_g_free (GList* self);
static void _tag_data_unref0_ (gpointer var);
static void _g_list_free__tag_data_unref0_ (GList* self);
static GType tracker_tags_view_col_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static GType tracker_tags_view_selection_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
#define TRACKER_TAGS_VIEW_UI_FILE "tracker-needle.ui"
TrackerTagsView* tracker_tags_view_new (GList* _files);
TrackerTagsView* tracker_tags_view_construct (GType object_type, GList* _files);
static void tracker_tags_view_create_ui (TrackerTagsView* self);
void tracker_tags_view_hide_label (TrackerTagsView* self);
void tracker_tags_view_set_files (TrackerTagsView* self, GList* _files);
static void tracker_tags_view_update_for_files (TrackerTagsView* self);
static void tracker_tags_view_show_error_dialog (TrackerTagsView* self, const gchar* action, GError* e);
static Block1Data* block1_data_ref (Block1Data* _data1_);
static void block1_data_unref (void * _userdata_);
static void __lambda5_ (Block1Data* _data1_);
static void ___lambda5__gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self);
void tracker_tags_view_button_remove_clicked_cb (GtkButton* source, TrackerTagsView* self);
static void tracker_tags_view_remove_tag (TrackerTagsView* self, TagData* td, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_remove_tag_finish (TrackerTagsView* self, GAsyncResult* _res_);
void tracker_tags_view_button_add_clicked_cb (GtkButton* source, TrackerTagsView* self);
static void tracker_tags_view_add_tag (TrackerTagsView* self, const gchar* tag, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_add_tag_finish (TrackerTagsView* self, GAsyncResult* _res_);
void tracker_tags_view_entry_tag_activated_cb (GtkEntry* source, TrackerTagsView* self);
void tracker_tags_view_entry_tag_changed_cb (GtkEditable* source, TrackerTagsView* self);
static gboolean tracker_tags_view_find_tag (TrackerTagsView* self, const gchar* tag, GtkTreeIter* iter);
void tracker_tags_view_treeview_tags_cell_toggled_cb (GtkCellRendererToggle* source, const gchar* path_string, TrackerTagsView* self);
static void tracker_tags_view_model_toggle_row (TrackerTagsView* self, GtkTreePath* path, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_model_toggle_row_finish (TrackerTagsView* self, GAsyncResult* _res_);
void tracker_tags_view_treeview_tags_row_selected_cb (GtkTreeSelection* selection, TrackerTagsView* self);
void tracker_tags_view_treeview_tags_row_activated_cb (GtkTreeView* source, GtkTreePath* path, GtkTreeViewColumn* column, TrackerTagsView* self);
static void tracker_tags_view_treeview_tags_toggle_cell_data_func (GtkCellLayout* layout, GtkCellRenderer* cell, GtkTreeModel* model, GtkTreeIter* iter, TrackerTagsView* self);
static void _tracker_tags_view_entry_tag_changed_cb_gtk_editable_changed (GtkEditable* _sender, gpointer self);
static void _tracker_tags_view_button_add_clicked_cb_gtk_button_clicked (GtkButton* _sender, gpointer self);
static void _tracker_tags_view_button_remove_clicked_cb_gtk_button_clicked (GtkButton* _sender, gpointer self);
static void _tracker_tags_view_treeview_tags_cell_toggled_cb_gtk_cell_renderer_toggle_toggled (GtkCellRendererToggle* _sender, const gchar* path, gpointer self);
static void _tracker_tags_view_treeview_tags_toggle_cell_data_func_gtk_cell_layout_data_func (GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* tree_model, GtkTreeIter* iter, gpointer self);
static void _tracker_tags_view_treeview_tags_row_selected_cb_gtk_tree_selection_changed (GtkTreeSelection* _sender, gpointer self);
static void _tracker_tags_view_treeview_tags_row_activated_cb_gtk_tree_view_row_activated (GtkTreeView* _sender, GtkTreePath* path, GtkTreeViewColumn* column, gpointer self);
static void tracker_tags_view_query_tags (TrackerTagsView* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_query_tags_finish (TrackerTagsView* self, GAsyncResult* _res_);
static void tracker_tags_view_query_tags_for_files (TrackerTagsView* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_query_tags_for_files_finish (TrackerTagsView* self, GAsyncResult* _res_);
static void tracker_tags_view_model_toggle_row_data_free (gpointer _data);
static gboolean tracker_tags_view_model_toggle_row_co (TrackerTagsViewModelToggleRowData* _data_);
static gchar* tracker_tags_view_sparql_get_escaped_string (TrackerTagsView* self, const gchar* str);
static gchar* tracker_tags_view_sparql_get_filter_string (TrackerTagsView* self, const gchar* tag);
static void tracker_tags_view_query_files_for_tag_id (TrackerTagsView* self, TagData* td, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void tracker_tags_view_query_files_for_tag_id_finish (TrackerTagsView* self, GAsyncResult* _res_);
static void tracker_tags_view_model_toggle_row_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_update_tag_data (TrackerTagsView* self, TagData* td);
static Block2Data* block2_data_ref (Block2Data* _data2_);
static void block2_data_unref (void * _userdata_);
static gboolean __lambda4_ (Block2Data* _data2_, GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* foreach_iter);
static gboolean ___lambda4__gtk_tree_model_foreach_func (GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, gpointer self);
static void tracker_tags_view_remove_tag_data_free (gpointer _data);
static gboolean tracker_tags_view_remove_tag_co (TrackerTagsViewRemoveTagData* _data_);
static void tracker_tags_view_remove_tag_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_add_tag_data_free (gpointer _data);
static gboolean tracker_tags_view_add_tag_co (TrackerTagsViewAddTagData* _data_);
static void tracker_tags_view_add_tag_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_untoggle_all (TrackerTagsView* self);
static Block3Data* block3_data_ref (Block3Data* _data3_);
static void block3_data_unref (void * _userdata_);
static gboolean __lambda6_ (Block3Data* _data3_, GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* foreach_iter);
static gboolean ___lambda6__gtk_tree_model_foreach_func (GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, gpointer self);
static void tracker_tags_view_query_tags_for_files_data_free (gpointer _data);
static gboolean tracker_tags_view_query_tags_for_files_co (TrackerTagsViewQueryTagsForFilesData* _data_);
static void tracker_tags_view_query_tags_for_files_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_query_tags_data_free (gpointer _data);
static gboolean tracker_tags_view_query_tags_co (TrackerTagsViewQueryTagsData* _data_);
static void tracker_tags_view_query_tags_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_query_files_for_tag_id_data_free (gpointer _data);
static gboolean tracker_tags_view_query_files_for_tag_id_co (TrackerTagsViewQueryFilesForTagIdData* _data_);
static void tracker_tags_view_query_files_for_tag_id_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void tracker_tags_view_finalize (GObject * obj);


static gpointer _g_object_ref0 (gpointer self) {
#line 35 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return self ? g_object_ref (self) : NULL;
#line 605 "tracker-tags-view.c"
}


TagData* tag_data_construct (GType object_type, const gchar* _tag_id, GtkTreeIter* _iter, gboolean _update, gboolean _selected, gint _items, TrackerTagsView* _tv) {
	TagData* self = NULL;
	TrackerTagsView* _tmp0_;
	TrackerTagsView* _tmp1_;
	GCancellable* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	GtkTreeIter* _tmp5_;
	gint _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
#line 32 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (_tv != NULL, NULL);
#line 32 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = (TagData*) g_type_create_instance (object_type);
#line 33 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:33: Creating tag data");
#line 35 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _tv;
#line 35 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 35 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->tv);
#line 35 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->tv = _tmp1_;
#line 36 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = g_cancellable_new ();
#line 36 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->cancellable);
#line 36 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->cancellable = _tmp2_;
#line 37 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = _tag_id;
#line 37 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp4_ = g_strdup (_tmp3_);
#line 37 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (self->tag_id);
#line 37 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->tag_id = _tmp4_;
#line 39 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = _iter;
#line 39 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp5_ != NULL) {
#line 652 "tracker-tags-view.c"
		GtkTreeIter* _tmp6_;
#line 40 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = _iter;
#line 40 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->iter = *_tmp6_;
#line 658 "tracker-tags-view.c"
	}
#line 43 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = _items;
#line 43 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->items = _tmp7_;
#line 44 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp8_ = _update;
#line 44 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->update = _tmp8_;
#line 45 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp9_ = _selected;
#line 45 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->selected = _tmp9_;
#line 32 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return self;
#line 674 "tracker-tags-view.c"
}


TagData* tag_data_new (const gchar* _tag_id, GtkTreeIter* _iter, gboolean _update, gboolean _selected, gint _items, TrackerTagsView* _tv) {
#line 32 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return tag_data_construct (TYPE_TAG_DATA, _tag_id, _iter, _update, _selected, _items, _tv);
#line 681 "tracker-tags-view.c"
}


static void value_tag_data_init (GValue* value) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	value->data[0].v_pointer = NULL;
#line 688 "tracker-tags-view.c"
}


static void value_tag_data_free_value (GValue* value) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (value->data[0].v_pointer) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tag_data_unref (value->data[0].v_pointer);
#line 697 "tracker-tags-view.c"
	}
}


static void value_tag_data_copy_value (const GValue* src_value, GValue* dest_value) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (src_value->data[0].v_pointer) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		dest_value->data[0].v_pointer = tag_data_ref (src_value->data[0].v_pointer);
#line 707 "tracker-tags-view.c"
	} else {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		dest_value->data[0].v_pointer = NULL;
#line 711 "tracker-tags-view.c"
	}
}


static gpointer value_tag_data_peek_pointer (const GValue* value) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return value->data[0].v_pointer;
#line 719 "tracker-tags-view.c"
}


static gchar* value_tag_data_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (collect_values[0].v_pointer) {
#line 726 "tracker-tags-view.c"
		TagData * object;
		object = collect_values[0].v_pointer;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (object->parent_instance.g_class == NULL) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 733 "tracker-tags-view.c"
		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 737 "tracker-tags-view.c"
		}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = tag_data_ref (object);
#line 741 "tracker-tags-view.c"
	} else {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = NULL;
#line 745 "tracker-tags-view.c"
	}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return NULL;
#line 749 "tracker-tags-view.c"
}


static gchar* value_tag_data_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
	TagData ** object_p;
	object_p = collect_values[0].v_pointer;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (!object_p) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
#line 760 "tracker-tags-view.c"
	}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (!value->data[0].v_pointer) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		*object_p = NULL;
#line 766 "tracker-tags-view.c"
	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		*object_p = value->data[0].v_pointer;
#line 770 "tracker-tags-view.c"
	} else {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		*object_p = tag_data_ref (value->data[0].v_pointer);
#line 774 "tracker-tags-view.c"
	}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return NULL;
#line 778 "tracker-tags-view.c"
}


GParamSpec* param_spec_tag_data (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
	ParamSpecTagData* spec;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (g_type_is_a (object_type, TYPE_TAG_DATA), NULL);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	G_PARAM_SPEC (spec)->value_type = object_type;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return G_PARAM_SPEC (spec);
#line 792 "tracker-tags-view.c"
}


gpointer value_get_tag_data (const GValue* value) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TAG_DATA), NULL);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return value->data[0].v_pointer;
#line 801 "tracker-tags-view.c"
}


void value_set_tag_data (GValue* value, gpointer v_object) {
	TagData * old;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TAG_DATA));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	old = value->data[0].v_pointer;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (v_object) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_TAG_DATA));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = v_object;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tag_data_ref (value->data[0].v_pointer);
#line 821 "tracker-tags-view.c"
	} else {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = NULL;
#line 825 "tracker-tags-view.c"
	}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (old) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tag_data_unref (old);
#line 831 "tracker-tags-view.c"
	}
}


void value_take_tag_data (GValue* value, gpointer v_object) {
	TagData * old;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TAG_DATA));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	old = value->data[0].v_pointer;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (v_object) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_TAG_DATA));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = v_object;
#line 850 "tracker-tags-view.c"
	} else {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		value->data[0].v_pointer = NULL;
#line 854 "tracker-tags-view.c"
	}
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (old) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tag_data_unref (old);
#line 860 "tracker-tags-view.c"
	}
}


static void tag_data_class_init (TagDataClass * klass) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tag_data_parent_class = g_type_class_peek_parent (klass);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	((TagDataClass *) klass)->finalize = tag_data_finalize;
#line 870 "tracker-tags-view.c"
}


static void tag_data_instance_init (TagData * self) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->ref_count = 1;
#line 877 "tracker-tags-view.c"
}


static void tag_data_finalize (TagData * obj) {
	TagData * self;
	GCancellable* _tmp0_;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TAG_DATA, TagData);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_handlers_destroy (self);
#line 49 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->cancellable;
#line 49 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp0_ != NULL) {
#line 892 "tracker-tags-view.c"
		GCancellable* _tmp1_;
#line 50 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp1_ = self->cancellable;
#line 50 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_cancellable_cancel (_tmp1_);
#line 51 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self->cancellable);
#line 51 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->cancellable = NULL;
#line 902 "tracker-tags-view.c"
	}
#line 24 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->tv);
#line 25 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->cancellable);
#line 26 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (self->tag_id);
#line 910 "tracker-tags-view.c"
}


GType tag_data_get_type (void) {
	static volatile gsize tag_data_type_id__volatile = 0;
	if (g_once_init_enter (&tag_data_type_id__volatile)) {
		static const GTypeValueTable g_define_type_value_table = { value_tag_data_init, value_tag_data_free_value, value_tag_data_copy_value, value_tag_data_peek_pointer, "p", value_tag_data_collect_value, "p", value_tag_data_lcopy_value };
		static const GTypeInfo g_define_type_info = { sizeof (TagDataClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tag_data_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TagData), 0, (GInstanceInitFunc) tag_data_instance_init, &g_define_type_value_table };
		static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
		GType tag_data_type_id;
		tag_data_type_id = g_type_register_fundamental (g_type_fundamental_next (), "TagData", &g_define_type_info, &g_define_type_fundamental_info, 0);
		g_once_init_leave (&tag_data_type_id__volatile, tag_data_type_id);
	}
	return tag_data_type_id__volatile;
}


gpointer tag_data_ref (gpointer instance) {
	TagData * self;
	self = instance;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_atomic_int_inc (&self->ref_count);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return instance;
#line 935 "tracker-tags-view.c"
}


void tag_data_unref (gpointer instance) {
	TagData * self;
	self = instance;
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (g_atomic_int_dec_and_test (&self->ref_count)) {
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		TAG_DATA_GET_CLASS (self)->finalize (self);
#line 23 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_type_free_instance ((GTypeInstance *) self);
#line 948 "tracker-tags-view.c"
	}
}


static void _g_list_free_g_free (GList* self) {
#line 122 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_list_foreach (self, (GFunc) g_free, NULL);
#line 122 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_list_free (self);
#line 958 "tracker-tags-view.c"
}


static gpointer _tag_data_ref0 (gpointer self) {
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return self ? tag_data_ref (self) : NULL;
#line 965 "tracker-tags-view.c"
}


static void _tag_data_unref0_ (gpointer var) {
#line 130 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	(var == NULL) ? NULL : (var = (tag_data_unref (var), NULL));
#line 972 "tracker-tags-view.c"
}


static void _g_list_free__tag_data_unref0_ (GList* self) {
#line 130 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_list_foreach (self, (GFunc) _tag_data_unref0_, NULL);
#line 130 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_list_free (self);
#line 981 "tracker-tags-view.c"
}


static GType tracker_tags_view_col_get_type (void) {
	static volatile gsize tracker_tags_view_col_type_id__volatile = 0;
	if (g_once_init_enter (&tracker_tags_view_col_type_id__volatile)) {
		static const GEnumValue values[] = {{TRACKER_TAGS_VIEW_COL_SELECTION, "TRACKER_TAGS_VIEW_COL_SELECTION", "selection"}, {TRACKER_TAGS_VIEW_COL_TAG_ID, "TRACKER_TAGS_VIEW_COL_TAG_ID", "tag-id"}, {TRACKER_TAGS_VIEW_COL_TAG_NAME, "TRACKER_TAGS_VIEW_COL_TAG_NAME", "tag-name"}, {TRACKER_TAGS_VIEW_COL_TAG_COUNT, "TRACKER_TAGS_VIEW_COL_TAG_COUNT", "tag-count"}, {TRACKER_TAGS_VIEW_COL_TAG_COUNT_VALUE, "TRACKER_TAGS_VIEW_COL_TAG_COUNT_VALUE", "tag-count-value"}, {TRACKER_TAGS_VIEW_COL_N_COLUMNS, "TRACKER_TAGS_VIEW_COL_N_COLUMNS", "n-columns"}, {0, NULL, NULL}};
		GType tracker_tags_view_col_type_id;
		tracker_tags_view_col_type_id = g_enum_register_static ("TrackerTagsViewCol", values);
		g_once_init_leave (&tracker_tags_view_col_type_id__volatile, tracker_tags_view_col_type_id);
	}
	return tracker_tags_view_col_type_id__volatile;
}


static GType tracker_tags_view_selection_get_type (void) {
	static volatile gsize tracker_tags_view_selection_type_id__volatile = 0;
	if (g_once_init_enter (&tracker_tags_view_selection_type_id__volatile)) {
		static const GEnumValue values[] = {{TRACKER_TAGS_VIEW_SELECTION_INCONSISTENT, "TRACKER_TAGS_VIEW_SELECTION_INCONSISTENT", "inconsistent"}, {TRACKER_TAGS_VIEW_SELECTION_FALSE, "TRACKER_TAGS_VIEW_SELECTION_FALSE", "false"}, {TRACKER_TAGS_VIEW_SELECTION_TRUE, "TRACKER_TAGS_VIEW_SELECTION_TRUE", "true"}, {0, NULL, NULL}};
		GType tracker_tags_view_selection_type_id;
		tracker_tags_view_selection_type_id = g_enum_register_static ("TrackerTagsViewSelection", values);
		g_once_init_leave (&tracker_tags_view_selection_type_id__volatile, tracker_tags_view_selection_type_id);
	}
	return tracker_tags_view_selection_type_id__volatile;
}


TrackerTagsView* tracker_tags_view_construct (GType object_type, GList* _files) {
	TrackerTagsView * self = NULL;
	GList* _tmp5_;
	GCancellable* _tmp6_;
	GtkListStore* _tmp7_;
	GError * _inner_error_ = NULL;
#line 90 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = (TrackerTagsView*) g_object_new (object_type, NULL);
#line 1017 "tracker-tags-view.c"
	{
		TrackerSparqlConnection* _tmp0_;
		TrackerSparqlConnection* _tmp1_;
		TrackerSparqlConnection* _tmp2_;
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp1_ = tracker_sparql_connection_get (NULL, &_inner_error_);
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp0_ = _tmp1_;
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1028 "tracker-tags-view.c"
			goto __catch13_g_error;
		}
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp2_ = _tmp0_;
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp0_ = NULL;
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self->priv->connection);
#line 92 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->connection = _tmp2_;
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_tmp0_);
#line 1041 "tracker-tags-view.c"
	}
	goto __finally13;
	__catch13_g_error:
	{
		GError* e = NULL;
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		e = _inner_error_;
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_inner_error_ = NULL;
#line 94 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp3_ = e;
#line 94 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = _tmp3_->message;
#line 94 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:94: Could not get Sparql connection: %s", _tmp4_);
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (e);
#line 1061 "tracker-tags-view.c"
	}
	__finally13:
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		__g_list_free_g_free0 (_files);
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_inner_error_);
#line 91 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return NULL;
#line 1074 "tracker-tags-view.c"
	}
#line 97 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = _files;
#line 97 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_files = NULL;
#line 97 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	__g_list_free_g_free0 (self->priv->files);
#line 97 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->files = _tmp5_;
#line 99 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp6_ = g_cancellable_new ();
#line 99 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->cancellable);
#line 99 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->cancellable = _tmp6_;
#line 101 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = gtk_list_store_new ((gint) TRACKER_TAGS_VIEW_COL_N_COLUMNS, G_TYPE_INT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, -1);
#line 101 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->store);
#line 101 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->store = _tmp7_;
#line 108 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_create_ui (self);
#line 90 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	__g_list_free_g_free0 (_files);
#line 90 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return self;
#line 1102 "tracker-tags-view.c"
}


TrackerTagsView* tracker_tags_view_new (GList* _files) {
#line 90 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return tracker_tags_view_construct (TYPE_TRACKER_TAGS_VIEW, _files);
#line 1109 "tracker-tags-view.c"
}


void tracker_tags_view_hide_label (TrackerTagsView* self) {
	GtkLabel* _tmp0_;
#line 134 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 135 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->label;
#line 135 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_hide ((GtkWidget*) _tmp0_);
#line 1121 "tracker-tags-view.c"
}


void tracker_tags_view_set_files (TrackerTagsView* self, GList* _files) {
	GList* _tmp0_;
	GList* _tmp3_;
#line 138 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 139 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->files;
#line 139 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp0_ != NULL) {
#line 1134 "tracker-tags-view.c"
		GList* _tmp1_;
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp1_ = self->priv->files;
#line 1138 "tracker-tags-view.c"
		{
			GList* url_collection = NULL;
			GList* url_it = NULL;
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			url_collection = _tmp1_;
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			for (url_it = url_collection; url_it != NULL; url_it = url_it->next) {
#line 1146 "tracker-tags-view.c"
				gchar* _tmp2_;
				gchar* url = NULL;
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp2_ = g_strdup ((const gchar*) url_it->data);
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				url = _tmp2_;
#line 1153 "tracker-tags-view.c"
				{
#line 141 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (url);
#line 141 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					url = NULL;
#line 140 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (url);
#line 1161 "tracker-tags-view.c"
				}
			}
		}
#line 144 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		__g_list_free_g_free0 (self->priv->files);
#line 144 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->files = NULL;
#line 1169 "tracker-tags-view.c"
	}
#line 147 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = _files;
#line 147 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp3_ != NULL) {
#line 1175 "tracker-tags-view.c"
		GList* _tmp4_;
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = _files;
#line 1179 "tracker-tags-view.c"
		{
			GList* url_collection = NULL;
			GList* url_it = NULL;
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			url_collection = _tmp4_;
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			for (url_it = url_collection; url_it != NULL; url_it = url_it->next) {
#line 1187 "tracker-tags-view.c"
				gchar* _tmp5_;
				gchar* url = NULL;
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp5_ = g_strdup ((const gchar*) url_it->data);
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				url = _tmp5_;
#line 1194 "tracker-tags-view.c"
				{
					const gchar* _tmp6_;
					gchar* _tmp7_;
#line 149 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tmp6_ = url;
#line 149 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tmp7_ = g_strdup (_tmp6_);
#line 149 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					self->priv->files = g_list_prepend (self->priv->files, _tmp7_);
#line 148 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (url);
#line 1206 "tracker-tags-view.c"
				}
			}
		}
#line 152 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->files = g_list_reverse (self->priv->files);
#line 1212 "tracker-tags-view.c"
	}
#line 155 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_update_for_files (self);
#line 1216 "tracker-tags-view.c"
}


static Block1Data* block1_data_ref (Block1Data* _data1_) {
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_atomic_int_inc (&_data1_->_ref_count_);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return _data1_;
#line 1225 "tracker-tags-view.c"
}


static void block1_data_unref (void * _userdata_) {
	Block1Data* _data1_;
	_data1_ = (Block1Data*) _userdata_;
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
#line 1234 "tracker-tags-view.c"
		TrackerTagsView* self;
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self = _data1_->self;
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data1_->msg);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_slice_free (Block1Data, _data1_);
#line 1244 "tracker-tags-view.c"
	}
}


static void __lambda5_ (Block1Data* _data1_) {
	TrackerTagsView* self;
#line 168 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = _data1_->self;
#line 169 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_destroy ((GtkWidget*) _data1_->msg);
#line 1255 "tracker-tags-view.c"
}


static void ___lambda5__gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) {
#line 168 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	__lambda5_ (self);
#line 1262 "tracker-tags-view.c"
}


static void tracker_tags_view_show_error_dialog (TrackerTagsView* self, const gchar* action, GError* e) {
	Block1Data* _data1_;
	const gchar* _tmp0_ = NULL;
	GError* _tmp1_;
	const gchar* _tmp2_;
	gchar* str;
	gchar* _tmp5_;
	const gchar* _tmp6_;
	GtkMessageDialog* _tmp7_;
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (action != NULL);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data1_ = g_slice_new0 (Block1Data);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data1_->_ref_count_ = 1;
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data1_->self = g_object_ref (self);
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = e;
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _tmp1_->message;
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp2_ != NULL) {
#line 1291 "tracker-tags-view.c"
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp3_ = e;
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = _tmp3_->message;
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp0_ = _tmp4_;
#line 1300 "tracker-tags-view.c"
	} else {
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp0_ = _ ("No error given");
#line 1304 "tracker-tags-view.c"
	}
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = g_strdup (_tmp0_);
#line 159 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	str = _tmp5_;
#line 161 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp6_ = action;
#line 161 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = (GtkMessageDialog*) gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", _tmp6_);
#line 161 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp7_);
#line 161 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data1_->msg = _tmp7_;
#line 167 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_message_dialog_format_secondary_text (_data1_->msg, "%s", str);
#line 168 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_data ((GtkDialog*) _data1_->msg, "response", (GCallback) ___lambda5__gtk_dialog_response, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
#line 172 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_dialog_run ((GtkDialog*) _data1_->msg);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (str);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	block1_data_unref (_data1_);
#line 158 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data1_ = NULL;
#line 1330 "tracker-tags-view.c"
}


void tracker_tags_view_button_remove_clicked_cb (GtkButton* source, TrackerTagsView* self) {
	GtkTreeIter iter = {0};
	GtkTreeModel* model = NULL;
	GtkTreeSelection* selection;
	GtkTreeView* _tmp0_;
	GtkTreeSelection* _tmp1_;
	GtkTreeSelection* _tmp2_;
	GtkTreeSelection* _tmp3_;
	GtkTreeModel* _tmp4_ = NULL;
	GtkTreeIter _tmp5_ = {0};
	gboolean _tmp6_;
	GtkTreeModel* _tmp7_;
#line 176 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 176 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 177 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:177: Remove clicked");
#line 182 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->view;
#line 182 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_tree_view_get_selection (_tmp0_);
#line 182 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 182 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	selection = _tmp2_;
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = selection;
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp6_ = gtk_tree_selection_get_selected (_tmp3_, &_tmp4_, &_tmp5_);
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = _g_object_ref0 (_tmp4_);
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	model = _tmp7_;
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	iter = _tmp5_;
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp6_) {
#line 1374 "tracker-tags-view.c"
		gchar* id = NULL;
		GtkTreeModel* _tmp8_;
		GtkTreeIter _tmp9_;
		TagData* td;
		const gchar* _tmp10_;
		GtkTreeIter _tmp11_;
		TagData* _tmp12_;
		TagData* _tmp13_;
		TagData* _tmp14_;
		TagData* _tmp15_;
#line 187 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp8_ = model;
#line 187 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp9_ = iter;
#line 187 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_tree_model_get (_tmp8_, &_tmp9_, TRACKER_TAGS_VIEW_COL_TAG_ID, &id, -1, -1);
#line 189 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp10_ = id;
#line 189 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp11_ = iter;
#line 189 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp12_ = tag_data_new (_tmp10_, &_tmp11_, FALSE, TRUE, 1, self);
#line 189 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		td = _tmp12_;
#line 190 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp13_ = td;
#line 190 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp14_ = _tag_data_ref0 (_tmp13_);
#line 190 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->tag_data_requests = g_list_prepend (self->priv->tag_data_requests, _tmp14_);
#line 192 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp15_ = td;
#line 192 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_remove_tag (self, _tmp15_, NULL, NULL);
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (td);
#line 184 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (id);
#line 1413 "tracker-tags-view.c"
	}
#line 176 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (selection);
#line 176 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 1419 "tracker-tags-view.c"
}


void tracker_tags_view_button_add_clicked_cb (GtkButton* source, TrackerTagsView* self) {
	const gchar* tag;
	GtkEntry* _tmp0_;
	const gchar* _tmp1_;
#line 197 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 197 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 198 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:198: Add clicked");
#line 199 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->entry;
#line 199 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_entry_get_text (_tmp0_);
#line 199 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tag = _tmp1_;
#line 200 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_add_tag (self, tag, NULL, NULL);
#line 1441 "tracker-tags-view.c"
}


void tracker_tags_view_entry_tag_activated_cb (GtkEntry* source, TrackerTagsView* self) {
	GtkButton* _tmp0_;
#line 204 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 204 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 205 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:205: Entry activated");
#line 206 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->button_add;
#line 206 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_activate (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget));
#line 1457 "tracker-tags-view.c"
}


void tracker_tags_view_entry_tag_changed_cb (GtkEditable* source, TrackerTagsView* self) {
	const gchar* tag;
	GtkEntry* _tmp0_;
	const gchar* _tmp1_;
	GtkTreeIter iter = {0};
	const gchar* _tmp2_;
	GtkTreeIter _tmp3_ = {0};
	gboolean _tmp4_;
#line 210 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 210 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 211 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:211: Entry changed");
#line 213 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->entry;
#line 213 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_entry_get_text (_tmp0_);
#line 213 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tag = _tmp1_;
#line 216 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = tag;
#line 216 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp4_ = tracker_tags_view_find_tag (self, _tmp2_, &_tmp3_);
#line 216 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	iter = _tmp3_;
#line 216 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp4_) {
#line 1489 "tracker-tags-view.c"
		GtkButton* _tmp5_;
#line 217 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp5_ = self->priv->button_add;
#line 217 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_widget_get_type (), GtkWidget), FALSE);
#line 1495 "tracker-tags-view.c"
	} else {
		gboolean _tmp6_ = FALSE;
		const gchar* _tmp7_;
		GtkButton* _tmp9_;
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp7_ = tag;
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_tmp7_ != NULL) {
#line 1504 "tracker-tags-view.c"
			const gchar* _tmp8_;
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp8_ = tag;
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp6_ = g_strcmp0 (_tmp8_, "") != 0;
#line 1510 "tracker-tags-view.c"
		} else {
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp6_ = FALSE;
#line 1514 "tracker-tags-view.c"
		}
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp9_ = self->priv->button_add;
#line 219 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_widget_get_type (), GtkWidget), _tmp6_);
#line 1520 "tracker-tags-view.c"
	}
}


void tracker_tags_view_treeview_tags_cell_toggled_cb (GtkCellRendererToggle* source, const gchar* path_string, TrackerTagsView* self) {
	GtkTreePath* path;
	const gchar* _tmp0_;
	GtkTreePath* _tmp1_;
#line 224 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 224 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 224 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (path_string != NULL);
#line 225 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:225: Treeview row cell toggled");
#line 226 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = path_string;
#line 226 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_tree_path_new_from_string (_tmp0_);
#line 226 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	path = _tmp1_;
#line 227 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_model_toggle_row (self, path, NULL, NULL);
#line 224 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_gtk_tree_path_free0 (path);
#line 1547 "tracker-tags-view.c"
}


void tracker_tags_view_treeview_tags_row_selected_cb (GtkTreeSelection* selection, TrackerTagsView* self) {
	GtkTreeIter iter = {0};
	GtkTreeModel* model = NULL;
	GtkTreeSelection* _tmp0_;
	GtkTreeModel* _tmp1_ = NULL;
	GtkTreeIter _tmp2_ = {0};
	gboolean _tmp3_;
	GtkTreeModel* _tmp4_;
#line 231 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 231 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (selection != NULL);
#line 232 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:232: Treeview row selected");
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = selection;
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = gtk_tree_selection_get_selected (_tmp0_, &_tmp1_, &_tmp2_);
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp4_ = _g_object_ref0 (_tmp1_);
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	model = _tmp4_;
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	iter = _tmp2_;
#line 237 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp3_) {
#line 1579 "tracker-tags-view.c"
		GtkButton* _tmp5_;
#line 238 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp5_ = self->priv->button_remove;
#line 238 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive ((GtkWidget*) _tmp5_, TRUE);
#line 1585 "tracker-tags-view.c"
	} else {
		GtkButton* _tmp6_;
#line 240 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = self->priv->button_remove;
#line 240 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive ((GtkWidget*) _tmp6_, FALSE);
#line 1592 "tracker-tags-view.c"
	}
#line 231 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 1596 "tracker-tags-view.c"
}


void tracker_tags_view_treeview_tags_row_activated_cb (GtkTreeView* source, GtkTreePath* path, GtkTreeViewColumn* column, TrackerTagsView* self) {
	GtkTreePath* _tmp0_;
#line 245 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 245 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (source != NULL);
#line 245 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (path != NULL);
#line 245 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (column != NULL);
#line 246 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:246: Treeview row activated");
#line 247 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = path;
#line 247 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_model_toggle_row (self, _tmp0_, NULL, NULL);
#line 1616 "tracker-tags-view.c"
}


static void tracker_tags_view_treeview_tags_toggle_cell_data_func (GtkCellLayout* layout, GtkCellRenderer* cell, GtkTreeModel* model, GtkTreeIter* iter, TrackerTagsView* self) {
	gint selection = 0;
	GtkTreeModel* _tmp0_;
	GtkTreeIter _tmp1_;
	GtkCellRenderer* _tmp2_;
	GtkCellRenderer* _tmp3_;
#line 251 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 251 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (layout != NULL);
#line 251 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (cell != NULL);
#line 251 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (model != NULL);
#line 251 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (iter != NULL);
#line 254 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = model;
#line 254 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = *iter;
#line 254 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_model_get (_tmp0_, &_tmp1_, TRACKER_TAGS_VIEW_COL_SELECTION, &selection, -1, -1);
#line 255 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = cell;
#line 255 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_renderer_toggle_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_cell_renderer_toggle_get_type (), GtkCellRendererToggle), selection == ((gint) TRACKER_TAGS_VIEW_SELECTION_TRUE));
#line 256 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = cell;
#line 256 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_cell_renderer_toggle_get_type (), GtkCellRendererToggle), "inconsistent", selection == ((gint) TRACKER_TAGS_VIEW_SELECTION_INCONSISTENT), NULL);
#line 1650 "tracker-tags-view.c"
}


static void _tracker_tags_view_entry_tag_changed_cb_gtk_editable_changed (GtkEditable* _sender, gpointer self) {
#line 292 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_entry_tag_changed_cb (_sender, (TrackerTagsView*) self);
#line 1657 "tracker-tags-view.c"
}


static void _tracker_tags_view_button_add_clicked_cb_gtk_button_clicked (GtkButton* _sender, gpointer self) {
#line 293 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_button_add_clicked_cb (_sender, (TrackerTagsView*) self);
#line 1664 "tracker-tags-view.c"
}


static void _tracker_tags_view_button_remove_clicked_cb_gtk_button_clicked (GtkButton* _sender, gpointer self) {
#line 294 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_button_remove_clicked_cb (_sender, (TrackerTagsView*) self);
#line 1671 "tracker-tags-view.c"
}


static void _tracker_tags_view_treeview_tags_cell_toggled_cb_gtk_cell_renderer_toggle_toggled (GtkCellRendererToggle* _sender, const gchar* path, gpointer self) {
#line 304 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_treeview_tags_cell_toggled_cb (_sender, path, (TrackerTagsView*) self);
#line 1678 "tracker-tags-view.c"
}


static void _tracker_tags_view_treeview_tags_toggle_cell_data_func_gtk_cell_layout_data_func (GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* tree_model, GtkTreeIter* iter, gpointer self) {
#line 313 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_treeview_tags_toggle_cell_data_func (cell_layout, cell, tree_model, iter, (TrackerTagsView*) self);
#line 1685 "tracker-tags-view.c"
}


static void _tracker_tags_view_treeview_tags_row_selected_cb_gtk_tree_selection_changed (GtkTreeSelection* _sender, gpointer self) {
#line 350 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_treeview_tags_row_selected_cb (_sender, (TrackerTagsView*) self);
#line 1692 "tracker-tags-view.c"
}


static void _tracker_tags_view_treeview_tags_row_activated_cb_gtk_tree_view_row_activated (GtkTreeView* _sender, GtkTreePath* path, GtkTreeViewColumn* column, gpointer self) {
#line 357 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_treeview_tags_row_activated_cb (_sender, path, column, (TrackerTagsView*) self);
#line 1699 "tracker-tags-view.c"
}


static void tracker_tags_view_create_ui (TrackerTagsView* self) {
	GtkBuilder* builder;
	GtkBuilder* _tmp0_;
	GObject* _tmp5_;
	GtkBox* _tmp6_;
	GObject* _tmp7_;
	GtkLabel* _tmp8_;
	GObject* _tmp9_;
	GtkEntry* _tmp10_;
	GObject* _tmp11_;
	GtkButton* _tmp12_;
	GObject* _tmp13_;
	GtkButton* _tmp14_;
	GObject* _tmp15_;
	GtkScrolledWindow* _tmp16_;
	GObject* _tmp17_;
	GtkTreeView* _tmp18_;
	GtkEntry* _tmp19_;
	GtkButton* _tmp20_;
	GtkButton* _tmp21_;
	GtkTreeViewColumn* col = NULL;
	GtkCellRenderer* renderer = NULL;
	GtkCellRendererToggle* _tmp22_;
	GtkCellRenderer* _tmp23_;
	GtkCellRenderer* _tmp24_;
	GtkCellRenderer* _tmp25_;
	GtkCellRenderer* _tmp26_;
	GtkTreeViewColumn* _tmp27_;
	GtkTreeViewColumn* _tmp28_;
	GtkTreeViewColumn* _tmp29_;
	GtkTreeViewColumn* _tmp30_;
	GtkTreeViewColumn* _tmp31_;
	GtkTreeViewColumn* _tmp32_;
	GtkCellRenderer* _tmp33_;
	GtkTreeViewColumn* _tmp34_;
	GtkCellRenderer* _tmp35_;
	GtkTreeView* _tmp36_;
	GtkTreeViewColumn* _tmp37_;
	GtkCellRendererText* _tmp38_;
	GtkCellRenderer* _tmp39_;
	GtkCellRenderer* _tmp40_;
	GtkCellRenderer* _tmp41_;
	GtkCellRenderer* _tmp42_;
	GtkTreeViewColumn* _tmp43_;
	GtkTreeViewColumn* _tmp44_;
	GtkTreeViewColumn* _tmp45_;
	GtkTreeViewColumn* _tmp46_;
	GtkTreeViewColumn* _tmp47_;
	GtkTreeViewColumn* _tmp48_;
	GtkCellRenderer* _tmp49_;
	GtkTreeViewColumn* _tmp50_;
	GtkCellRenderer* _tmp51_;
	GtkTreeView* _tmp52_;
	GtkTreeViewColumn* _tmp53_;
	GtkCellRendererText* _tmp54_;
	GtkCellRenderer* _tmp55_;
	GtkCellRenderer* _tmp56_;
	GtkTreeViewColumn* _tmp57_;
	GtkTreeViewColumn* _tmp58_;
	GtkTreeViewColumn* _tmp59_;
	GtkTreeViewColumn* _tmp60_;
	GtkTreeViewColumn* _tmp61_;
	GtkTreeViewColumn* _tmp62_;
	GtkCellRenderer* _tmp63_;
	GtkTreeViewColumn* _tmp64_;
	GtkCellRenderer* _tmp65_;
	GtkTreeView* _tmp66_;
	GtkTreeViewColumn* _tmp67_;
	GtkTreeSelection* selection;
	GtkTreeView* _tmp68_;
	GtkTreeSelection* _tmp69_;
	GtkTreeSelection* _tmp70_;
	GtkTreeModel* model;
	GtkListStore* _tmp71_;
	GtkTreeModel* _tmp72_;
	GtkTreeSortable* sortable;
	GtkTreeSortable* _tmp73_;
	GtkTreeView* _tmp74_;
	GtkTreeView* _tmp75_;
	GtkBox* _tmp76_;
	GtkBox* _tmp77_;
	GError * _inner_error_ = NULL;
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 260 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = gtk_builder_new ();
#line 260 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	builder = _tmp0_;
#line 1791 "tracker-tags-view.c"
	{
#line 263 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:263: Trying to use UI file:'%s'", SRCDIR TRACKER_TAGS_VIEW_UI_FILE);
#line 264 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_builder_add_from_file (builder, SRCDIR TRACKER_TAGS_VIEW_UI_FILE, &_inner_error_);
#line 264 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1799 "tracker-tags-view.c"
			goto __catch14_g_error;
		}
	}
	goto __finally14;
	__catch14_g_error:
	{
		GError* e = NULL;
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		e = _inner_error_;
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_inner_error_ = NULL;
#line 1811 "tracker-tags-view.c"
		{
#line 268 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:268: Trying to use UI file:'%s'", TRACKER_UI_DIR TRACKER_TAGS_VIEW_UI_FILE);
#line 269 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_builder_add_from_file (builder, TRACKER_UI_DIR TRACKER_TAGS_VIEW_UI_FILE, &_inner_error_);
#line 269 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1819 "tracker-tags-view.c"
				goto __catch15_g_error;
			}
		}
		goto __finally15;
		__catch15_g_error:
		{
			GError* e = NULL;
			GtkMessageDialog* msg;
			GError* _tmp1_;
			const gchar* _tmp2_;
			GtkMessageDialog* _tmp3_;
			GtkMessageDialog* _tmp4_;
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			e = _inner_error_;
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_inner_error_ = NULL;
#line 271 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp1_ = e;
#line 271 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp2_ = _tmp1_->message;
#line 271 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp3_ = (GtkMessageDialog*) gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_CANCEL, "Failed to load UI file, %s\n", _tmp2_);
#line 271 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_object_ref_sink (_tmp3_);
#line 271 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			msg = _tmp3_;
#line 277 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp4_ = msg;
#line 277 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_dialog_run ((GtkDialog*) _tmp4_);
#line 278 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_main_quit ();
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_g_object_unref0 (msg);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_g_error_free0 (e);
#line 1856 "tracker-tags-view.c"
		}
		__finally15:
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_g_error_free0 (e);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_g_error_free0 (e);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_g_object_unref0 (builder);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_clear_error (&_inner_error_);
#line 267 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return;
#line 1873 "tracker-tags-view.c"
		}
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (e);
#line 1877 "tracker-tags-view.c"
	}
	__finally14:
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (builder);
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_inner_error_);
#line 262 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return;
#line 1890 "tracker-tags-view.c"
	}
#line 283 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = gtk_builder_get_object (builder, "vbox_tags");
#line 283 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gtk_box_get_type ()) ? ((GtkBox*) _tmp5_) : NULL);
#line 283 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->vbox);
#line 283 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->vbox = _tmp6_;
#line 284 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = gtk_builder_get_object (builder, "label_tag");
#line 284 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp8_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp7_, gtk_label_get_type ()) ? ((GtkLabel*) _tmp7_) : NULL);
#line 284 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->label);
#line 284 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->label = _tmp8_;
#line 285 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp9_ = gtk_builder_get_object (builder, "entry_tag");
#line 285 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp10_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, gtk_entry_get_type ()) ? ((GtkEntry*) _tmp9_) : NULL);
#line 285 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->entry);
#line 285 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->entry = _tmp10_;
#line 286 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp11_ = gtk_builder_get_object (builder, "button_add");
#line 286 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp12_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp11_, gtk_button_get_type ()) ? ((GtkButton*) _tmp11_) : NULL);
#line 286 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->button_add);
#line 286 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->button_add = _tmp12_;
#line 287 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp13_ = gtk_builder_get_object (builder, "button_remove");
#line 287 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp14_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp13_, gtk_button_get_type ()) ? ((GtkButton*) _tmp13_) : NULL);
#line 287 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->button_remove);
#line 287 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->button_remove = _tmp14_;
#line 288 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp15_ = gtk_builder_get_object (builder, "scrolled_window_tags");
#line 288 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp16_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp15_, gtk_scrolled_window_get_type ()) ? ((GtkScrolledWindow*) _tmp15_) : NULL);
#line 288 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->scrolled_window);
#line 288 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->scrolled_window = _tmp16_;
#line 289 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp17_ = gtk_builder_get_object (builder, "treeview_tags");
#line 289 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp18_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp17_, gtk_tree_view_get_type ()) ? ((GtkTreeView*) _tmp17_) : NULL);
#line 289 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->view);
#line 289 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv->view = _tmp18_;
#line 292 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp19_ = self->priv->entry;
#line 292 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp19_, GTK_TYPE_EDITABLE, GtkEditable), "changed", (GCallback) _tracker_tags_view_entry_tag_changed_cb_gtk_editable_changed, self, 0);
#line 293 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp20_ = self->priv->button_add;
#line 293 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (_tmp20_, "clicked", (GCallback) _tracker_tags_view_button_add_clicked_cb_gtk_button_clicked, self, 0);
#line 294 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp21_ = self->priv->button_remove;
#line 294 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (_tmp21_, "clicked", (GCallback) _tracker_tags_view_button_remove_clicked_cb_gtk_button_clicked, self, 0);
#line 301 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp22_ = (GtkCellRendererToggle*) gtk_cell_renderer_toggle_new ();
#line 301 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp22_);
#line 301 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (renderer);
#line 301 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	renderer = (GtkCellRenderer*) _tmp22_;
#line 302 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp23_ = renderer;
#line 302 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp23_, "xpad", (guint) 5, NULL);
#line 303 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp24_ = renderer;
#line 303 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp24_, "ypad", (guint) 5, NULL);
#line 304 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp25_ = renderer;
#line 304 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, gtk_cell_renderer_toggle_get_type (), GtkCellRendererToggle), "toggled", (GCallback) _tracker_tags_view_treeview_tags_cell_toggled_cb_gtk_cell_renderer_toggle_toggled, self, 0);
#line 305 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp26_ = renderer;
#line 305 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_renderer_toggle_set_radio (G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, gtk_cell_renderer_toggle_get_type (), GtkCellRendererToggle), FALSE);
#line 307 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp27_ = gtk_tree_view_column_new ();
#line 307 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp27_);
#line 307 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (col);
#line 307 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	col = _tmp27_;
#line 308 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp28_ = col;
#line 308 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_title (_tmp28_, "-");
#line 309 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp29_ = col;
#line 309 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_resizable (_tmp29_, FALSE);
#line 310 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp30_ = col;
#line 310 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_sizing (_tmp30_, GTK_TREE_VIEW_COLUMN_FIXED);
#line 311 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp31_ = col;
#line 311 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_fixed_width (_tmp31_, 25);
#line 312 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp32_ = col;
#line 312 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp33_ = renderer;
#line 312 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_pack_start ((GtkCellLayout*) _tmp32_, _tmp33_, FALSE);
#line 313 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp34_ = col;
#line 313 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp35_ = renderer;
#line 313 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_set_cell_data_func ((GtkCellLayout*) _tmp34_, _tmp35_, _tracker_tags_view_treeview_tags_toggle_cell_data_func_gtk_cell_layout_data_func, g_object_ref (self), g_object_unref);
#line 314 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp36_ = self->priv->view;
#line 314 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp37_ = col;
#line 314 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_append_column (_tmp36_, _tmp37_);
#line 317 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp38_ = (GtkCellRendererText*) gtk_cell_renderer_text_new ();
#line 317 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp38_);
#line 317 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (renderer);
#line 317 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	renderer = (GtkCellRenderer*) _tmp38_;
#line 318 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp39_ = renderer;
#line 318 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp39_, "xpad", (guint) 5, NULL);
#line 319 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp40_ = renderer;
#line 319 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp40_, "ypad", (guint) 5, NULL);
#line 320 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp41_ = renderer;
#line 320 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp41_, gtk_cell_renderer_text_get_type (), GtkCellRendererText), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
#line 321 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp42_ = renderer;
#line 321 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp42_, gtk_cell_renderer_text_get_type (), GtkCellRendererText), "ellipsize-set", TRUE, NULL);
#line 323 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp43_ = gtk_tree_view_column_new ();
#line 323 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp43_);
#line 323 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (col);
#line 323 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	col = _tmp43_;
#line 324 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp44_ = col;
#line 324 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_title (_tmp44_, _ ("Name"));
#line 325 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp45_ = col;
#line 325 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_resizable (_tmp45_, TRUE);
#line 326 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp46_ = col;
#line 326 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_sizing (_tmp46_, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
#line 327 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp47_ = col;
#line 327 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_expand (_tmp47_, TRUE);
#line 328 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp48_ = col;
#line 328 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp49_ = renderer;
#line 328 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_pack_start ((GtkCellLayout*) _tmp48_, _tmp49_, TRUE);
#line 329 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp50_ = col;
#line 329 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp51_ = renderer;
#line 329 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_add_attribute ((GtkCellLayout*) _tmp50_, _tmp51_, "text", (gint) TRACKER_TAGS_VIEW_COL_TAG_NAME);
#line 331 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp52_ = self->priv->view;
#line 331 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp53_ = col;
#line 331 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_append_column (_tmp52_, _tmp53_);
#line 334 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp54_ = (GtkCellRendererText*) gtk_cell_renderer_text_new ();
#line 334 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp54_);
#line 334 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (renderer);
#line 334 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	renderer = (GtkCellRenderer*) _tmp54_;
#line 335 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp55_ = renderer;
#line 335 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp55_, "xpad", (guint) 5, NULL);
#line 336 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp56_ = renderer;
#line 336 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_set (_tmp56_, "ypad", (guint) 5, NULL);
#line 338 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp57_ = gtk_tree_view_column_new ();
#line 338 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_ref_sink (_tmp57_);
#line 338 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (col);
#line 338 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	col = _tmp57_;
#line 339 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp58_ = col;
#line 339 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_title (_tmp58_, "-");
#line 340 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp59_ = col;
#line 340 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_resizable (_tmp59_, FALSE);
#line 341 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp60_ = col;
#line 341 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_sizing (_tmp60_, GTK_TREE_VIEW_COLUMN_FIXED);
#line 342 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp61_ = col;
#line 342 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_column_set_fixed_width (_tmp61_, 50);
#line 343 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp62_ = col;
#line 343 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp63_ = renderer;
#line 343 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_pack_end ((GtkCellLayout*) _tmp62_, _tmp63_, FALSE);
#line 344 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp64_ = col;
#line 344 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp65_ = renderer;
#line 344 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_cell_layout_add_attribute ((GtkCellLayout*) _tmp64_, _tmp65_, "text", (gint) TRACKER_TAGS_VIEW_COL_TAG_COUNT);
#line 346 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp66_ = self->priv->view;
#line 346 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp67_ = col;
#line 346 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_append_column (_tmp66_, _tmp67_);
#line 349 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp68_ = self->priv->view;
#line 349 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp69_ = gtk_tree_view_get_selection (_tmp68_);
#line 349 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp70_ = _g_object_ref0 (_tmp69_);
#line 349 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	selection = _tmp70_;
#line 350 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (selection, "changed", (GCallback) _tracker_tags_view_treeview_tags_row_selected_cb_gtk_tree_selection_changed, self, 0);
#line 353 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp71_ = self->priv->store;
#line 353 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp72_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp71_, GTK_TYPE_TREE_MODEL) ? ((GtkTreeModel*) _tmp71_) : NULL);
#line 353 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	model = _tmp72_;
#line 354 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp73_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (model, GTK_TYPE_TREE_SORTABLE) ? ((GtkTreeSortable*) model) : NULL);
#line 354 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	sortable = _tmp73_;
#line 356 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp74_ = self->priv->view;
#line 356 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_view_set_model (_tmp74_, model);
#line 357 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp75_ = self->priv->view;
#line 357 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_signal_connect_object (_tmp75_, "row-activated", (GCallback) _tracker_tags_view_treeview_tags_row_activated_cb_gtk_tree_view_row_activated, self, 0);
#line 358 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_sortable_set_sort_column_id (sortable, 2, GTK_SORT_ASCENDING);
#line 361 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp76_ = self->priv->vbox;
#line 361 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_unparent ((GtkWidget*) _tmp76_);
#line 362 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp77_ = self->priv->vbox;
#line 362 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_box_pack_start (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_box_get_type (), GtkBox), (GtkWidget*) _tmp77_, TRUE, TRUE, (guint) 0);
#line 366 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_update_for_files (self);
#line 368 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags (self, NULL, NULL);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (sortable);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (selection);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (renderer);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (col);
#line 259 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (builder);
#line 2204 "tracker-tags-view.c"
}


static void tracker_tags_view_update_for_files (TrackerTagsView* self) {
	GList* _tmp0_;
#line 371 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 372 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->files;
#line 372 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp0_ != NULL) {
#line 2216 "tracker-tags-view.c"
		gchar* str;
		GList* _tmp1_;
		guint _tmp2_;
		GList* _tmp3_;
		guint _tmp4_;
		gchar* _tmp5_;
		GtkLabel* _tmp6_;
		const gchar* _tmp7_;
		GtkBox* _tmp8_;
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp1_ = self->priv->files;
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp2_ = g_list_length (_tmp1_);
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp3_ = self->priv->files;
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = g_list_length (_tmp3_);
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp5_ = g_strdup_printf (g_dngettext (NULL, "_Set the tags you want to associate with the %d selected item:", "_Set the tags you want to associate with the %d selected items:", (gulong) _tmp2_), (gint) _tmp4_);
#line 373 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		str = _tmp5_;
#line 377 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = self->priv->label;
#line 377 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp7_ = str;
#line 377 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_label_set_text_with_mnemonic (_tmp6_, _tmp7_);
#line 378 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp8_ = self->priv->vbox;
#line 378 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive ((GtkWidget*) _tmp8_, TRUE);
#line 372 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (str);
#line 2250 "tracker-tags-view.c"
	} else {
		GtkLabel* _tmp9_;
		GtkBox* _tmp10_;
#line 380 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp9_ = self->priv->label;
#line 380 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_label_set_text (_tmp9_, _ ("No items currently selected"));
#line 381 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp10_ = self->priv->vbox;
#line 381 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_widget_set_sensitive ((GtkWidget*) _tmp10_, FALSE);
#line 2262 "tracker-tags-view.c"
	}
#line 384 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags_for_files (self, NULL, NULL);
#line 2266 "tracker-tags-view.c"
}


static void tracker_tags_view_model_toggle_row_data_free (gpointer _data) {
	TrackerTagsViewModelToggleRowData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_gtk_tree_path_free0 (_data_->path);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewModelToggleRowData, _data_);
#line 2279 "tracker-tags-view.c"
}


static gpointer _gtk_tree_path_copy0 (gpointer self) {
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return self ? gtk_tree_path_copy (self) : NULL;
#line 2286 "tracker-tags-view.c"
}


static void tracker_tags_view_model_toggle_row (TrackerTagsView* self, GtkTreePath* path, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewModelToggleRowData* _data_;
	TrackerTagsView* _tmp0_;
	GtkTreePath* _tmp1_;
	GtkTreePath* _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewModelToggleRowData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_model_toggle_row_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = path;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _gtk_tree_path_copy0 (_tmp1_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_gtk_tree_path_free0 (_data_->path);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->path = _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_model_toggle_row_co (_data_);
#line 2315 "tracker-tags-view.c"
}


static void tracker_tags_view_model_toggle_row_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewModelToggleRowData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 2323 "tracker-tags-view.c"
}


static void tracker_tags_view_model_toggle_row_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewModelToggleRowData* _data_;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_model_toggle_row_co (_data_);
#line 2337 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_model_toggle_row_co (TrackerTagsViewModelToggleRowData* _data_) {
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 2346 "tracker-tags-view.c"
		goto _state_0;
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 2350 "tracker-tags-view.c"
		goto _state_1;
		default:
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 2355 "tracker-tags-view.c"
	}
	_state_0:
#line 393 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = _data_->self->priv->view;
#line 393 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp1_ = gtk_tree_view_get_model (_data_->_tmp0_);
#line 393 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp2_ = _g_object_ref0 (_data_->_tmp1_);
#line 393 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->model);
#line 393 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->model = _data_->_tmp2_;
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp3_ = _data_->model;
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp4_ = _data_->path;
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	memset (&_data_->_tmp5_, 0, sizeof (GtkTreeIter));
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp6_ = gtk_tree_model_get_iter (_data_->_tmp3_, &_data_->_tmp5_, _data_->_tmp4_);
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->iter = _data_->_tmp5_;
#line 395 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp6_ == FALSE) {
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag);
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->id);
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->model);
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2394 "tracker-tags-view.c"
			}
		}
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 396 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 2401 "tracker-tags-view.c"
	}
#line 399 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp7_ = _data_->model;
#line 399 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp8_ = _data_->iter;
#line 399 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_model_get (_data_->_tmp7_, &_data_->_tmp8_, TRACKER_TAGS_VIEW_COL_SELECTION, &_data_->selection, TRACKER_TAGS_VIEW_COL_TAG_ID, &_data_->id, TRACKER_TAGS_VIEW_COL_TAG_NAME, &_data_->tag, -1, -1);
#line 405 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp10_ = _data_->selection;
#line 405 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp10_ == ((gint) TRACKER_TAGS_VIEW_SELECTION_FALSE)) {
#line 405 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp9_ = TRACKER_TAGS_VIEW_SELECTION_TRUE;
#line 2415 "tracker-tags-view.c"
	} else {
#line 405 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp9_ = TRACKER_TAGS_VIEW_SELECTION_FALSE;
#line 2419 "tracker-tags-view.c"
	}
#line 405 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->new_value = (gint) _data_->_tmp9_;
#line 407 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp11_ = _data_->tag;
#line 407 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp12_ = tracker_tags_view_sparql_get_escaped_string (_data_->self, _data_->_tmp11_);
#line 407 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->tag_escaped = _data_->_tmp12_;
#line 408 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp13_ = tracker_tags_view_sparql_get_filter_string (_data_->self, NULL);
#line 408 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->filter = _data_->_tmp13_;
#line 409 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = NULL;
#line 414 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp14_ = _data_->new_value;
#line 414 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp14_ != ((gint) TRACKER_TAGS_VIEW_SELECTION_FALSE)) {
#line 416 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp15_ = _data_->tag_escaped;
#line 416 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp16_ = _data_->filter;
#line 416 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp17_ = g_strdup_printf ("INSERT {\n" \
"			           ?urn nao:hasTag ?label\n" \
"			         } WHERE {\n" \
"			           ?urn nie:url ?f .\n" \
"			           ?label nao:prefLabel %s .\n" \
"			           %s\n" \
"			         }", _data_->_tmp15_, _data_->_tmp16_);
#line 416 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 416 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->query = _data_->_tmp17_;
#line 2449 "tracker-tags-view.c"
	} else {
#line 425 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp18_ = _data_->tag_escaped;
#line 425 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp19_ = _data_->filter;
#line 425 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp20_ = g_strdup_printf ("DELETE {\n" \
"			           ?urn nao:hasTag ?label\n" \
"			         } WHERE {\n" \
"			           ?urn nie:url ?f .\n" \
"			           ?label nao:prefLabel %s .\n" \
"			           %s\n" \
"			         }", _data_->_tmp18_, _data_->_tmp19_);
#line 425 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 425 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->query = _data_->_tmp20_;
#line 436 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp21_ = _data_->id;
#line 436 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp22_ = _data_->iter;
#line 436 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp23_ = tag_data_new (_data_->_tmp21_, &_data_->_tmp22_, FALSE, TRUE, 1, _data_->self);
#line 436 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 436 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->td = _data_->_tmp23_;
#line 437 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp24_ = _data_->td;
#line 437 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp25_ = _tag_data_ref0 (_data_->_tmp24_);
#line 437 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->self->priv->tag_data_requests = g_list_prepend (_data_->self->priv->tag_data_requests, _data_->_tmp25_);
#line 439 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp26_ = _data_->td;
#line 439 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_query_files_for_tag_id (_data_->self, _data_->_tmp26_, NULL, NULL);
#line 2481 "tracker-tags-view.c"
	}
#line 442 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->filter);
#line 442 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->filter = NULL;
#line 443 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->tag_escaped);
#line 443 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->tag_escaped = NULL;
#line 445 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp27_ = _data_->self->priv->connection;
#line 445 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp27_ == NULL) {
#line 446 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:446: Can't update tags, no SPARQL connection av" \
"ailable");
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->filter);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag_escaped);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->id);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->model);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2519 "tracker-tags-view.c"
			}
		}
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 447 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 2526 "tracker-tags-view.c"
	}
#line 450 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:450: Updating tags for uris");
#line 452 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp28_ = _data_->self->priv->entry;
#line 452 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp28_, FALSE);
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp29_ = _data_->id;
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp30_ = _data_->iter;
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp31_ = _data_->new_value;
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp32_ = tag_data_new (_data_->_tmp29_, &_data_->_tmp30_, TRUE, _data_->_tmp31_ != ((gint) TRACKER_TAGS_VIEW_SELECTION_FALSE), 1, _data_->self);
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 454 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _data_->_tmp32_;
#line 455 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp33_ = _data_->td;
#line 455 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp34_ = _tag_data_ref0 (_data_->_tmp33_);
#line 455 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_prepend (_data_->self->priv->tag_data_requests, _data_->_tmp34_);
#line 2552 "tracker-tags-view.c"
	{
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp35_ = _data_->self->priv->connection;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp36_ = _data_->query;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp37_ = _data_->td;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp38_ = _data_->_tmp37_->cancellable;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_async (_data_->_tmp35_, _data_->_tmp36_, G_PRIORITY_DEFAULT, _data_->_tmp38_, tracker_tags_view_model_toggle_row_ready, _data_);
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 2568 "tracker-tags-view.c"
		_state_1:
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_finish (_data_->_tmp35_, _data_->_res_, &_data_->_inner_error_);
#line 458 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 2574 "tracker-tags-view.c"
			goto __catch16_g_error;
		}
#line 460 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:460: Updated tags");
#line 461 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp39_ = _data_->td;
#line 461 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_update_tag_data (_data_->self, _data_->_tmp39_);
#line 463 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp40_ = _data_->self->priv->entry;
#line 463 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_entry_set_text (_data_->_tmp40_, "");
#line 2587 "tracker-tags-view.c"
	}
	goto __finally16;
	__catch16_g_error:
	{
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 465 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp41_ = _data_->e;
#line 465 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp42_ = _data_->_tmp41_->message;
#line 465 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:465: Could not run Sparql update query: %s", _data_->_tmp42_);
#line 466 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp43_ = _data_->e;
#line 466 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not update tags"), _data_->_tmp43_);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 2608 "tracker-tags-view.c"
	}
	__finally16:
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->filter);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag_escaped);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->id);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->model);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 457 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 2633 "tracker-tags-view.c"
	}
#line 469 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp44_ = _data_->td;
#line 469 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp44_);
#line 470 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 470 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = NULL;
#line 472 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp45_ = _data_->self->priv->entry;
#line 472 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp45_, TRUE);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->filter);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->tag_escaped);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->tag);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->id);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->model);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2669 "tracker-tags-view.c"
		}
	}
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 387 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 2676 "tracker-tags-view.c"
}


static Block2Data* block2_data_ref (Block2Data* _data2_) {
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_atomic_int_inc (&_data2_->_ref_count_);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return _data2_;
#line 2685 "tracker-tags-view.c"
}


static void block2_data_unref (void * _userdata_) {
	Block2Data* _data2_;
	_data2_ = (Block2Data*) _userdata_;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
#line 2694 "tracker-tags-view.c"
		TrackerTagsView* self;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self = _data2_->self;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data2_->tag);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_slice_free (Block2Data, _data2_);
#line 2704 "tracker-tags-view.c"
	}
}


static gboolean __lambda4_ (Block2Data* _data2_, GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* foreach_iter) {
	TrackerTagsView* self;
	gboolean result = FALSE;
	gchar* foreach_tag = NULL;
	GtkTreeModel* _tmp0_;
	GtkTreeIter _tmp1_;
	gboolean _tmp2_ = FALSE;
	const gchar* _tmp3_;
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = _data2_->self;
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (model != NULL, FALSE);
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (path != NULL, FALSE);
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (foreach_iter != NULL, FALSE);
#line 490 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = model;
#line 490 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = *foreach_iter;
#line 490 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_model_get (_tmp0_, &_tmp1_, TRACKER_TAGS_VIEW_COL_TAG_NAME, &foreach_tag, -1, -1);
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = foreach_tag;
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp3_ != NULL) {
#line 2735 "tracker-tags-view.c"
		const gchar* _tmp4_;
		const gchar* _tmp5_;
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = foreach_tag;
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp5_ = _data2_->tag;
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp2_ = g_strcmp0 (_tmp4_, _tmp5_) == 0;
#line 2744 "tracker-tags-view.c"
	} else {
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp2_ = FALSE;
#line 2748 "tracker-tags-view.c"
	}
#line 492 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp2_) {
#line 2752 "tracker-tags-view.c"
		GtkTreeIter _tmp6_;
#line 493 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data2_->found = TRUE;
#line 494 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = *foreach_iter;
#line 494 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data2_->found_iter = _tmp6_;
#line 495 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		result = TRUE;
#line 495 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (foreach_tag);
#line 495 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return result;
#line 2766 "tracker-tags-view.c"
	}
#line 498 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	result = FALSE;
#line 498 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (foreach_tag);
#line 498 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 2774 "tracker-tags-view.c"
}


static gboolean ___lambda4__gtk_tree_model_foreach_func (GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, gpointer self) {
	gboolean result;
	result = __lambda4_ (self, model, path, iter);
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 2783 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_find_tag (TrackerTagsView* self, const gchar* tag, GtkTreeIter* iter) {
	GtkTreeIter _vala_iter = {0};
	gboolean result = FALSE;
	Block2Data* _data2_;
	const gchar* _tmp0_;
	gchar* _tmp1_;
	GtkTreeIter _tmp2_ = {0};
	GtkTreeIter _tmp3_;
	gboolean _tmp4_ = FALSE;
	const gchar* _tmp5_;
	GtkTreeModel* model;
	GtkTreeView* _tmp7_;
	GtkTreeModel* _tmp8_;
	GtkTreeModel* _tmp9_;
	GtkTreeModel* _tmp10_;
	gboolean _tmp11_;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (tag != NULL, FALSE);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_ = g_slice_new0 (Block2Data);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_->_ref_count_ = 1;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_->self = g_object_ref (self);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = tag;
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data2_->tag);
#line 475 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_->tag = _tmp1_;
#line 476 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_.stamp = 0;
#line 476 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_->found_iter = _tmp2_;
#line 478 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = _data2_->found_iter;
#line 478 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_vala_iter = _tmp3_;
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = _data2_->tag;
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp5_ == NULL) {
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = TRUE;
#line 2835 "tracker-tags-view.c"
	} else {
		const gchar* _tmp6_;
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = _data2_->tag;
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = g_strcmp0 (_tmp6_, "") == 0;
#line 2842 "tracker-tags-view.c"
	}
#line 480 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp4_) {
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		result = FALSE;
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		block2_data_unref (_data2_);
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data2_ = NULL;
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (iter) {
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			*iter = _vala_iter;
#line 2856 "tracker-tags-view.c"
		}
#line 481 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return result;
#line 2860 "tracker-tags-view.c"
	}
#line 484 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp7_ = self->priv->view;
#line 484 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp8_ = gtk_tree_view_get_model (_tmp7_);
#line 484 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp9_ = _g_object_ref0 (_tmp8_);
#line 484 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	model = _tmp9_;
#line 485 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_->found = FALSE;
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp10_ = model;
#line 487 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_model_foreach (_tmp10_, ___lambda4__gtk_tree_model_foreach_func, _data2_);
#line 501 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp11_ = _data2_->found;
#line 501 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp11_ == TRUE) {
#line 2880 "tracker-tags-view.c"
		GtkTreeIter _tmp12_;
#line 502 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp12_ = _data2_->found_iter;
#line 502 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_vala_iter = _tmp12_;
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		result = TRUE;
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (model);
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		block2_data_unref (_data2_);
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data2_ = NULL;
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (iter) {
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			*iter = _vala_iter;
#line 2898 "tracker-tags-view.c"
		}
#line 503 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return result;
#line 2902 "tracker-tags-view.c"
	}
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	result = FALSE;
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	block2_data_unref (_data2_);
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data2_ = NULL;
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (iter) {
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		*iter = _vala_iter;
#line 2916 "tracker-tags-view.c"
	}
#line 506 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 2920 "tracker-tags-view.c"
}


static void tracker_tags_view_remove_tag_data_free (gpointer _data) {
	TrackerTagsViewRemoveTagData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewRemoveTagData, _data_);
#line 2933 "tracker-tags-view.c"
}


static void tracker_tags_view_remove_tag (TrackerTagsView* self, TagData* td, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewRemoveTagData* _data_;
	TrackerTagsView* _tmp0_;
	TagData* _tmp1_;
	TagData* _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewRemoveTagData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_remove_tag_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = td;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _tag_data_ref0 (_tmp1_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_remove_tag_co (_data_);
#line 2962 "tracker-tags-view.c"
}


static void tracker_tags_view_remove_tag_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewRemoveTagData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 2970 "tracker-tags-view.c"
}


static void tracker_tags_view_remove_tag_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewRemoveTagData* _data_;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_remove_tag_co (_data_);
#line 2984 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_remove_tag_co (TrackerTagsViewRemoveTagData* _data_) {
	TagData* _tmp19_;
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 2994 "tracker-tags-view.c"
		goto _state_0;
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 2998 "tracker-tags-view.c"
		goto _state_1;
		default:
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 3003 "tracker-tags-view.c"
	}
	_state_0:
#line 510 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = _data_->self->priv->connection;
#line 510 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp0_ == NULL) {
#line 3010 "tracker-tags-view.c"
		TagData* _tmp4_;
#line 511 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp1_ = _data_->td;
#line 511 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp2_ = _data_->_tmp1_->tag_id;
#line 511 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:511: Can't remove tag '%s', no SPARQL connectio" \
"n available", _data_->_tmp2_);
#line 512 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp3_ = _data_->td;
#line 512 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp3_);
#line 513 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = _tag_data_ref0 (NULL);
#line 513 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 513 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->td = _tmp4_;
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3036 "tracker-tags-view.c"
			}
		}
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 514 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3043 "tracker-tags-view.c"
	}
#line 517 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp5_ = _data_->td;
#line 517 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp6_ = _data_->_tmp5_->tag_id;
#line 517 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp7_ = g_strdup_printf ("DELETE { <%s> a rdfs:Resource }", _data_->_tmp6_);
#line 517 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = _data_->_tmp7_;
#line 3053 "tracker-tags-view.c"
	{
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp8_ = _data_->self->priv->connection;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp9_ = _data_->query;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp10_ = _data_->td;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp11_ = _data_->_tmp10_->cancellable;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_async (_data_->_tmp8_, _data_->_tmp9_, G_PRIORITY_DEFAULT, _data_->_tmp11_, tracker_tags_view_remove_tag_ready, _data_);
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3069 "tracker-tags-view.c"
		_state_1:
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_finish (_data_->_tmp8_, _data_->_res_, &_data_->_inner_error_);
#line 520 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 3075 "tracker-tags-view.c"
			goto __catch17_g_error;
		}
#line 522 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:522: Tag removed");
#line 523 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp12_ = _data_->self->priv->store;
#line 523 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp13_ = _data_->td;
#line 523 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp14_ = _data_->_tmp13_->iter;
#line 523 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_list_store_remove (_data_->_tmp12_, &_data_->_tmp14_);
#line 3088 "tracker-tags-view.c"
	}
	goto __finally17;
	__catch17_g_error:
	{
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 525 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp15_ = _data_->e;
#line 525 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp16_ = _data_->_tmp15_->message;
#line 525 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:525: Could not run Sparql update query: %s", _data_->_tmp16_);
#line 526 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp17_ = _data_->e;
#line 526 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not remove tag"), _data_->_tmp17_);
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 3109 "tracker-tags-view.c"
	}
	__finally17:
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 519 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3122 "tracker-tags-view.c"
	}
#line 529 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp18_ = _data_->td;
#line 529 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp18_);
#line 530 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp19_ = _tag_data_ref0 (NULL);
#line 530 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 530 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _tmp19_;
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3144 "tracker-tags-view.c"
		}
	}
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 509 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 3151 "tracker-tags-view.c"
}


static void tracker_tags_view_add_tag_data_free (gpointer _data) {
	TrackerTagsViewAddTagData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->tag);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewAddTagData, _data_);
#line 3164 "tracker-tags-view.c"
}


static void tracker_tags_view_add_tag (TrackerTagsView* self, const gchar* tag, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewAddTagData* _data_;
	TrackerTagsView* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewAddTagData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_add_tag_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = tag;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = g_strdup (_tmp1_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->tag);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->tag = _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_add_tag_co (_data_);
#line 3193 "tracker-tags-view.c"
}


static void tracker_tags_view_add_tag_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewAddTagData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3201 "tracker-tags-view.c"
}


static void tracker_tags_view_add_tag_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewAddTagData* _data_;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_add_tag_co (_data_);
#line 3215 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_add_tag_co (TrackerTagsViewAddTagData* _data_) {
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 3224 "tracker-tags-view.c"
		goto _state_0;
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 3228 "tracker-tags-view.c"
		goto _state_1;
		default:
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 3233 "tracker-tags-view.c"
	}
	_state_0:
#line 534 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = NULL;
#line 536 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = _data_->self->priv->connection;
#line 536 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp0_ == NULL) {
#line 537 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp1_ = _data_->tag;
#line 537 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:537: Can't add tag '%s', no SPARQL connection a" \
"vailable", _data_->_tmp1_);
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3256 "tracker-tags-view.c"
			}
		}
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 538 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3263 "tracker-tags-view.c"
	}
#line 541 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp2_ = _data_->self->priv->entry;
#line 541 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp2_, FALSE);
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp4_ = _data_->self->priv->files;
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp4_ != NULL) {
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp5_ = _data_->self->priv->files;
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp6_ = g_list_length (_data_->_tmp5_);
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp3_ = _data_->_tmp6_ > ((guint) 0);
#line 3279 "tracker-tags-view.c"
	} else {
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp3_ = FALSE;
#line 3283 "tracker-tags-view.c"
	}
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp3_) {
#line 544 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp7_ = g_strdup ("");
#line 544 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 544 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->query = _data_->_tmp7_;
#line 546 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp8_ = tracker_tags_view_sparql_get_filter_string (_data_->self, NULL);
#line 546 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->filter = _data_->_tmp8_;
#line 547 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp9_ = _data_->tag;
#line 547 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp10_ = tracker_tags_view_sparql_get_escaped_string (_data_->self, _data_->_tmp9_);
#line 547 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->tag_escaped = _data_->_tmp10_;
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp11_ = _data_->self->priv->files;
#line 3305 "tracker-tags-view.c"
		{
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->url_collection = _data_->_tmp11_;
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			for (_data_->url_it = _data_->url_collection; _data_->url_it != NULL; _data_->url_it = _data_->url_it->next) {
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp12_ = g_strdup ((const gchar*) _data_->url_it->data);
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->url = _data_->_tmp12_;
#line 3315 "tracker-tags-view.c"
				{
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp13_ = _data_->query;
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp14_ = _data_->url;
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp15_ = _data_->url;
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp16_ = g_strdup_printf ("INSERT {\n" \
"				            _:file a nie:DataObject ;\n" \
"				             nie:url '%s'\n" \
"				          } WHERE {\n" \
"				            OPTIONAL {\n" \
"				               ?file a nie:DataObject ;\n" \
"				               nie:url '%s'\n" \
"				            } .\n" \
"				            FILTER (!bound(?file))\n" \
"				          }", _data_->_tmp14_, _data_->_tmp15_);
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp17_ = _data_->_tmp16_;
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp18_ = g_strconcat (_data_->_tmp13_, _data_->_tmp17_, NULL);
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (_data_->query);
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->query = _data_->_tmp18_;
#line 550 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (_data_->_tmp17_);
#line 549 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (_data_->url);
#line 3337 "tracker-tags-view.c"
				}
			}
		}
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp19_ = _data_->query;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp20_ = _data_->tag_escaped;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp21_ = _data_->tag_escaped;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp22_ = _data_->tag_escaped;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp23_ = _data_->filter;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp24_ = g_strdup_printf ("INSERT {\n" \
"			            _:tag a nao:Tag;\n" \
"			            nao:prefLabel %s .\n" \
"			          } WHERE {\n" \
"			            OPTIONAL {\n" \
"			              ?tag a nao:Tag ;\n" \
"			              nao:prefLabel %s\n" \
"			            } .\n" \
"			            FILTER (!bound(?tag))\n" \
"			          }\n" \
"			          INSERT {\n" \
"			            ?urn nao:hasTag ?label\n" \
"			          } WHERE {\n" \
"			            ?urn nie:url ?f .\n" \
"			            ?label nao:prefLabel %s\n" \
"			            %s\n" \
"			          }", _data_->_tmp20_, _data_->_tmp21_, _data_->_tmp22_, _data_->_tmp23_);
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp26_ = g_strconcat (_data_->_tmp19_, _data_->_tmp25_, NULL);
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->query = _data_->_tmp26_;
#line 562 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->_tmp25_);
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag_escaped);
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->filter);
#line 3367 "tracker-tags-view.c"
	} else {
#line 580 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp27_ = _data_->tag;
#line 580 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp28_ = tracker_tags_view_sparql_get_escaped_string (_data_->self, _data_->_tmp27_);
#line 580 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->tag_label_escaped = _data_->_tmp28_;
#line 582 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp29_ = _data_->tag_label_escaped;
#line 582 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp30_ = _data_->tag_label_escaped;
#line 582 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp31_ = g_strdup_printf ("INSERT {\n" \
"			           _:tag a nao:Tag ;\n" \
"			           nao:prefLabel %s .\n" \
"			         } WHERE {\n" \
"			           OPTIONAL {\n" \
"			             ?tag a nao:Tag ;\n" \
"			             nao:prefLabel %s\n" \
"			           } .\n" \
"			           FILTER (!bound(?tag))\n" \
"			         }", _data_->_tmp29_, _data_->_tmp30_);
#line 582 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 582 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->query = _data_->_tmp31_;
#line 543 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->tag_label_escaped);
#line 3387 "tracker-tags-view.c"
	}
#line 594 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp32_ = _data_->self->priv->files;
#line 594 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp33_ = g_list_length (_data_->_tmp32_);
#line 594 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp34_ = tag_data_new (NULL, NULL, FALSE, TRUE, (gint) _data_->_tmp33_, _data_->self);
#line 594 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _data_->_tmp34_;
#line 595 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp35_ = _data_->td;
#line 595 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp36_ = _tag_data_ref0 (_data_->_tmp35_);
#line 595 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_prepend (_data_->self->priv->tag_data_requests, _data_->_tmp36_);
#line 3403 "tracker-tags-view.c"
	{
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp37_ = _data_->self->priv->connection;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp38_ = _data_->query;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp39_ = _data_->td;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp40_ = _data_->_tmp39_->cancellable;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_async (_data_->_tmp37_, _data_->_tmp38_, G_PRIORITY_DEFAULT, _data_->_tmp40_, tracker_tags_view_add_tag_ready, _data_);
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3419 "tracker-tags-view.c"
		_state_1:
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_update_finish (_data_->_tmp37_, _data_->_res_, &_data_->_inner_error_);
#line 598 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 3425 "tracker-tags-view.c"
			goto __catch18_g_error;
		}
#line 600 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:600: Updated tags");
#line 601 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp41_ = _data_->td;
#line 601 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_update_tag_data (_data_->self, _data_->_tmp41_);
#line 604 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp42_ = _data_->self->priv->entry;
#line 604 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_entry_set_text (_data_->_tmp42_, "");
#line 3438 "tracker-tags-view.c"
	}
	goto __finally18;
	__catch18_g_error:
	{
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 606 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp43_ = _data_->e;
#line 606 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp44_ = _data_->_tmp43_->message;
#line 606 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:606: Could not run Sparql update query: %s", _data_->_tmp44_);
#line 607 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp45_ = _data_->e;
#line 607 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not update tags"), _data_->_tmp45_);
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 3459 "tracker-tags-view.c"
	}
	__finally18:
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 597 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3474 "tracker-tags-view.c"
	}
#line 610 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp46_ = _data_->td;
#line 610 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp46_);
#line 611 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 611 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = NULL;
#line 613 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp47_ = _data_->self->priv->entry;
#line 613 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp47_, TRUE);
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3500 "tracker-tags-view.c"
		}
	}
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 533 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 3507 "tracker-tags-view.c"
}


static void tracker_tags_view_update_tag_data (TrackerTagsView* self, TagData* td) {
	const gchar* tag;
	GtkEntry* _tmp0_;
	const gchar* _tmp1_;
	TagData* _tmp2_;
	gboolean _tmp3_;
#line 616 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 616 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (td != NULL);
#line 617 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->entry;
#line 617 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_entry_get_text (_tmp0_);
#line 617 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tag = _tmp1_;
#line 619 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = td;
#line 619 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = _tmp2_->update;
#line 619 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp3_ == FALSE) {
#line 3533 "tracker-tags-view.c"
		GtkTreeIter iter = {0};
		GtkListStore* _tmp4_;
		GtkTreeIter _tmp5_ = {0};
		GtkListStore* _tmp6_;
		GtkTreeIter _tmp7_;
		TagData* _tmp8_;
		const gchar* _tmp9_;
		const gchar* _tmp10_;
		TagData* _tmp11_;
		gint _tmp12_;
		gchar* _tmp13_;
		gchar* _tmp14_;
		TagData* _tmp15_;
		gint _tmp16_;
#line 622 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:622: Setting tag selection state to ON (new)");
#line 624 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = self->priv->store;
#line 624 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_list_store_append (_tmp4_, &_tmp5_);
#line 624 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		iter = _tmp5_;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = self->priv->store;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp7_ = iter;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp8_ = td;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp9_ = _tmp8_->tag_id;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp10_ = tag;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp11_ = td;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp12_ = _tmp11_->items;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp13_ = g_strdup_printf ("%d", _tmp12_);
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp14_ = _tmp13_;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp15_ = td;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp16_ = _tmp15_->items;
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_list_store_set (_tmp6_, &_tmp7_, TRACKER_TAGS_VIEW_COL_TAG_ID, _tmp9_, TRACKER_TAGS_VIEW_COL_TAG_NAME, _tmp10_, TRACKER_TAGS_VIEW_COL_TAG_COUNT, _tmp14_, TRACKER_TAGS_VIEW_COL_TAG_COUNT_VALUE, _tmp16_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_TRUE, -1, -1);
#line 625 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_tmp14_);
#line 3582 "tracker-tags-view.c"
	} else {
		TagData* _tmp17_;
		gboolean _tmp18_;
#line 632 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp17_ = td;
#line 632 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp18_ = _tmp17_->selected;
#line 632 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_tmp18_ == TRUE) {
#line 3592 "tracker-tags-view.c"
			GtkListStore* _tmp19_;
			TagData* _tmp20_;
			GtkTreeIter _tmp21_;
			TagData* _tmp22_;
			TagData* _tmp23_;
			TagData* _tmp24_;
#line 633 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:633: Setting tag selection state to ON");
#line 635 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp19_ = self->priv->store;
#line 635 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp20_ = td;
#line 635 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp21_ = _tmp20_->iter;
#line 635 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_list_store_set (_tmp19_, &_tmp21_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_TRUE, -1, -1);
#line 637 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp22_ = td;
#line 637 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp23_ = _tag_data_ref0 (_tmp22_);
#line 637 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			self->priv->tag_data_requests = g_list_prepend (self->priv->tag_data_requests, _tmp23_);
#line 638 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp24_ = td;
#line 638 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_tags_view_query_files_for_tag_id (self, _tmp24_, NULL, NULL);
#line 3619 "tracker-tags-view.c"
		} else {
			GtkListStore* _tmp25_;
			TagData* _tmp26_;
			GtkTreeIter _tmp27_;
			TagData* _tmp28_;
			TagData* _tmp29_;
			TagData* _tmp30_;
#line 640 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:640: Setting tag selection state to FALSE");
#line 642 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp25_ = self->priv->store;
#line 642 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp26_ = td;
#line 642 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp27_ = _tmp26_->iter;
#line 642 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_list_store_set (_tmp25_, &_tmp27_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_FALSE, -1, -1);
#line 644 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp28_ = td;
#line 644 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp29_ = _tag_data_ref0 (_tmp28_);
#line 644 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			self->priv->tag_data_requests = g_list_prepend (self->priv->tag_data_requests, _tmp29_);
#line 645 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp30_ = td;
#line 645 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_tags_view_query_files_for_tag_id (self, _tmp30_, NULL, NULL);
#line 3647 "tracker-tags-view.c"
		}
	}
}


static Block3Data* block3_data_ref (Block3Data* _data3_) {
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_atomic_int_inc (&_data3_->_ref_count_);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return _data3_;
#line 3658 "tracker-tags-view.c"
}


static void block3_data_unref (void * _userdata_) {
	Block3Data* _data3_;
	_data3_ = (Block3Data*) _userdata_;
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) {
#line 3667 "tracker-tags-view.c"
		TrackerTagsView* self;
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self = _data3_->self;
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data3_->store);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_slice_free (Block3Data, _data3_);
#line 3677 "tracker-tags-view.c"
	}
}


static gboolean __lambda6_ (Block3Data* _data3_, GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* foreach_iter) {
	TrackerTagsView* self;
	gboolean result = FALSE;
	GtkTreeIter _tmp0_;
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = _data3_->self;
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (model != NULL, FALSE);
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (path != NULL, FALSE);
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (foreach_iter != NULL, FALSE);
#line 654 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = *foreach_iter;
#line 654 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_list_store_set (_data3_->store, &_tmp0_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_FALSE, -1, -1);
#line 655 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	result = FALSE;
#line 655 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 3702 "tracker-tags-view.c"
}


static gboolean ___lambda6__gtk_tree_model_foreach_func (GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, gpointer self) {
	gboolean result;
	result = __lambda6_ (self, model, path, iter);
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 3711 "tracker-tags-view.c"
}


static void tracker_tags_view_untoggle_all (TrackerTagsView* self) {
	Block3Data* _data3_;
	GtkTreeModel* model;
	GtkTreeView* _tmp0_;
	GtkTreeModel* _tmp1_;
	GtkTreeModel* _tmp2_;
	GtkListStore* _tmp3_;
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_if_fail (self != NULL);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data3_ = g_slice_new0 (Block3Data);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data3_->_ref_count_ = 1;
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data3_->self = g_object_ref (self);
#line 650 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->view;
#line 650 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = gtk_tree_view_get_model (_tmp0_);
#line 650 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 650 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	model = _tmp2_;
#line 651 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (model, gtk_list_store_get_type (), GtkListStore));
#line 651 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data3_->store = _tmp3_;
#line 653 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_tree_model_foreach (model, ___lambda6__gtk_tree_model_foreach_func, _data3_);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (model);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	block3_data_unref (_data3_);
#line 649 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data3_ = NULL;
#line 3750 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_for_files_data_free (gpointer _data) {
	TrackerTagsViewQueryTagsForFilesData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewQueryTagsForFilesData, _data_);
#line 3761 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_for_files (TrackerTagsView* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewQueryTagsForFilesData* _data_;
	TrackerTagsView* _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewQueryTagsForFilesData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_query_tags_for_files_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags_for_files_co (_data_);
#line 3780 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_for_files_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewQueryTagsForFilesData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3788 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_for_files_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewQueryTagsForFilesData* _data_;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags_for_files_co (_data_);
#line 3802 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_query_tags_for_files_co (TrackerTagsViewQueryTagsForFilesData* _data_) {
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 3811 "tracker-tags-view.c"
		goto _state_0;
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 3815 "tracker-tags-view.c"
		goto _state_1;
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 2:
#line 3819 "tracker-tags-view.c"
		goto _state_2;
		default:
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 3824 "tracker-tags-view.c"
	}
	_state_0:
#line 660 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_untoggle_all (_data_->self);
#line 662 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = _data_->self->priv->files;
#line 662 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp0_ == NULL) {
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3841 "tracker-tags-view.c"
			}
		}
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 663 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3848 "tracker-tags-view.c"
	}
#line 667 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp1_ = g_strdup ("");
#line 667 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->files_filter = _data_->_tmp1_;
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp2_ = _data_->self->priv->files;
#line 3856 "tracker-tags-view.c"
	{
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->url_collection = _data_->_tmp2_;
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		for (_data_->url_it = _data_->url_collection; _data_->url_it != NULL; _data_->url_it = _data_->url_it->next) {
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp3_ = g_strdup ((const gchar*) _data_->url_it->data);
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->url = _data_->_tmp3_;
#line 3866 "tracker-tags-view.c"
			{
#line 670 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp4_ = _data_->files_filter;
#line 670 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp5_ = strlen (_data_->_tmp4_);
#line 670 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp6_ = _data_->_tmp5_;
#line 670 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				if (_data_->_tmp6_ > 0) {
#line 671 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp7_ = _data_->files_filter;
#line 671 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp8_ = g_strconcat (_data_->_tmp7_, ",", NULL);
#line 671 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (_data_->files_filter);
#line 671 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->files_filter = _data_->_tmp8_;
#line 3884 "tracker-tags-view.c"
				}
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp9_ = _data_->files_filter;
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp10_ = _data_->url;
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp11_ = g_strdup_printf ("'%s'", _data_->_tmp10_);
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp12_ = _data_->_tmp11_;
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp13_ = g_strconcat (_data_->_tmp9_, _data_->_tmp12_, NULL);
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (_data_->files_filter);
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->files_filter = _data_->_tmp13_;
#line 674 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (_data_->_tmp12_);
#line 669 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (_data_->url);
#line 3904 "tracker-tags-view.c"
			}
		}
	}
#line 677 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp14_ = _data_->files_filter;
#line 677 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp15_ = g_strdup_printf ("select ?tag nao:prefLabel(?tag) WHERE { ?urn nao:hasTag ?tag . FILTER(" \
"nie:url(?urn) IN (%s)) } ORDER BY (?tag)", _data_->_tmp14_);
#line 677 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = _data_->_tmp15_;
#line 679 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:679: Getting tags for files selected...");
#line 3916 "tracker-tags-view.c"
	{
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp16_ = _data_->self->priv->connection;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp17_ = _data_->query;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_query_async (_data_->_tmp16_, _data_->_tmp17_, NULL, tracker_tags_view_query_tags_for_files_ready, _data_);
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 3928 "tracker-tags-view.c"
		_state_1:
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp18_ = tracker_sparql_connection_query_finish (_data_->_tmp16_, _data_->_res_, &_data_->_inner_error_);
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->cursor = _data_->_tmp18_;
#line 682 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 3936 "tracker-tags-view.c"
			goto __catch19_g_error;
		}
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (TRUE) {
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp20_ = _data_->cursor;
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_state_ = 2;
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_sparql_cursor_next_async (_data_->_tmp20_, NULL, tracker_tags_view_query_tags_for_files_ready, _data_);
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return FALSE;
#line 3949 "tracker-tags-view.c"
			_state_2:
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp21_ = tracker_sparql_cursor_next_finish (_data_->_tmp20_, _data_->_res_, &_data_->_inner_error_);
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp19_ = _data_->_tmp21_;
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_g_object_unref0 (_data_->cursor);
#line 3959 "tracker-tags-view.c"
				goto __catch19_g_error;
			}
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (!_data_->_tmp19_) {
#line 684 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				break;
#line 3966 "tracker-tags-view.c"
			}
#line 685 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:685: Toggling tags...");
#line 687 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp22_ = _data_->cursor;
#line 687 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp23_ = tracker_sparql_cursor_get_string (_data_->_tmp22_, 0, NULL);
#line 687 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->id = _data_->_tmp23_;
#line 688 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp24_ = _data_->cursor;
#line 688 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp25_ = tracker_sparql_cursor_get_string (_data_->_tmp24_, 1, NULL);
#line 688 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->label = _data_->_tmp25_;
#line 690 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp26_ = _data_->id;
#line 690 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp27_ = _data_->label;
#line 690 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:690:   Enabling tag:'%s', label:'%s'", _data_->_tmp26_, _data_->_tmp27_);
#line 693 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp28_ = _data_->label;
#line 693 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			memset (&_data_->_tmp29_, 0, sizeof (GtkTreeIter));
#line 693 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp30_ = tracker_tags_view_find_tag (_data_->self, _data_->_tmp28_, &_data_->_tmp29_);
#line 693 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->iter = _data_->_tmp29_;
#line 693 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (_data_->_tmp30_) {
#line 694 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp31_ = _data_->self->priv->store;
#line 694 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp32_ = _data_->iter;
#line 694 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				gtk_list_store_set (_data_->_tmp31_, &_data_->_tmp32_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_TRUE, -1, -1);
#line 4004 "tracker-tags-view.c"
			}
		}
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->cursor);
#line 4009 "tracker-tags-view.c"
	}
	goto __finally19;
	__catch19_g_error:
	{
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 700 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp33_ = _data_->e;
#line 700 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp34_ = _data_->_tmp33_->message;
#line 700 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:700: Could not run Sparql query: %s", _data_->_tmp34_);
#line 701 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp35_ = _data_->e;
#line 701 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not retrieve tags for the current selection"), _data_->_tmp35_);
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 4030 "tracker-tags-view.c"
	}
	__finally19:
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->files_filter);
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 681 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4045 "tracker-tags-view.c"
	}
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->files_filter);
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4059 "tracker-tags-view.c"
		}
	}
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 659 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 4066 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_data_free (gpointer _data) {
	TrackerTagsViewQueryTagsData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewQueryTagsData, _data_);
#line 4077 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags (TrackerTagsView* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewQueryTagsData* _data_;
	TrackerTagsView* _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewQueryTagsData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_query_tags_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags_co (_data_);
#line 4096 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewQueryTagsData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 4104 "tracker-tags-view.c"
}


static void tracker_tags_view_query_tags_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewQueryTagsData* _data_;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_tags_co (_data_);
#line 4118 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_query_tags_co (TrackerTagsViewQueryTagsData* _data_) {
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 4127 "tracker-tags-view.c"
		goto _state_0;
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 4131 "tracker-tags-view.c"
		goto _state_1;
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 2:
#line 4135 "tracker-tags-view.c"
		goto _state_2;
		default:
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 4140 "tracker-tags-view.c"
	}
	_state_0:
#line 707 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = g_strdup ("SELECT ?urn ?label WHERE { ?urn a nao:Tag ; nao:prefLabel ?label . } O" \
"RDER BY ?label");
#line 707 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = _data_->_tmp0_;
#line 709 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_debug ("tracker-tags-view.vala:709: Clearing tags in store");
#line 710 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp1_ = _data_->self->priv->store;
#line 710 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	gtk_list_store_clear (_data_->_tmp1_);
#line 4153 "tracker-tags-view.c"
	{
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp2_ = _data_->self->priv->connection;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp3_ = _data_->query;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_query_async (_data_->_tmp2_, _data_->_tmp3_, NULL, tracker_tags_view_query_tags_ready, _data_);
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4165 "tracker-tags-view.c"
		_state_1:
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp4_ = tracker_sparql_connection_query_finish (_data_->_tmp2_, _data_->_res_, &_data_->_inner_error_);
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->cursor = _data_->_tmp4_;
#line 713 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 4173 "tracker-tags-view.c"
			goto __catch20_g_error;
		}
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (TRUE) {
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp6_ = _data_->cursor;
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_state_ = 2;
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_sparql_cursor_next_async (_data_->_tmp6_, NULL, tracker_tags_view_query_tags_ready, _data_);
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return FALSE;
#line 4186 "tracker-tags-view.c"
			_state_2:
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp7_ = tracker_sparql_cursor_next_finish (_data_->_tmp6_, _data_->_res_, &_data_->_inner_error_);
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp5_ = _data_->_tmp7_;
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_g_object_unref0 (_data_->cursor);
#line 4196 "tracker-tags-view.c"
				goto __catch20_g_error;
			}
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (!_data_->_tmp5_) {
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				break;
#line 4203 "tracker-tags-view.c"
			}
#line 717 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:717: Adding all tags...");
#line 719 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp8_ = _data_->cursor;
#line 719 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp9_ = tracker_sparql_cursor_get_string (_data_->_tmp8_, 0, NULL);
#line 719 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->id = _data_->_tmp9_;
#line 720 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp10_ = _data_->cursor;
#line 720 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp11_ = tracker_sparql_cursor_get_string (_data_->_tmp10_, 1, NULL);
#line 720 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->label = _data_->_tmp11_;
#line 722 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp12_ = _data_->id;
#line 722 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp13_ = _data_->label;
#line 722 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_debug ("tracker-tags-view.vala:722:   Adding tag id:'%s' with label:'%s' to st" \
"ore", _data_->_tmp12_, _data_->_tmp13_);
#line 725 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp14_ = _data_->self->priv->store;
#line 725 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			memset (&_data_->_tmp15_, 0, sizeof (GtkTreeIter));
#line 725 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_list_store_append (_data_->_tmp14_, &_data_->_tmp15_);
#line 725 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->iter = _data_->_tmp15_;
#line 727 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp16_ = _data_->self->priv->store;
#line 727 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp17_ = _data_->iter;
#line 727 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp18_ = _data_->id;
#line 727 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp19_ = _data_->label;
#line 727 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_list_store_set (_data_->_tmp16_, &_data_->_tmp17_, TRACKER_TAGS_VIEW_COL_TAG_ID, _data_->_tmp18_, TRACKER_TAGS_VIEW_COL_TAG_NAME, _data_->_tmp19_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_FALSE, -1, -1);
#line 733 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp20_ = _data_->id;
#line 733 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp21_ = _data_->iter;
#line 733 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp22_ = tag_data_new (_data_->_tmp20_, &_data_->_tmp21_, FALSE, TRUE, 1, _data_->self);
#line 733 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->td = _data_->_tmp22_;
#line 734 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp23_ = _data_->td;
#line 734 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp24_ = _tag_data_ref0 (_data_->_tmp23_);
#line 734 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->self->priv->tag_data_requests = g_list_prepend (_data_->self->priv->tag_data_requests, _data_->_tmp24_);
#line 736 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp25_ = _data_->td;
#line 736 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_tags_view_query_files_for_tag_id (_data_->self, _data_->_tmp25_, NULL, NULL);
#line 715 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tag_data_unref0 (_data_->td);
#line 4263 "tracker-tags-view.c"
		}
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->cursor);
#line 4267 "tracker-tags-view.c"
	}
	goto __finally20;
	__catch20_g_error:
	{
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 739 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp26_ = _data_->e;
#line 739 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp27_ = _data_->_tmp26_->message;
#line 739 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:739: Could not run Sparql query: %s", _data_->_tmp27_);
#line 740 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp28_ = _data_->e;
#line 740 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not add tag"), _data_->_tmp28_);
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 4288 "tracker-tags-view.c"
	}
	__finally20:
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 712 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4301 "tracker-tags-view.c"
	}
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4313 "tracker-tags-view.c"
		}
	}
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 705 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 4320 "tracker-tags-view.c"
}


static void tracker_tags_view_query_files_for_tag_id_data_free (gpointer _data) {
	TrackerTagsViewQueryFilesForTagIdData* _data_;
	_data_ = _data;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (_data_->self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_slice_free (TrackerTagsViewQueryFilesForTagIdData, _data_);
#line 4333 "tracker-tags-view.c"
}


static void tracker_tags_view_query_files_for_tag_id (TrackerTagsView* self, TagData* td, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	TrackerTagsViewQueryFilesForTagIdData* _data_;
	TrackerTagsView* _tmp0_;
	TagData* _tmp1_;
	TagData* _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_slice_new0 (TrackerTagsViewQueryFilesForTagIdData);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_set_task_data (_data_->_async_result, _data_, tracker_tags_view_query_files_for_tag_id_data_free);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self = _tmp0_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = td;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = _tag_data_ref0 (_tmp1_);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _tmp2_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_files_for_tag_id_co (_data_);
#line 4362 "tracker-tags-view.c"
}


static void tracker_tags_view_query_files_for_tag_id_finish (TrackerTagsView* self, GAsyncResult* _res_) {
	TrackerTagsViewQueryFilesForTagIdData* _data_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 4370 "tracker-tags-view.c"
}


static void tracker_tags_view_query_files_for_tag_id_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	TrackerTagsViewQueryFilesForTagIdData* _data_;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_ = _user_data_;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_source_object_ = source_object;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_res_ = _res_;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_query_files_for_tag_id_co (_data_);
#line 4384 "tracker-tags-view.c"
}


static gboolean tracker_tags_view_query_files_for_tag_id_co (TrackerTagsViewQueryFilesForTagIdData* _data_) {
	TagData* _tmp55_;
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	switch (_data_->_state_) {
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 0:
#line 4394 "tracker-tags-view.c"
		goto _state_0;
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 1:
#line 4398 "tracker-tags-view.c"
		goto _state_1;
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		case 2:
#line 4402 "tracker-tags-view.c"
		goto _state_2;
		default:
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_assert_not_reached ();
#line 4407 "tracker-tags-view.c"
	}
	_state_0:
#line 745 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp0_ = _data_->self->priv->connection;
#line 745 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_tmp0_ == NULL) {
#line 4414 "tracker-tags-view.c"
		TagData* _tmp4_;
#line 746 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp1_ = _data_->td;
#line 746 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp2_ = _data_->_tmp1_->tag_id;
#line 746 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:746: Can't query files for tag id '%s', no SPAR" \
"QL connection available", _data_->_tmp2_);
#line 747 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp3_ = _data_->td;
#line 747 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp3_);
#line 748 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = _tag_data_ref0 (NULL);
#line 748 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tag_data_unref0 (_data_->td);
#line 748 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->td = _tmp4_;
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_state_ != 0) {
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4440 "tracker-tags-view.c"
			}
		}
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_object_unref (_data_->_async_result);
#line 749 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4447 "tracker-tags-view.c"
	}
#line 752 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp5_ = _data_->td;
#line 752 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp6_ = _data_->_tmp5_->tag_id;
#line 752 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp7_ = g_strdup_printf ("SELECT ?url WHERE { ?urn a rdfs:Resource ; nie:url ?url ; nao:hasTag <" \
"%s> . }", _data_->_tmp6_);
#line 752 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->query = _data_->_tmp7_;
#line 4457 "tracker-tags-view.c"
	{
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp8_ = _data_->self->priv->connection;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp9_ = _data_->query;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp10_ = _data_->td;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp11_ = _data_->_tmp10_->cancellable;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_state_ = 1;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_sparql_connection_query_async (_data_->_tmp8_, _data_->_tmp9_, _data_->_tmp11_, tracker_tags_view_query_files_for_tag_id_ready, _data_);
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4473 "tracker-tags-view.c"
		_state_1:
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp12_ = tracker_sparql_connection_query_finish (_data_->_tmp8_, _data_->_res_, &_data_->_inner_error_);
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->cursor = _data_->_tmp12_;
#line 755 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 4481 "tracker-tags-view.c"
			goto __catch21_g_error;
		}
#line 757 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->has_tag_in_selection = (guint) 0;
#line 758 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->files_with_tag = (guint) 0;
#line 759 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp13_ = _data_->self->priv->files;
#line 759 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp14_ = g_list_length (_data_->_tmp13_);
#line 759 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->files_selected = _data_->_tmp14_;
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (TRUE) {
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp16_ = _data_->cursor;
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_state_ = 2;
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			tracker_sparql_cursor_next_async (_data_->_tmp16_, NULL, tracker_tags_view_query_files_for_tag_id_ready, _data_);
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			return FALSE;
#line 4504 "tracker-tags-view.c"
			_state_2:
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp17_ = tracker_sparql_cursor_next_finish (_data_->_tmp16_, _data_->_res_, &_data_->_inner_error_);
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp15_ = _data_->_tmp17_;
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_g_object_unref0 (_data_->cursor);
#line 4514 "tracker-tags-view.c"
				goto __catch21_g_error;
			}
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (!_data_->_tmp15_) {
#line 761 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				break;
#line 4521 "tracker-tags-view.c"
			}
#line 762 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp18_ = _data_->files_with_tag;
#line 762 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->files_with_tag = _data_->_tmp18_ + 1;
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp19_ = _data_->self->priv->files;
#line 4529 "tracker-tags-view.c"
			{
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->url_collection = _data_->_tmp19_;
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				for (_data_->url_it = _data_->url_collection; _data_->url_it != NULL; _data_->url_it = _data_->url_it->next) {
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->_tmp20_ = g_strdup ((const gchar*) _data_->url_it->data);
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_data_->url = _data_->_tmp20_;
#line 4539 "tracker-tags-view.c"
					{
#line 765 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp21_ = _data_->cursor;
#line 765 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp22_ = tracker_sparql_cursor_get_string (_data_->_tmp21_, 0, NULL);
#line 765 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->url_returned = _data_->_tmp22_;
#line 767 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp23_ = _data_->url;
#line 767 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp24_ = _data_->url_returned;
#line 767 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						g_debug ("tracker-tags-view.vala:767: --> '%s' vs '%s'", _data_->_tmp23_, _data_->_tmp24_);
#line 769 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp25_ = _data_->url_returned;
#line 769 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						if (_data_->_tmp25_ == NULL) {
#line 770 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							g_free (_data_->url);
#line 770 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							continue;
#line 4561 "tracker-tags-view.c"
						}
#line 773 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp26_ = _data_->url_returned;
#line 773 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						_data_->_tmp27_ = _data_->url;
#line 773 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						if (g_strcmp0 (_data_->_tmp26_, _data_->_tmp27_) == 0) {
#line 774 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							_data_->_tmp28_ = _data_->has_tag_in_selection;
#line 774 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							_data_->has_tag_in_selection = _data_->_tmp28_ + 1;
#line 775 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							g_free (_data_->url);
#line 775 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
							break;
#line 4577 "tracker-tags-view.c"
						}
#line 764 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
						g_free (_data_->url);
#line 4581 "tracker-tags-view.c"
					}
				}
			}
		}
#line 780 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp29_ = _data_->has_tag_in_selection;
#line 780 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp30_ = _data_->files_with_tag;
#line 780 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp31_ = _data_->files_selected;
#line 780 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:780: Querying files with tag, in selection:%ld," \
" in total:%ld, selected:%ld", (glong) _data_->_tmp29_, (glong) _data_->_tmp30_, (glong) _data_->_tmp31_);
#line 783 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp32_ = _data_->has_tag_in_selection;
#line 783 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		if (_data_->_tmp32_ == ((guint) 0)) {
#line 784 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp33_ = _data_->self->priv->store;
#line 784 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp34_ = _data_->td;
#line 784 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp35_ = _data_->_tmp34_->iter;
#line 784 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			gtk_list_store_set (_data_->_tmp33_, &_data_->_tmp35_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_FALSE, -1, -1);
#line 4606 "tracker-tags-view.c"
		} else {
#line 785 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp36_ = _data_->files_selected;
#line 785 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_data_->_tmp37_ = _data_->has_tag_in_selection;
#line 785 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			if (_data_->_tmp36_ != _data_->_tmp37_) {
#line 786 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp38_ = _data_->self->priv->store;
#line 786 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp39_ = _data_->td;
#line 786 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp40_ = _data_->_tmp39_->iter;
#line 786 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				gtk_list_store_set (_data_->_tmp38_, &_data_->_tmp40_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_INCONSISTENT, -1, -1);
#line 4622 "tracker-tags-view.c"
			} else {
#line 788 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp41_ = _data_->self->priv->store;
#line 788 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp42_ = _data_->td;
#line 788 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_data_->_tmp43_ = _data_->_tmp42_->iter;
#line 788 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				gtk_list_store_set (_data_->_tmp41_, &_data_->_tmp43_, TRACKER_TAGS_VIEW_COL_SELECTION, TRACKER_TAGS_VIEW_SELECTION_TRUE, -1, -1);
#line 4632 "tracker-tags-view.c"
			}
		}
#line 791 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp44_ = _data_->files_with_tag;
#line 791 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp45_ = g_strdup_printf ("%ld", (glong) _data_->_tmp44_);
#line 791 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->str = _data_->_tmp45_;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp46_ = _data_->self->priv->store;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp47_ = _data_->td;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp48_ = _data_->_tmp47_->iter;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp49_ = _data_->str;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp50_ = _data_->files_with_tag;
#line 792 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		gtk_list_store_set (_data_->_tmp46_, &_data_->_tmp48_, TRACKER_TAGS_VIEW_COL_TAG_COUNT, _data_->_tmp49_, TRACKER_TAGS_VIEW_COL_TAG_COUNT_VALUE, _data_->_tmp50_, -1, -1);
#line 794 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_debug ("tracker-tags-view.vala:794: Tags for file updated");
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->str);
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (_data_->cursor);
#line 4659 "tracker-tags-view.c"
	}
	goto __finally21;
	__catch21_g_error:
	{
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->e = _data_->_inner_error_;
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_inner_error_ = NULL;
#line 796 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp51_ = _data_->e;
#line 796 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp52_ = _data_->_tmp51_->message;
#line 796 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_warning ("tracker-tags-view.vala:796: Could not run Sparql query: %s", _data_->_tmp52_);
#line 797 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_data_->_tmp53_ = _data_->e;
#line 797 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		tracker_tags_view_show_error_dialog (_data_->self, _ ("Could not update tags for file"), _data_->_tmp53_);
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_error_free0 (_data_->e);
#line 4680 "tracker-tags-view.c"
	}
	__finally21:
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_data_->query);
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_clear_error (&_data_->_inner_error_);
#line 754 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		return FALSE;
#line 4693 "tracker-tags-view.c"
	}
#line 800 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->_tmp54_ = _data_->td;
#line 800 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->self->priv->tag_data_requests = g_list_remove (_data_->self->priv->tag_data_requests, _data_->_tmp54_);
#line 801 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp55_ = _tag_data_ref0 (NULL);
#line 801 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tag_data_unref0 (_data_->td);
#line 801 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_data_->td = _tmp55_;
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (_data_->query);
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_data_->_state_ != 0) {
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4715 "tracker-tags-view.c"
		}
	}
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_object_unref (_data_->_async_result);
#line 744 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return FALSE;
#line 4722 "tracker-tags-view.c"
}


static gchar* tracker_tags_view_sparql_get_filter_string (TrackerTagsView* self, const gchar* tag) {
	gchar* result = NULL;
	GList* _tmp0_;
	GList* _tmp1_;
	guint _tmp2_;
	gchar* filter;
	gchar* _tmp3_;
	gboolean _tmp4_ = FALSE;
	const gchar* _tmp5_;
	gboolean first;
	GList* _tmp9_;
	gboolean _tmp19_ = FALSE;
	const gchar* _tmp20_;
	const gchar* _tmp27_;
	gchar* _tmp28_;
#line 804 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 804 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->files;
#line 804 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = self->priv->files;
#line 804 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = g_list_length (_tmp1_);
#line 804 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_vala_return_val_if_fail ((_tmp0_ != NULL) && (_tmp2_ > ((guint) 0)), "files != null && files.length () > 0", NULL);
#line 805 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp3_ = g_strdup ("FILTER (");
#line 805 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	filter = _tmp3_;
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = tag;
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp5_ != NULL) {
#line 4759 "tracker-tags-view.c"
		const gchar* _tmp6_;
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = tag;
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = g_strcmp0 (_tmp6_, "") != 0;
#line 4765 "tracker-tags-view.c"
	} else {
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp4_ = FALSE;
#line 4769 "tracker-tags-view.c"
	}
#line 807 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp4_) {
#line 4773 "tracker-tags-view.c"
		const gchar* _tmp7_;
		gchar* _tmp8_;
#line 808 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp7_ = filter;
#line 808 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp8_ = g_strconcat (_tmp7_, "(", NULL);
#line 808 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (filter);
#line 808 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		filter = _tmp8_;
#line 4784 "tracker-tags-view.c"
	}
#line 811 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	first = TRUE;
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp9_ = self->priv->files;
#line 4790 "tracker-tags-view.c"
	{
		GList* url_collection = NULL;
		GList* url_it = NULL;
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		url_collection = _tmp9_;
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		for (url_it = url_collection; url_it != NULL; url_it = url_it->next) {
#line 4798 "tracker-tags-view.c"
			gchar* _tmp10_;
			gchar* url = NULL;
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			_tmp10_ = g_strdup ((const gchar*) url_it->data);
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			url = _tmp10_;
#line 4805 "tracker-tags-view.c"
			{
				gboolean _tmp11_;
				const gchar* _tmp14_;
				const gchar* _tmp15_;
				gchar* _tmp16_;
				gchar* _tmp17_;
				gchar* _tmp18_;
#line 814 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp11_ = first;
#line 814 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				if (!_tmp11_) {
#line 4817 "tracker-tags-view.c"
					const gchar* _tmp12_;
					gchar* _tmp13_;
#line 815 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tmp12_ = filter;
#line 815 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tmp13_ = g_strconcat (_tmp12_, " || ", NULL);
#line 815 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (filter);
#line 815 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					filter = _tmp13_;
#line 4828 "tracker-tags-view.c"
				}
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp14_ = filter;
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp15_ = url;
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp16_ = g_strdup_printf ("?f = \"%s\"", _tmp15_);
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp17_ = _tmp16_;
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp18_ = g_strconcat (_tmp14_, _tmp17_, NULL);
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (filter);
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				filter = _tmp18_;
#line 818 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (_tmp17_);
#line 819 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				first = FALSE;
#line 813 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				g_free (url);
#line 4850 "tracker-tags-view.c"
			}
		}
	}
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp20_ = tag;
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp20_ != NULL) {
#line 4858 "tracker-tags-view.c"
		const gchar* _tmp21_;
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp21_ = tag;
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp19_ = g_strcmp0 (_tmp21_, "") != 0;
#line 4864 "tracker-tags-view.c"
	} else {
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp19_ = FALSE;
#line 4868 "tracker-tags-view.c"
	}
#line 822 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp19_) {
#line 4872 "tracker-tags-view.c"
		const gchar* _tmp22_;
		const gchar* _tmp23_;
		gchar* _tmp24_;
		gchar* _tmp25_;
		gchar* _tmp26_;
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp22_ = filter;
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp23_ = tag;
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp24_ = g_strdup_printf (") && ?t = <%s>", _tmp23_);
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp25_ = _tmp24_;
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp26_ = g_strconcat (_tmp22_, _tmp25_, NULL);
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (filter);
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		filter = _tmp26_;
#line 823 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_free (_tmp25_);
#line 4894 "tracker-tags-view.c"
	}
#line 826 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp27_ = filter;
#line 826 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp28_ = g_strconcat (_tmp27_, ")", NULL);
#line 826 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (filter);
#line 826 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	filter = _tmp28_;
#line 828 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	result = filter;
#line 828 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 4908 "tracker-tags-view.c"
}


static gchar* tracker_tags_view_sparql_get_escaped_string (TrackerTagsView* self, const gchar* str) {
	gchar* result = NULL;
	gchar* escaped;
	const gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
#line 831 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 831 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_return_val_if_fail (str != NULL, NULL);
#line 832 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = str;
#line 832 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp1_ = tracker_sparql_escape_string (_tmp0_);
#line 832 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	escaped = _tmp1_;
#line 833 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = g_strdup_printf ("\"%s\"", escaped);
#line 833 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	result = _tmp2_;
#line 833 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_free (escaped);
#line 833 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	return result;
#line 4936 "tracker-tags-view.c"
}


static void tracker_tags_view_class_init (TrackerTagsViewClass * klass) {
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	tracker_tags_view_parent_class = g_type_class_peek_parent (klass);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	g_type_class_add_private (klass, sizeof (TrackerTagsViewPrivate));
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	G_OBJECT_CLASS (klass)->finalize = tracker_tags_view_finalize;
#line 4947 "tracker-tags-view.c"
}


static void tracker_tags_view_instance_init (TrackerTagsView * self) {
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self->priv = TRACKER_TAGS_VIEW_GET_PRIVATE (self);
#line 4954 "tracker-tags-view.c"
}


static void tracker_tags_view_finalize (GObject * obj) {
	TrackerTagsView * self;
	GCancellable* _tmp0_;
	GList* _tmp2_;
	GList* _tmp5_;
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TRACKER_TAGS_VIEW, TrackerTagsView);
#line 112 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp0_ = self->priv->cancellable;
#line 112 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp0_ != NULL) {
#line 4969 "tracker-tags-view.c"
		GCancellable* _tmp1_;
#line 113 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp1_ = self->priv->cancellable;
#line 113 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		g_cancellable_cancel (_tmp1_);
#line 114 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_g_object_unref0 (self->priv->cancellable);
#line 114 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->cancellable = NULL;
#line 4979 "tracker-tags-view.c"
	}
#line 117 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp2_ = self->priv->files;
#line 117 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp2_ != NULL) {
#line 4985 "tracker-tags-view.c"
		GList* _tmp3_;
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp3_ = self->priv->files;
#line 4989 "tracker-tags-view.c"
		{
			GList* url_collection = NULL;
			GList* url_it = NULL;
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			url_collection = _tmp3_;
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			for (url_it = url_collection; url_it != NULL; url_it = url_it->next) {
#line 4997 "tracker-tags-view.c"
				gchar* _tmp4_;
				gchar* url = NULL;
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp4_ = g_strdup ((const gchar*) url_it->data);
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				url = _tmp4_;
#line 5004 "tracker-tags-view.c"
				{
#line 119 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (url);
#line 119 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					url = NULL;
#line 118 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					g_free (url);
#line 5012 "tracker-tags-view.c"
				}
			}
		}
#line 122 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		__g_list_free_g_free0 (self->priv->files);
#line 122 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->files = NULL;
#line 5020 "tracker-tags-view.c"
	}
#line 125 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_tmp5_ = self->priv->tag_data_requests;
#line 125 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	if (_tmp5_ != NULL) {
#line 5026 "tracker-tags-view.c"
		GList* _tmp6_;
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		_tmp6_ = self->priv->tag_data_requests;
#line 5030 "tracker-tags-view.c"
		{
			GList* td_collection = NULL;
			GList* td_it = NULL;
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			td_collection = _tmp6_;
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
			for (td_it = td_collection; td_it != NULL; td_it = td_it->next) {
#line 5038 "tracker-tags-view.c"
				TagData* _tmp7_;
				TagData* td = NULL;
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				_tmp7_ = _tag_data_ref0 ((TagData*) td_it->data);
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
				td = _tmp7_;
#line 5045 "tracker-tags-view.c"
				{
#line 127 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tag_data_unref0 (td);
#line 127 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					td = NULL;
#line 126 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
					_tag_data_unref0 (td);
#line 5053 "tracker-tags-view.c"
				}
			}
		}
#line 130 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		__g_list_free__tag_data_unref0_0 (self->priv->tag_data_requests);
#line 130 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
		self->priv->tag_data_requests = NULL;
#line 5061 "tracker-tags-view.c"
	}
#line 57 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->connection);
#line 58 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->cancellable);
#line 60 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	__g_list_free__tag_data_unref0_0 (self->priv->tag_data_requests);
#line 61 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	__g_list_free_g_free0 (self->priv->files);
#line 63 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->store);
#line 67 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->vbox);
#line 68 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->label);
#line 69 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->entry);
#line 70 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->button_add);
#line 71 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->button_remove);
#line 72 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->scrolled_window);
#line 73 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	_g_object_unref0 (self->priv->view);
#line 56 "/home/carlos/Source/gnome/tracker/src/tracker-needle/tracker-tags-view.vala"
	G_OBJECT_CLASS (tracker_tags_view_parent_class)->finalize (obj);
#line 5089 "tracker-tags-view.c"
}


GType tracker_tags_view_get_type (void) {
	static volatile gsize tracker_tags_view_type_id__volatile = 0;
	if (g_once_init_enter (&tracker_tags_view_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (TrackerTagsViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_tags_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerTagsView), 0, (GInstanceInitFunc) tracker_tags_view_instance_init, NULL };
		GType tracker_tags_view_type_id;
		tracker_tags_view_type_id = g_type_register_static (gtk_box_get_type (), "TrackerTagsView", &g_define_type_info, 0);
		g_once_init_leave (&tracker_tags_view_type_id__volatile, tracker_tags_view_type_id);
	}
	return tracker_tags_view_type_id__volatile;
}



