/* list-view.c generated by valac 0.36.1.38-6532, the Vala compiler
 * generated from list-view.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
#include <gdk/gdk.h>
#include <gio/gio.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <libcommon.h>


#define BOXES_TYPE_ICOLLECTION_VIEW (boxes_icollection_view_get_type ())
#define BOXES_ICOLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_ICOLLECTION_VIEW, BoxesICollectionView))
#define BOXES_IS_ICOLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_ICOLLECTION_VIEW))
#define BOXES_ICOLLECTION_VIEW_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_ICOLLECTION_VIEW, BoxesICollectionViewIface))

typedef struct _BoxesICollectionView BoxesICollectionView;
typedef struct _BoxesICollectionViewIface BoxesICollectionViewIface;

#define BOXES_TYPE_COLLECTION_ITEM (boxes_collection_item_get_type ())
#define BOXES_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem))
#define BOXES_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))
#define BOXES_IS_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_IS_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_COLLECTION_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))

typedef struct _BoxesCollectionItem BoxesCollectionItem;
typedef struct _BoxesCollectionItemClass BoxesCollectionItemClass;

#define BOXES_TYPE_SELECTION_CRITERIA (boxes_selection_criteria_get_type ())

#define BOXES_TYPE_COLLECTION_FILTER (boxes_collection_filter_get_type ())
#define BOXES_COLLECTION_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilter))
#define BOXES_COLLECTION_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilterClass))
#define BOXES_IS_COLLECTION_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_FILTER))
#define BOXES_IS_COLLECTION_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_FILTER))
#define BOXES_COLLECTION_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilterClass))

typedef struct _BoxesCollectionFilter BoxesCollectionFilter;
typedef struct _BoxesCollectionFilterClass BoxesCollectionFilterClass;

#define BOXES_TYPE_UI (boxes_ui_get_type ())
#define BOXES_UI(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_UI, BoxesUI))
#define BOXES_IS_UI(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_UI))
#define BOXES_UI_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_UI, BoxesUIIface))

typedef struct _BoxesUI BoxesUI;
typedef struct _BoxesUIIface BoxesUIIface;

#define BOXES_TYPE_UI_STATE (boxes_ui_state_get_type ())

#define BOXES_TYPE_LIST_VIEW (boxes_list_view_get_type ())
#define BOXES_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIST_VIEW, BoxesListView))
#define BOXES_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIST_VIEW, BoxesListViewClass))
#define BOXES_IS_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIST_VIEW))
#define BOXES_IS_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIST_VIEW))
#define BOXES_LIST_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIST_VIEW, BoxesListViewClass))

typedef struct _BoxesListView BoxesListView;
typedef struct _BoxesListViewClass BoxesListViewClass;
typedef struct _BoxesListViewPrivate BoxesListViewPrivate;

#define BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS (boxes_list_view_item_connections_get_type ())
#define BOXES_LIST_VIEW_ITEM_CONNECTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnections))
#define BOXES_LIST_VIEW_ITEM_CONNECTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnectionsClass))
#define BOXES_LIST_VIEW_IS_ITEM_CONNECTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS))
#define BOXES_LIST_VIEW_IS_ITEM_CONNECTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS))
#define BOXES_LIST_VIEW_ITEM_CONNECTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnectionsClass))

typedef struct _BoxesListViewItemConnections BoxesListViewItemConnections;
typedef struct _BoxesListViewItemConnectionsClass BoxesListViewItemConnectionsClass;

#define BOXES_TYPE_APP_WINDOW (boxes_app_window_get_type ())
#define BOXES_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_APP_WINDOW, BoxesAppWindow))
#define BOXES_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_APP_WINDOW, BoxesAppWindowClass))
#define BOXES_IS_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_APP_WINDOW))
#define BOXES_IS_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_APP_WINDOW))
#define BOXES_APP_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_APP_WINDOW, BoxesAppWindowClass))

typedef struct _BoxesAppWindow BoxesAppWindow;
typedef struct _BoxesAppWindowClass BoxesAppWindowClass;

#define BOXES_TYPE_ACTIONS_POPOVER (boxes_actions_popover_get_type ())
#define BOXES_ACTIONS_POPOVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_ACTIONS_POPOVER, BoxesActionsPopover))
#define BOXES_ACTIONS_POPOVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_ACTIONS_POPOVER, BoxesActionsPopoverClass))
#define BOXES_IS_ACTIONS_POPOVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_ACTIONS_POPOVER))
#define BOXES_IS_ACTIONS_POPOVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_ACTIONS_POPOVER))
#define BOXES_ACTIONS_POPOVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_ACTIONS_POPOVER, BoxesActionsPopoverClass))

typedef struct _BoxesActionsPopover BoxesActionsPopover;
typedef struct _BoxesActionsPopoverClass BoxesActionsPopoverClass;
enum  {
	BOXES_LIST_VIEW_DUMMY_PROPERTY,
	BOXES_LIST_VIEW_PREVIOUS_UI_STATE,
	BOXES_LIST_VIEW_UI_STATE,
	BOXES_LIST_VIEW_FILTER,
	BOXES_LIST_VIEW_LAST_PROPERTY
};
static GParamSpec* boxes_list_view_properties[BOXES_LIST_VIEW_LAST_PROPERTY];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))
#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
typedef struct _Block56Data Block56Data;
typedef struct _Block57Data Block57Data;

#define BOXES_TYPE_MACHINE (boxes_machine_get_type ())
#define BOXES_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_MACHINE, BoxesMachine))
#define BOXES_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_MACHINE, BoxesMachineClass))
#define BOXES_IS_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_MACHINE))
#define BOXES_IS_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_MACHINE))
#define BOXES_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_MACHINE, BoxesMachineClass))

typedef struct _BoxesMachine BoxesMachine;
typedef struct _BoxesMachineClass BoxesMachineClass;
#define _g_free0(var) (var = (g_free (var), NULL))
typedef struct _Block58Data Block58Data;

#define BOXES_TYPE_LIST_VIEW_ROW (boxes_list_view_row_get_type ())
#define BOXES_LIST_VIEW_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIST_VIEW_ROW, BoxesListViewRow))
#define BOXES_LIST_VIEW_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIST_VIEW_ROW, BoxesListViewRowClass))
#define BOXES_IS_LIST_VIEW_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIST_VIEW_ROW))
#define BOXES_IS_LIST_VIEW_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIST_VIEW_ROW))
#define BOXES_LIST_VIEW_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIST_VIEW_ROW, BoxesListViewRowClass))

typedef struct _BoxesListViewRow BoxesListViewRow;
typedef struct _BoxesListViewRowClass BoxesListViewRowClass;
typedef struct _Block59Data Block59Data;
typedef struct _Block60Data Block60Data;

#define BOXES_TYPE_APP (boxes_app_get_type ())
#define BOXES_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_APP, BoxesApp))
#define BOXES_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_APP, BoxesAppClass))
#define BOXES_IS_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_APP))
#define BOXES_IS_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_APP))
#define BOXES_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_APP, BoxesAppClass))

typedef struct _BoxesApp BoxesApp;
typedef struct _BoxesAppClass BoxesAppClass;
#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
typedef struct _Block61Data Block61Data;

#define BOXES_TYPE_LIBVIRT_MACHINE (boxes_libvirt_machine_get_type ())
#define BOXES_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine))
#define BOXES_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))
#define BOXES_IS_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_IS_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_LIBVIRT_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))

typedef struct _BoxesLibvirtMachine BoxesLibvirtMachine;
typedef struct _BoxesLibvirtMachineClass BoxesLibvirtMachineClass;
typedef struct _Block62Data Block62Data;
typedef struct _BoxesListViewItemConnectionsPrivate BoxesListViewItemConnectionsPrivate;
enum  {
	BOXES_LIST_VIEW_ITEM_CONNECTIONS_DUMMY_PROPERTY,
	BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW,
	BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE,
	BOXES_LIST_VIEW_ITEM_CONNECTIONS_LAST_PROPERTY
};
static GParamSpec* boxes_list_view_item_connections_properties[BOXES_LIST_VIEW_ITEM_CONNECTIONS_LAST_PROPERTY];
typedef struct _Block63Data Block63Data;
typedef struct _BoxesCollectionItemPrivate BoxesCollectionItemPrivate;

#define BOXES_TYPE_IPROPERTIES_PROVIDER (boxes_iproperties_provider_get_type ())
#define BOXES_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProvider))
#define BOXES_IS_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER))
#define BOXES_IPROPERTIES_PROVIDER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProviderIface))

typedef struct _BoxesIPropertiesProvider BoxesIPropertiesProvider;
typedef struct _BoxesIPropertiesProviderIface BoxesIPropertiesProviderIface;

#define BOXES_TYPE_PROPERTIES_PAGE (boxes_properties_page_get_type ())

#define BOXES_TYPE_PROPERTY (boxes_property_get_type ())
#define BOXES_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTY, BoxesProperty))
#define BOXES_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTY, BoxesPropertyClass))
#define BOXES_IS_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTY))
#define BOXES_IS_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTY))
#define BOXES_PROPERTY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTY, BoxesPropertyClass))

typedef struct _BoxesProperty BoxesProperty;
typedef struct _BoxesPropertyClass BoxesPropertyClass;
typedef struct _BoxesMachinePrivate BoxesMachinePrivate;

#define BOXES_MACHINE_TYPE_CONNECT_FLAGS (boxes_machine_connect_flags_get_type ())

typedef enum  {
	BOXES_SELECTION_CRITERIA_ALL,
	BOXES_SELECTION_CRITERIA_NONE,
	BOXES_SELECTION_CRITERIA_RUNNING
} BoxesSelectionCriteria;

struct _BoxesICollectionViewIface {
	GTypeInterface parent_iface;
	void (*add_item) (BoxesICollectionView* self, BoxesCollectionItem* item);
	void (*remove_item) (BoxesICollectionView* self, BoxesCollectionItem* item);
	GList* (*get_selected_items) (BoxesICollectionView* self);
	void (*activate_first_item) (BoxesICollectionView* self);
	void (*select_by_criteria) (BoxesICollectionView* self, BoxesSelectionCriteria criteria);
	BoxesCollectionFilter* (*get_filter) (BoxesICollectionView* self);
	void (*set_filter) (BoxesICollectionView* self, BoxesCollectionFilter* value);
};

typedef enum  {
	BOXES_UI_STATE_NONE,
	BOXES_UI_STATE_COLLECTION,
	BOXES_UI_STATE_CREDS,
	BOXES_UI_STATE_DISPLAY,
	BOXES_UI_STATE_WIZARD,
	BOXES_UI_STATE_PROPERTIES
} BoxesUIState;

struct _BoxesUIIface {
	GTypeInterface parent_iface;
	BoxesUIState (*get_previous_ui_state) (BoxesUI* self);
	void (*set_previous_ui_state) (BoxesUI* self, BoxesUIState value);
	BoxesUIState (*get_ui_state) (BoxesUI* self);
	void (*set_ui_state) (BoxesUI* self, BoxesUIState value);
};

struct _BoxesListView {
	GtkScrolledWindow parent_instance;
	BoxesListViewPrivate * priv;
};

struct _BoxesListViewClass {
	GtkScrolledWindowClass parent_class;
};

struct _BoxesListViewPrivate {
	BoxesUIState _previous_ui_state;
	BoxesUIState _ui_state;
	BoxesCollectionFilter* _filter;
	GtkListBox* list_box;
	GtkSizeGroup* size_group;
	GList* hidden_items;
	GHashTable* items_connections;
	BoxesAppWindow* window;
	BoxesActionsPopover* context_popover;
};

struct _Block56Data {
	int _ref_count_;
	BoxesListView* self;
	BoxesAppWindow* window;
};

struct _Block57Data {
	int _ref_count_;
	BoxesListView* self;
	BoxesAppWindow* window;
	BoxesCollectionItem* item;
};

struct _Block58Data {
	int _ref_count_;
	Block57Data * _data57_;
	gulong ui_state_id;
};

struct _Block59Data {
	int _ref_count_;
	BoxesListView* self;
	BoxesListViewRow* view_row;
};

struct _Block60Data {
	int _ref_count_;
	BoxesListView* self;
	BoxesCollectionItem* item;
};

struct _Block61Data {
	int _ref_count_;
	BoxesListView* self;
	GtkListBoxRow* first_row;
};

struct _Block62Data {
	int _ref_count_;
	BoxesListView* self;
	GFunc func;
	gpointer func_target;
};

struct _BoxesListViewItemConnections {
	GObject parent_instance;
	BoxesListViewItemConnectionsPrivate * priv;
};

struct _BoxesListViewItemConnectionsClass {
	GObjectClass parent_class;
};

struct _BoxesListViewItemConnectionsPrivate {
	gulong categories_id;
	gulong name_id;
	gulong info_id;
	BoxesListView* _view;
	BoxesMachine* _machine;
};

struct _Block63Data {
	int _ref_count_;
	BoxesListViewItemConnections* self;
	BoxesListView* view;
};

struct _BoxesCollectionItem {
	GObject parent_instance;
	BoxesCollectionItemPrivate * priv;
};

struct _BoxesCollectionItemClass {
	GObjectClass parent_class;
	gint (*compare) (BoxesCollectionItem* self, BoxesCollectionItem* other);
};

typedef enum  {
	BOXES_PROPERTIES_PAGE_GENERAL,
	BOXES_PROPERTIES_PAGE_SYSTEM,
	BOXES_PROPERTIES_PAGE_DEVICES,
	BOXES_PROPERTIES_PAGE_SNAPSHOTS,
	BOXES_PROPERTIES_PAGE_LAST
} BoxesPropertiesPage;

struct _BoxesIPropertiesProviderIface {
	GTypeInterface parent_iface;
	GList* (*get_properties) (BoxesIPropertiesProvider* self, BoxesPropertiesPage page);
};

typedef enum  {
	BOXES_MACHINE_CONNECT_FLAGS_NONE = 0,
	BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE = 1 << 0
} BoxesMachineConnectFlags;

struct _BoxesMachine {
	BoxesCollectionItem parent_instance;
	BoxesMachinePrivate * priv;
	BoxesCollectionSource* source;
	BoxesBoxConfig* config;
	gboolean stay_on_display;
};

struct _BoxesMachineClass {
	BoxesCollectionItemClass parent_class;
	void (*save_real) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*save_real_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	void (*take_screenshot) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GdkPixbuf* (*take_screenshot_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	GList* (*get_properties) (BoxesMachine* self, BoxesPropertiesPage page);
	void (*connect_display) (BoxesMachine* self, BoxesMachineConnectFlags flags, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*connect_display_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	void (*restart) (BoxesMachine* self);
	void (*clone) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*clone_finish) (BoxesMachine* self, GAsyncResult* _res_);
	void (*disconnect_display) (BoxesMachine* self);
	void (*update_status) (BoxesMachine* self);
	void (*delete) (BoxesMachine* self, gboolean by_user);
	gboolean (*get_suspend_at_exit) (BoxesMachine* self);
	gboolean (*get_can_save) (BoxesMachine* self);
	gboolean (*get_can_restart) (BoxesMachine* self);
	gboolean (*get_can_clone) (BoxesMachine* self);
	gboolean (*get_should_autosave) (BoxesMachine* self);
	gboolean (*get_is_local) (BoxesMachine* self);
};


static gpointer boxes_list_view_parent_class = NULL;
extern BoxesApp* boxes_app_app;
static gpointer boxes_list_view_item_connections_parent_class = NULL;
static BoxesICollectionViewIface * boxes_list_view_boxes_icollection_view_parent_iface = NULL;
static BoxesUIIface * boxes_list_view_boxes_ui_parent_iface = NULL;

GType boxes_collection_item_get_type (void) G_GNUC_CONST;
GType boxes_selection_criteria_get_type (void) G_GNUC_CONST;
GType boxes_collection_filter_get_type (void) G_GNUC_CONST;
GType boxes_icollection_view_get_type (void) G_GNUC_CONST;
GType boxes_ui_state_get_type (void) G_GNUC_CONST;
GType boxes_ui_get_type (void) G_GNUC_CONST;
GType boxes_list_view_get_type (void) G_GNUC_CONST;
static GType boxes_list_view_item_connections_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
GType boxes_app_window_get_type (void) G_GNUC_CONST;
GType boxes_actions_popover_get_type (void) G_GNUC_CONST;
#define BOXES_LIST_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_LIST_VIEW, BoxesListViewPrivate))
static void _g_object_unref0_ (gpointer var);
static inline void _g_list_free__g_object_unref0_ (GList* self);
void boxes_list_view_setup_ui (BoxesListView* self, BoxesAppWindow* window);
static Block56Data* block56_data_ref (Block56Data* _data56_);
static void block56_data_unref (void * _userdata_);
static void __lambda186_ (Block56Data* _data56_);
gboolean boxes_app_window_get_selection_mode (BoxesAppWindow* self);
static void boxes_list_view_update_selection_mode (BoxesListView* self);
static void ___lambda186__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
BoxesActionsPopover* boxes_actions_popover_new (BoxesAppWindow* window);
BoxesActionsPopover* boxes_actions_popover_construct (GType object_type, BoxesAppWindow* window);
static void boxes_list_view_real_add_item (BoxesICollectionView* base, BoxesCollectionItem* item);
static Block57Data* block57_data_ref (Block57Data* _data57_);
static void block57_data_unref (void * _userdata_);
GType boxes_machine_get_type (void) G_GNUC_CONST;
BoxesAppWindow* boxes_machine_get_window (BoxesMachine* self);
BoxesUIState boxes_ui_get_ui_state (BoxesUI* self);
static Block58Data* block58_data_ref (Block58Data* _data58_);
static void block58_data_unref (void * _userdata_);
static void ___lambda190_ (Block58Data* _data58_);
void boxes_icollection_view_add_item (BoxesICollectionView* self, BoxesCollectionItem* item);
static void ____lambda190__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void boxes_list_view_add_row (BoxesListView* self, BoxesCollectionItem* item);
static BoxesListViewItemConnections* boxes_list_view_item_connections_new (BoxesListView* view, BoxesMachine* machine);
static BoxesListViewItemConnections* boxes_list_view_item_connections_construct (GType object_type, BoxesListView* view, BoxesMachine* machine);
void boxes_ui_set_state (BoxesUI* self, BoxesUIState new_state);
GType boxes_list_view_row_get_type (void) G_GNUC_CONST;
static Block59Data* block59_data_ref (Block59Data* _data59_);
static void block59_data_unref (void * _userdata_);
BoxesListViewRow* boxes_list_view_row_new (BoxesCollectionItem* item);
BoxesListViewRow* boxes_list_view_row_construct (GType object_type, BoxesCollectionItem* item);
static void __lambda191_ (Block59Data* _data59_);
static void boxes_list_view_propagate_view_row_selection (BoxesListView* self, BoxesListViewRow* view_row);
static void ___lambda191__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void boxes_list_view_real_remove_item (BoxesICollectionView* base, BoxesCollectionItem* item);
static void boxes_list_view_remove_row (BoxesListView* self, BoxesCollectionItem* item);
static Block60Data* block60_data_ref (Block60Data* _data60_);
static void block60_data_unref (void * _userdata_);
static void boxes_list_view_foreach_row (BoxesListView* self, GFunc func, void* func_target);
static void __lambda192_ (Block60Data* _data60_, GtkListBoxRow* box_row);
BoxesCollectionItem* boxes_list_view_row_get_item (BoxesListViewRow* self);
static void ___lambda192__gfunc (gconstpointer data, gpointer self);
static void boxes_list_view_real_select_by_criteria (BoxesICollectionView* base, BoxesSelectionCriteria criteria);
void boxes_app_window_set_selection_mode (BoxesAppWindow* self, gboolean value);
static void ___lambda193_ (BoxesListView* self, GtkListBoxRow* box_row);
static void boxes_list_view_select_row (BoxesListView* self, GtkListBoxRow* box_row);
static void ____lambda193__gfunc (gconstpointer data, gpointer self);
static void ___lambda194_ (BoxesListView* self, GtkListBoxRow* box_row);
static void boxes_list_view_unselect_row (BoxesListView* self, GtkListBoxRow* box_row);
static void ____lambda194__gfunc (gconstpointer data, gpointer self);
static void ___lambda195_ (BoxesListView* self, GtkListBoxRow* box_row);
static BoxesCollectionItem* boxes_list_view_get_item_for_row (BoxesListView* self, GtkListBoxRow* box_row);
gboolean boxes_machine_get_is_running (BoxesMachine* self);
static void ____lambda195__gfunc (gconstpointer data, gpointer self);
GType boxes_app_get_type (void) G_GNUC_CONST;
static GList* boxes_list_view_real_get_selected_items (BoxesICollectionView* base);
static void boxes_list_view_real_activate_first_item (BoxesICollectionView* base);
static Block61Data* block61_data_ref (Block61Data* _data61_);
static void block61_data_unref (void * _userdata_);
static void __lambda196_ (Block61Data* _data61_, GtkListBoxRow* box_row);
static void ___lambda196__gfunc (gconstpointer data, gpointer self);
static void boxes_list_view_setup_list_box (BoxesListView* self);
static gint boxes_list_view_model_sort (BoxesListView* self, GtkListBoxRow* box_row1, GtkListBoxRow* box_row2);
static gint _boxes_list_view_model_sort_gtk_list_box_sort_func (GtkListBoxRow* row1, GtkListBoxRow* row2, gpointer self);
static gboolean boxes_list_view_model_filter (BoxesListView* self, GtkListBoxRow* box_row);
static gboolean _boxes_list_view_model_filter_gtk_list_box_filter_func (GtkListBoxRow* row, gpointer self);
static void __lambda197_ (BoxesListView* self, GtkListBoxRow* box_row);
GType boxes_libvirt_machine_get_type (void) G_GNUC_CONST;
gboolean boxes_libvirt_machine_get_importing (BoxesLibvirtMachine* self);
void boxes_app_window_select_item (BoxesAppWindow* self, BoxesCollectionItem* item);
static void ___lambda197__gtk_list_box_row_activated (GtkListBox* _sender, GtkListBoxRow* row, gpointer self);
static Block62Data* block62_data_ref (Block62Data* _data62_);
static void block62_data_unref (void * _userdata_);
static void __lambda187_ (Block62Data* _data62_, GtkWidget* child);
static void ___lambda187__gtk_callback (GtkWidget* widget, gpointer self);
gint boxes_collection_item_compare (BoxesCollectionItem* self, BoxesCollectionItem* other);
BoxesCollectionFilter* boxes_icollection_view_get_filter (BoxesICollectionView* self);
gboolean boxes_collection_filter_filter (BoxesCollectionFilter* self, BoxesCollectionItem* item);
static void boxes_list_view_ui_state_changed (BoxesListView* self);
static gboolean boxes_list_view_on_button_press_event (BoxesListView* self, GdkEventButton* event);
static gboolean boxes_list_view_on_button_1_press_event (BoxesListView* self, GdkEventButton* event);
static gboolean boxes_list_view_on_button_3_press_event (BoxesListView* self, GdkEventButton* event);
static gboolean _boxes_list_view_on_button_press_event_gtk_widget_button_release_event (GtkWidget* _sender, GdkEventButton* event, gpointer self);
static void boxes_list_view_toggle_row_selected (BoxesListView* self, GtkListBoxRow* box_row);
static gboolean boxes_list_view_launch_context_popover_for_row (BoxesListView* self, GtkListBoxRow* box_row);
static gboolean boxes_list_view_on_key_press_event (BoxesListView* self, GdkEventKey* event);
static gboolean _boxes_list_view_on_key_press_event_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self);
void boxes_actions_popover_update_for_item (BoxesActionsPopover* self, BoxesCollectionItem* item);
static void __lambda188_ (BoxesListView* self, GtkListBoxRow* box_row);
gboolean boxes_list_view_row_get_selection_mode (BoxesListViewRow* self);
void boxes_list_view_row_set_selection_mode (BoxesListViewRow* self, gboolean value);
static void ___lambda188__gfunc (gconstpointer data, gpointer self);
gboolean boxes_list_view_row_get_selected (BoxesListViewRow* self);
void boxes_list_view_row_set_selected (BoxesListViewRow* self, gboolean value);
BoxesListView* boxes_list_view_new (void);
BoxesListView* boxes_list_view_construct (GType object_type);
static GObject * boxes_list_view_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
BoxesCollectionFilter* boxes_collection_filter_new (void);
BoxesCollectionFilter* boxes_collection_filter_construct (GType object_type);
void boxes_icollection_view_set_filter (BoxesICollectionView* self, BoxesCollectionFilter* value);
static void _boxes_list_view___lambda198_ (BoxesListView* self);
static void __boxes_list_view___lambda198__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void _boxes_list_view___lambda199_ (BoxesListView* self);
static void __boxes_list_view___lambda199__boxes_collection_filter_filter_func_changed (BoxesCollectionFilter* _sender, gpointer self);
static void _boxes_list_view_ui_state_changed_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
#define BOXES_LIST_VIEW_ITEM_CONNECTIONS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnectionsPrivate))
static Block63Data* block63_data_ref (Block63Data* _data63_);
static void block63_data_unref (void * _userdata_);
static void boxes_list_view_item_connections_set_view (BoxesListViewItemConnections* self, BoxesListView* value);
static void boxes_list_view_item_connections_set_machine (BoxesListViewItemConnections* self, BoxesMachine* value);
GType boxes_properties_page_get_type (void) G_GNUC_CONST;
GType boxes_property_get_type (void) G_GNUC_CONST;
GType boxes_iproperties_provider_get_type (void) G_GNUC_CONST;
GType boxes_machine_connect_flags_get_type (void) G_GNUC_CONST;
static void __lambda183_ (Block63Data* _data63_);
static void ___lambda183__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void __lambda184_ (Block63Data* _data63_);
static void ___lambda184__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void __lambda185_ (Block63Data* _data63_);
static void ___lambda185__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void boxes_list_view_item_connections_real_dispose (GObject* base);
static BoxesMachine* boxes_list_view_item_connections_get_machine (BoxesListViewItemConnections* self);
static BoxesListView* boxes_list_view_item_connections_get_view (BoxesListViewItemConnections* self);
static void boxes_list_view_item_connections_finalize (GObject * obj);
static void _vala_boxes_list_view_item_connections_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_boxes_list_view_item_connections_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
static void boxes_list_view_finalize (GObject * obj);
BoxesUIState boxes_ui_get_previous_ui_state (BoxesUI* self);
static void _vala_boxes_list_view_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
void boxes_ui_set_previous_ui_state (BoxesUI* self, BoxesUIState value);
void boxes_ui_set_ui_state (BoxesUI* self, BoxesUIState value);
static void _vala_boxes_list_view_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);


static void _g_object_unref0_ (gpointer var) {
#line 15 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
#line 528 "list-view.c"
}


static inline void _g_list_free__g_object_unref0_ (GList* self) {
#line 15 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_list_free_full (self, (GDestroyNotify) _g_object_unref0_);
#line 535 "list-view.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return self ? g_object_ref (self) : NULL;
#line 542 "list-view.c"
}


static Block56Data* block56_data_ref (Block56Data* _data56_) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data56_->_ref_count_);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data56_;
#line 551 "list-view.c"
}


static void block56_data_unref (void * _userdata_) {
	Block56Data* _data56_;
	_data56_ = (Block56Data*) _userdata_;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data56_->_ref_count_)) {
#line 560 "list-view.c"
		BoxesListView* self;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data56_->self;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data56_->window);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block56Data, _data56_);
#line 570 "list-view.c"
	}
}


static void __lambda186_ (Block56Data* _data56_) {
	BoxesListView* self;
	GtkSelectionMode _tmp0_ = 0;
	BoxesAppWindow* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	GtkListBox* _tmp4_;
#line 76 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data56_->self;
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _data56_->window;
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = boxes_app_window_get_selection_mode (_tmp1_);
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _tmp2_;
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp3_) {
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = GTK_SELECTION_MULTIPLE;
#line 594 "list-view.c"
	} else {
#line 78 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = GTK_SELECTION_NONE;
#line 598 "list-view.c"
	}
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = self->priv->list_box;
#line 77 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_set_selection_mode (_tmp4_, _tmp0_);
#line 80 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_update_selection_mode (self);
#line 606 "list-view.c"
}


static void ___lambda186__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 76 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda186_ (self);
#line 613 "list-view.c"
}


void boxes_list_view_setup_ui (BoxesListView* self, BoxesAppWindow* window) {
	Block56Data* _data56_;
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
	BoxesAppWindow* _tmp2_;
	BoxesAppWindow* _tmp3_;
	BoxesAppWindow* _tmp4_;
	BoxesAppWindow* _tmp5_;
	BoxesActionsPopover* _tmp6_;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (window != NULL);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data56_ = g_slice_new0 (Block56Data);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data56_->_ref_count_ = 1;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data56_->self = g_object_ref (self);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = window;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (_data56_->window);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data56_->window = _tmp1_;
#line 74 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data56_->window;
#line 74 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 74 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->window);
#line 74 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->window = _tmp3_;
#line 76 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = _data56_->window;
#line 76 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_data ((GObject*) _tmp4_, "notify::selection-mode", (GCallback) ___lambda186__g_object_notify, block56_data_ref (_data56_), (GClosureNotify) block56_data_unref, 0);
#line 83 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _data56_->window;
#line 83 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = boxes_actions_popover_new (_tmp5_);
#line 83 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_ref_sink (_tmp6_);
#line 83 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->context_popover);
#line 83 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->context_popover = _tmp6_;
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block56_data_unref (_data56_);
#line 73 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data56_ = NULL;
#line 670 "list-view.c"
}


static Block57Data* block57_data_ref (Block57Data* _data57_) {
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data57_->_ref_count_);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data57_;
#line 679 "list-view.c"
}


static void block57_data_unref (void * _userdata_) {
	Block57Data* _data57_;
	_data57_ = (Block57Data*) _userdata_;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data57_->_ref_count_)) {
#line 688 "list-view.c"
		BoxesListView* self;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data57_->self;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data57_->window);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data57_->item);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block57Data, _data57_);
#line 700 "list-view.c"
	}
}


static Block58Data* block58_data_ref (Block58Data* _data58_) {
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data58_->_ref_count_);
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data58_;
#line 710 "list-view.c"
}


static void block58_data_unref (void * _userdata_) {
	Block58Data* _data58_;
	_data58_ = (Block58Data*) _userdata_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data58_->_ref_count_)) {
#line 719 "list-view.c"
		BoxesListView* self;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data58_->_data57_->self;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		block57_data_unref (_data58_->_data57_);
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_->_data57_ = NULL;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block58Data, _data58_);
#line 729 "list-view.c"
	}
}


static void ___lambda190_ (Block58Data* _data58_) {
	Block57Data* _data57_;
	BoxesListView* self;
	BoxesAppWindow* _tmp0_;
	BoxesUIState _tmp1_;
	BoxesUIState _tmp2_;
	GList* _tmp3_;
	BoxesCollectionItem* _tmp4_;
	GList* _tmp5_;
	BoxesAppWindow* _tmp8_;
	gulong _tmp9_;
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_ = _data58_->_data57_;
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data57_->self;
#line 103 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data57_->window;
#line 103 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp0_);
#line 103 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _tmp1_;
#line 103 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp2_ == BOXES_UI_STATE_WIZARD) {
#line 104 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 759 "list-view.c"
	}
#line 106 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->hidden_items;
#line 106 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = _data57_->item;
#line 106 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = g_list_find (_tmp3_, _tmp4_);
#line 106 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_ != NULL) {
#line 769 "list-view.c"
		BoxesCollectionItem* _tmp6_;
		BoxesCollectionItem* _tmp7_;
#line 107 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp6_ = _data57_->item;
#line 107 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_icollection_view_add_item ((BoxesICollectionView*) self, _tmp6_);
#line 108 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp7_ = _data57_->item;
#line 108 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->hidden_items = g_list_remove (self->priv->hidden_items, _tmp7_);
#line 780 "list-view.c"
	}
#line 110 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = _data57_->window;
#line 110 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = _data58_->ui_state_id;
#line 110 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_handler_disconnect ((GObject*) _tmp8_, _tmp9_);
#line 788 "list-view.c"
}


static void ____lambda190__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	___lambda190_ (self);
#line 795 "list-view.c"
}


static void boxes_list_view_real_add_item (BoxesICollectionView* base, BoxesCollectionItem* item) {
	BoxesListView * self;
	Block57Data* _data57_;
	BoxesCollectionItem* _tmp0_;
	BoxesCollectionItem* _tmp1_;
	BoxesMachine* machine = NULL;
	BoxesCollectionItem* _tmp2_;
	BoxesMachine* _tmp3_;
	BoxesMachine* _tmp4_;
	BoxesMachine* _tmp7_;
	BoxesAppWindow* _tmp8_;
	BoxesAppWindow* _tmp9_;
	BoxesAppWindow* _tmp10_;
	BoxesAppWindow* _tmp11_;
	BoxesUIState _tmp12_;
	BoxesUIState _tmp13_;
	BoxesCollectionItem* _tmp18_;
	GHashTable* _tmp19_;
	BoxesCollectionItem* _tmp20_;
	BoxesCollectionItem* _tmp21_;
	BoxesMachine* _tmp22_;
	BoxesListViewItemConnections* _tmp23_;
	BoxesCollectionItem* _tmp24_;
	BoxesAppWindow* _tmp25_;
	BoxesUIState _tmp26_;
	BoxesUIState _tmp27_;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (item != NULL);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_ = g_slice_new0 (Block57Data);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_->_ref_count_ = 1;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_->self = g_object_ref (self);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = item;
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (_data57_->item);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_->item = _tmp1_;
#line 87 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data57_->item;
#line 87 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp2_) : NULL);
#line 87 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	machine = _tmp3_;
#line 89 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = machine;
#line 89 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp4_ == NULL) {
#line 853 "list-view.c"
		gchar* _tmp5_;
		gchar* _tmp6_;
#line 90 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp5_ = g_strdup_printf ("Cannot add item %p", &_data57_->item);
#line 90 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp6_ = _tmp5_;
#line 90 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_warning ("list-view.vala:90: %s", _tmp6_);
#line 90 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_free0 (_tmp6_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (machine);
#line 92 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		block57_data_unref (_data57_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data57_ = NULL;
#line 92 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 872 "list-view.c"
	}
#line 95 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = machine;
#line 95 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = boxes_machine_get_window (_tmp7_);
#line 95 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = _tmp8_;
#line 95 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = _g_object_ref0 (_tmp9_);
#line 95 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_->window = _tmp10_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp11_ = _data57_->window;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp12_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp11_);
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp13_ = _tmp12_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp13_ == BOXES_UI_STATE_WIZARD) {
#line 892 "list-view.c"
		Block58Data* _data58_;
		BoxesCollectionItem* _tmp14_;
		BoxesCollectionItem* _tmp15_;
		BoxesAppWindow* _tmp16_;
		gulong _tmp17_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_ = g_slice_new0 (Block58Data);
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_->_ref_count_ = 1;
#line 96 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_->_data57_ = block57_data_ref (_data57_);
#line 98 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp14_ = _data57_->item;
#line 98 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp15_ = _g_object_ref0 (_tmp14_);
#line 98 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->hidden_items = g_list_append (self->priv->hidden_items, _tmp15_);
#line 100 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_->ui_state_id = (gulong) 0;
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp16_ = _data57_->window;
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp17_ = g_signal_connect_data ((GObject*) _tmp16_, "notify::ui-state", (GCallback) ____lambda190__g_object_notify, block58_data_ref (_data58_), (GClosureNotify) block58_data_unref, 0);
#line 102 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_->ui_state_id = _tmp17_;
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		block58_data_unref (_data58_);
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data58_ = NULL;
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (machine);
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		block57_data_unref (_data57_);
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data57_ = NULL;
#line 113 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 930 "list-view.c"
	}
#line 116 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp18_ = _data57_->item;
#line 116 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_add_row (self, _tmp18_);
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp19_ = self->priv->items_connections;
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp20_ = _data57_->item;
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp21_ = _g_object_ref0 (_tmp20_);
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp22_ = machine;
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp23_ = boxes_list_view_item_connections_new (self, _tmp22_);
#line 117 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_hash_table_insert (_tmp19_, _tmp21_, _tmp23_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp24_ = _data57_->item;
#line 119 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp25_ = _data57_->window;
#line 119 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp26_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp25_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp27_ = _tmp26_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_ui_set_state ((BoxesUI*) _tmp24_, _tmp27_);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (machine);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block57_data_unref (_data57_);
#line 86 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data57_ = NULL;
#line 964 "list-view.c"
}


static Block59Data* block59_data_ref (Block59Data* _data59_) {
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data59_->_ref_count_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data59_;
#line 973 "list-view.c"
}


static void block59_data_unref (void * _userdata_) {
	Block59Data* _data59_;
	_data59_ = (Block59Data*) _userdata_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data59_->_ref_count_)) {
#line 982 "list-view.c"
		BoxesListView* self;
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data59_->self;
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data59_->view_row);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block59Data, _data59_);
#line 992 "list-view.c"
	}
}


static void __lambda191_ (Block59Data* _data59_) {
	BoxesListView* self;
#line 127 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data59_->self;
#line 128 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_propagate_view_row_selection (self, _data59_->view_row);
#line 1003 "list-view.c"
}


static void ___lambda191__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 127 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda191_ (self);
#line 1010 "list-view.c"
}


static void boxes_list_view_add_row (BoxesListView* self, BoxesCollectionItem* item) {
	Block59Data* _data59_;
	GtkListBoxRow* box_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkSizeGroup* _tmp1_;
	BoxesCollectionItem* _tmp2_;
	BoxesListViewRow* _tmp3_;
	GtkListBox* _tmp4_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (item != NULL);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data59_ = g_slice_new0 (Block59Data);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data59_->_ref_count_ = 1;
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data59_->self = g_object_ref (self);
#line 123 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = (GtkListBoxRow*) gtk_list_box_row_new ();
#line 123 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_ref_sink (_tmp0_);
#line 123 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp0_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = self->priv->size_group;
#line 124 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_size_group_add_widget (_tmp1_, (GtkWidget*) box_row);
#line 125 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = item;
#line 125 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = boxes_list_view_row_new (_tmp2_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_ref_sink (_tmp3_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data59_->view_row = _tmp3_;
#line 127 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_data ((GObject*) _data59_->view_row, "notify::selected", (GCallback) ___lambda191__g_object_notify, block59_data_ref (_data59_), (GClosureNotify) block59_data_unref, 0);
#line 131 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_set_visible ((GtkWidget*) box_row, TRUE);
#line 132 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_set_visible ((GtkWidget*) _data59_->view_row, TRUE);
#line 134 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_container_add ((GtkContainer*) box_row, (GtkWidget*) _data59_->view_row);
#line 135 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = self->priv->list_box;
#line 135 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_container_add ((GtkContainer*) _tmp4_, (GtkWidget*) box_row);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block59_data_unref (_data59_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data59_ = NULL;
#line 1068 "list-view.c"
}


static void boxes_list_view_real_remove_item (BoxesICollectionView* base, BoxesCollectionItem* item) {
	BoxesListView * self;
	BoxesCollectionItem* _tmp0_;
	GHashTable* _tmp1_;
	BoxesCollectionItem* _tmp2_;
	BoxesCollectionItem* _tmp3_;
#line 138 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 138 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (item != NULL);
#line 139 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = item;
#line 139 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->hidden_items = g_list_remove (self->priv->hidden_items, _tmp0_);
#line 140 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = self->priv->items_connections;
#line 140 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = item;
#line 140 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_hash_table_remove (_tmp1_, _tmp2_);
#line 141 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = item;
#line 141 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_remove_row (self, _tmp3_);
#line 1096 "list-view.c"
}


static Block60Data* block60_data_ref (Block60Data* _data60_) {
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data60_->_ref_count_);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data60_;
#line 1105 "list-view.c"
}


static void block60_data_unref (void * _userdata_) {
	Block60Data* _data60_;
	_data60_ = (Block60Data*) _userdata_;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data60_->_ref_count_)) {
#line 1114 "list-view.c"
		BoxesListView* self;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data60_->self;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data60_->item);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block60Data, _data60_);
#line 1124 "list-view.c"
	}
}


static void __lambda192_ (Block60Data* _data60_, GtkListBoxRow* box_row) {
	BoxesListView* self;
	BoxesListViewRow* view_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* _tmp3_;
	BoxesListViewRow* _tmp4_;
	BoxesCollectionItem* _tmp5_;
	BoxesCollectionItem* _tmp6_;
	BoxesCollectionItem* _tmp7_;
#line 145 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data60_->self;
#line 145 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 146 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 146 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 146 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 146 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row = _tmp2_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = view_row;
#line 147 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp3_ == NULL) {
#line 148 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view_row);
#line 148 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 1160 "list-view.c"
	}
#line 150 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = view_row;
#line 150 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = boxes_list_view_row_get_item (_tmp4_);
#line 150 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = _tmp5_;
#line 150 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _data60_->item;
#line 150 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp6_ == _tmp7_) {
#line 1172 "list-view.c"
		GtkListBox* _tmp8_;
		GtkListBoxRow* _tmp9_;
		GtkSizeGroup* _tmp10_;
		GtkListBoxRow* _tmp11_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = self->priv->list_box;
#line 151 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp9_ = box_row;
#line 151 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		gtk_container_remove ((GtkContainer*) _tmp8_, (GtkWidget*) _tmp9_);
#line 152 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp10_ = self->priv->size_group;
#line 152 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp11_ = box_row;
#line 152 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		gtk_size_group_remove_widget (_tmp10_, (GtkWidget*) _tmp11_);
#line 1189 "list-view.c"
	}
#line 145 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row);
#line 1193 "list-view.c"
}


static void ___lambda192__gfunc (gconstpointer data, gpointer self) {
#line 145 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda192_ (self, (GtkListBoxRow*) data);
#line 1200 "list-view.c"
}


static void boxes_list_view_remove_row (BoxesListView* self, BoxesCollectionItem* item) {
	Block60Data* _data60_;
	BoxesCollectionItem* _tmp0_;
	BoxesCollectionItem* _tmp1_;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (item != NULL);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data60_ = g_slice_new0 (Block60Data);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data60_->_ref_count_ = 1;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data60_->self = g_object_ref (self);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = item;
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (_data60_->item);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data60_->item = _tmp1_;
#line 145 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_foreach_row (self, ___lambda192__gfunc, _data60_);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block60_data_unref (_data60_);
#line 144 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data60_ = NULL;
#line 1232 "list-view.c"
}


static void ___lambda193_ (BoxesListView* self, GtkListBoxRow* box_row) {
	GtkListBoxRow* _tmp0_;
#line 163 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 163 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 163 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_select_row (self, _tmp0_);
#line 1244 "list-view.c"
}


static void ____lambda193__gfunc (gconstpointer data, gpointer self) {
#line 163 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	___lambda193_ ((BoxesListView*) self, (GtkListBoxRow*) data);
#line 1251 "list-view.c"
}


static void ___lambda194_ (BoxesListView* self, GtkListBoxRow* box_row) {
	GtkListBoxRow* _tmp0_;
#line 167 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 167 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 167 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_unselect_row (self, _tmp0_);
#line 1263 "list-view.c"
}


static void ____lambda194__gfunc (gconstpointer data, gpointer self) {
#line 167 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	___lambda194_ ((BoxesListView*) self, (GtkListBoxRow*) data);
#line 1270 "list-view.c"
}


static void ___lambda195_ (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesCollectionItem* item = NULL;
	GtkListBoxRow* _tmp0_;
	BoxesCollectionItem* _tmp1_;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_ = FALSE;
	BoxesCollectionItem* _tmp4_;
#line 171 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 172 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 172 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = boxes_list_view_get_item_for_row (self, _tmp0_);
#line 172 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item = _tmp1_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = item;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp4_ != NULL) {
#line 1293 "list-view.c"
		BoxesCollectionItem* _tmp5_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp5_ = item;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp3_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, BOXES_TYPE_MACHINE);
#line 1299 "list-view.c"
	} else {
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp3_ = FALSE;
#line 1303 "list-view.c"
	}
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp3_) {
#line 1307 "list-view.c"
		BoxesCollectionItem* _tmp6_;
		gboolean _tmp7_;
		gboolean _tmp8_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp6_ = item;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp7_ = boxes_machine_get_is_running (G_TYPE_CHECK_INSTANCE_TYPE (_tmp6_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp6_) : NULL);
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = _tmp7_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp2_ = _tmp8_;
#line 1319 "list-view.c"
	} else {
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp2_ = FALSE;
#line 1323 "list-view.c"
	}
#line 173 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp2_) {
#line 1327 "list-view.c"
		GtkListBoxRow* _tmp9_;
#line 174 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp9_ = box_row;
#line 174 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_select_row (self, _tmp9_);
#line 1333 "list-view.c"
	} else {
		GtkListBoxRow* _tmp10_;
#line 176 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp10_ = box_row;
#line 176 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_unselect_row (self, _tmp10_);
#line 1340 "list-view.c"
	}
#line 171 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item);
#line 1344 "list-view.c"
}


static void ____lambda195__gfunc (gconstpointer data, gpointer self) {
#line 171 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	___lambda195_ ((BoxesListView*) self, (GtkListBoxRow*) data);
#line 1351 "list-view.c"
}


static void boxes_list_view_real_select_by_criteria (BoxesICollectionView* base, BoxesSelectionCriteria criteria) {
	BoxesListView * self;
	BoxesAppWindow* _tmp0_;
	BoxesSelectionCriteria _tmp1_;
	BoxesApp* _tmp2_;
#line 157 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 158 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->window;
#line 158 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_app_window_set_selection_mode (_tmp0_, TRUE);
#line 160 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = criteria;
#line 160 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (_tmp1_) {
#line 1370 "list-view.c"
		default:
#line 160 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_SELECTION_CRITERIA_ALL:
#line 1374 "list-view.c"
		{
#line 163 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			boxes_list_view_foreach_row (self, ____lambda193__gfunc, self);
#line 165 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			break;
#line 1380 "list-view.c"
		}
#line 160 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_SELECTION_CRITERIA_NONE:
#line 1384 "list-view.c"
		{
#line 167 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			boxes_list_view_foreach_row (self, ____lambda194__gfunc, self);
#line 169 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			break;
#line 1390 "list-view.c"
		}
#line 160 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_SELECTION_CRITERIA_RUNNING:
#line 1394 "list-view.c"
		{
#line 171 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			boxes_list_view_foreach_row (self, ____lambda195__gfunc, self);
#line 179 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			break;
#line 1400 "list-view.c"
		}
	}
#line 182 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = boxes_app_app;
#line 182 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_notify ((GObject*) _tmp2_, "selected-items");
#line 1407 "list-view.c"
}


static GList* boxes_list_view_real_get_selected_items (BoxesICollectionView* base) {
	BoxesListView * self;
	GList* result = NULL;
	GList* selected = NULL;
	GtkListBox* _tmp0_;
	GList* _tmp1_;
	GList* _tmp6_;
#line 185 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 186 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	selected = NULL;
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->list_box;
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_list_box_get_selected_rows (_tmp0_);
#line 1426 "list-view.c"
	{
		GList* box_row_collection = NULL;
		GList* box_row_it = NULL;
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		box_row_collection = _tmp1_;
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		for (box_row_it = box_row_collection; box_row_it != NULL; box_row_it = box_row_it->next) {
#line 1434 "list-view.c"
			GtkListBoxRow* box_row = NULL;
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			box_row = (GtkListBoxRow*) box_row_it->data;
#line 1438 "list-view.c"
			{
				BoxesCollectionItem* item = NULL;
				GtkListBoxRow* _tmp2_;
				BoxesCollectionItem* _tmp3_;
				BoxesCollectionItem* _tmp4_;
				BoxesCollectionItem* _tmp5_;
#line 189 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				_tmp2_ = box_row;
#line 189 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				_tmp3_ = boxes_list_view_get_item_for_row (self, _tmp2_);
#line 189 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				item = _tmp3_;
#line 190 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				_tmp4_ = item;
#line 190 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				_tmp5_ = _g_object_ref0 (_tmp4_);
#line 190 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				selected = g_list_append (selected, _tmp5_);
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
				_g_object_unref0 (item);
#line 1459 "list-view.c"
			}
		}
#line 188 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_list_free0 (box_row_collection);
#line 1464 "list-view.c"
	}
#line 193 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = selected;
#line 193 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	selected = NULL;
#line 193 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp6_;
#line 193 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__g_list_free__g_object_unref0_0 (selected);
#line 193 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 1476 "list-view.c"
}


static Block61Data* block61_data_ref (Block61Data* _data61_) {
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data61_->_ref_count_);
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data61_;
#line 1485 "list-view.c"
}


static void block61_data_unref (void * _userdata_) {
	Block61Data* _data61_;
	_data61_ = (Block61Data*) _userdata_;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data61_->_ref_count_)) {
#line 1494 "list-view.c"
		BoxesListView* self;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data61_->self;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data61_->first_row);
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block61Data, _data61_);
#line 1504 "list-view.c"
	}
}


static void __lambda196_ (Block61Data* _data61_, GtkListBoxRow* box_row) {
	BoxesListView* self;
	GtkListBoxRow* _tmp0_;
#line 198 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data61_->self;
#line 198 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 199 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data61_->first_row;
#line 199 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp0_ == NULL) {
#line 1520 "list-view.c"
		GtkListBoxRow* _tmp1_;
		GtkListBoxRow* _tmp2_;
#line 200 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp1_ = box_row;
#line 200 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp2_ = _g_object_ref0 (_tmp1_);
#line 200 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data61_->first_row);
#line 200 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_data61_->first_row = _tmp2_;
#line 1531 "list-view.c"
	}
}


static void ___lambda196__gfunc (gconstpointer data, gpointer self) {
#line 198 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda196_ (self, (GtkListBoxRow*) data);
#line 1539 "list-view.c"
}


static void boxes_list_view_real_activate_first_item (BoxesICollectionView* base) {
	BoxesListView * self;
	Block61Data* _data61_;
	GtkListBoxRow* _tmp0_;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data61_ = g_slice_new0 (Block61Data);
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data61_->_ref_count_ = 1;
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data61_->self = g_object_ref (self);
#line 197 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data61_->first_row = NULL;
#line 198 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_foreach_row (self, ___lambda196__gfunc, _data61_);
#line 203 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data61_->first_row;
#line 203 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp0_ == NULL) {
#line 1563 "list-view.c"
		GtkListBox* _tmp1_;
		GtkListBoxRow* _tmp2_;
#line 204 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp1_ = self->priv->list_box;
#line 204 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp2_ = _data61_->first_row;
#line 204 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_signal_emit_by_name (_tmp1_, "row-activated", _tmp2_);
#line 1572 "list-view.c"
	}
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block61_data_unref (_data61_);
#line 196 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data61_ = NULL;
#line 1578 "list-view.c"
}


static gint _boxes_list_view_model_sort_gtk_list_box_sort_func (GtkListBoxRow* row1, GtkListBoxRow* row2, gpointer self) {
	gint result;
	result = boxes_list_view_model_sort ((BoxesListView*) self, row1, row2);
#line 209 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 1587 "list-view.c"
}


static gboolean _boxes_list_view_model_filter_gtk_list_box_filter_func (GtkListBoxRow* row, gpointer self) {
	gboolean result;
	result = boxes_list_view_model_filter ((BoxesListView*) self, row);
#line 210 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 1596 "list-view.c"
}


static void __lambda197_ (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesAppWindow* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	BoxesCollectionItem* item = NULL;
	GtkListBoxRow* _tmp3_;
	BoxesCollectionItem* _tmp4_;
	gboolean _tmp5_ = FALSE;
	BoxesCollectionItem* _tmp6_;
	BoxesAppWindow* _tmp10_;
	BoxesCollectionItem* _tmp11_;
#line 212 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 213 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->window;
#line 213 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = boxes_app_window_get_selection_mode (_tmp0_);
#line 213 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _tmp1_;
#line 213 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp2_) {
#line 214 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 1623 "list-view.c"
	}
#line 216 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = box_row;
#line 216 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = boxes_list_view_get_item_for_row (self, _tmp3_);
#line 216 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item = _tmp4_;
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = item;
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp6_, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 1635 "list-view.c"
		BoxesCollectionItem* _tmp7_;
		gboolean _tmp8_;
		gboolean _tmp9_;
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp7_ = item;
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = boxes_libvirt_machine_get_importing (G_TYPE_CHECK_INSTANCE_TYPE (_tmp7_, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) _tmp7_) : NULL);
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp9_ = _tmp8_;
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp5_ = _tmp9_;
#line 1647 "list-view.c"
	} else {
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp5_ = FALSE;
#line 1651 "list-view.c"
	}
#line 217 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_) {
#line 218 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (item);
#line 218 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 1659 "list-view.c"
	}
#line 220 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = self->priv->window;
#line 220 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp11_ = item;
#line 220 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_app_window_select_item (_tmp10_, _tmp11_);
#line 212 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item);
#line 1669 "list-view.c"
}


static void ___lambda197__gtk_list_box_row_activated (GtkListBox* _sender, GtkListBoxRow* row, gpointer self) {
#line 212 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda197_ ((BoxesListView*) self, row);
#line 1676 "list-view.c"
}


static void boxes_list_view_setup_list_box (BoxesListView* self) {
	GtkListBox* _tmp0_;
	GtkListBox* _tmp1_;
	GtkListBox* _tmp2_;
	GtkListBox* _tmp3_;
#line 207 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 208 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->list_box;
#line 208 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_set_selection_mode (_tmp0_, GTK_SELECTION_NONE);
#line 209 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = self->priv->list_box;
#line 209 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_set_sort_func (_tmp1_, _boxes_list_view_model_sort_gtk_list_box_sort_func, g_object_ref (self), g_object_unref);
#line 210 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = self->priv->list_box;
#line 210 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_set_filter_func (_tmp2_, _boxes_list_view_model_filter_gtk_list_box_filter_func, g_object_ref (self), g_object_unref);
#line 212 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->list_box;
#line 212 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_object (_tmp3_, "row-activated", (GCallback) ___lambda197__gtk_list_box_row_activated, self, 0);
#line 223 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_update_selection_mode (self);
#line 1705 "list-view.c"
}


static BoxesCollectionItem* boxes_list_view_get_item_for_row (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesCollectionItem* result = NULL;
	BoxesListViewRow* view = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* _tmp3_;
	BoxesListViewRow* _tmp4_;
	BoxesCollectionItem* _tmp5_;
	BoxesCollectionItem* _tmp6_;
	BoxesCollectionItem* _tmp7_;
#line 226 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 226 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (box_row != NULL, NULL);
#line 227 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 227 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 227 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 227 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view = _tmp2_;
#line 228 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = view;
#line 228 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp3_ == NULL) {
#line 229 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = NULL;
#line 229 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view);
#line 229 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 1742 "list-view.c"
	}
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = view;
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = boxes_list_view_row_get_item (_tmp4_);
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = _tmp5_;
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _g_object_ref0 (_tmp6_);
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp7_;
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view);
#line 231 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 1758 "list-view.c"
}


static Block62Data* block62_data_ref (Block62Data* _data62_) {
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data62_->_ref_count_);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data62_;
#line 1767 "list-view.c"
}


static void block62_data_unref (void * _userdata_) {
	Block62Data* _data62_;
	_data62_ = (Block62Data*) _userdata_;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data62_->_ref_count_)) {
#line 1776 "list-view.c"
		BoxesListView* self;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data62_->self;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block62Data, _data62_);
#line 1784 "list-view.c"
	}
}


static void __lambda187_ (Block62Data* _data62_, GtkWidget* child) {
	BoxesListView* self;
	GtkListBoxRow* box_row = NULL;
	GtkWidget* _tmp0_;
	GtkListBoxRow* _tmp1_;
	GtkListBoxRow* _tmp2_;
	GFunc _tmp3_;
	void* _tmp3__target;
	GtkListBoxRow* _tmp4_;
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data62_->self;
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (child != NULL);
#line 236 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = child;
#line 236 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, gtk_list_box_row_get_type ()) ? ((GtkListBoxRow*) _tmp0_) : NULL);
#line 236 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp1_;
#line 237 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = box_row;
#line 237 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp2_ == NULL) {
#line 238 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (box_row);
#line 238 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return;
#line 1816 "list-view.c"
	}
#line 240 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _data62_->func;
#line 240 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3__target = _data62_->func_target;
#line 240 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = box_row;
#line 240 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ (_tmp4_, _tmp3__target);
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 1828 "list-view.c"
}


static void ___lambda187__gtk_callback (GtkWidget* widget, gpointer self) {
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda187_ (self, widget);
#line 1835 "list-view.c"
}


static void boxes_list_view_foreach_row (BoxesListView* self, GFunc func, void* func_target) {
	Block62Data* _data62_;
	GFunc _tmp0_;
	void* _tmp0__target;
	GtkListBox* _tmp1_;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_ = g_slice_new0 (Block62Data);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_->_ref_count_ = 1;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_->self = g_object_ref (self);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = func;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0__target = func_target;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_->func = _tmp0_;
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_->func_target = _tmp0__target;
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = self->priv->list_box;
#line 235 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_container_forall ((GtkContainer*) _tmp1_, ___lambda187__gtk_callback, _data62_);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block62_data_unref (_data62_);
#line 234 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data62_ = NULL;
#line 1868 "list-view.c"
}


static gint boxes_list_view_model_sort (BoxesListView* self, GtkListBoxRow* box_row1, GtkListBoxRow* box_row2) {
	gint result = 0;
	BoxesListViewRow* view_row1 = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* view_row2 = NULL;
	GtkListBoxRow* _tmp3_;
	GtkWidget* _tmp4_;
	BoxesListViewRow* _tmp5_;
	BoxesCollectionItem* item1 = NULL;
	BoxesListViewRow* _tmp6_;
	BoxesCollectionItem* _tmp7_;
	BoxesCollectionItem* _tmp8_;
	BoxesCollectionItem* _tmp9_;
	BoxesCollectionItem* item2 = NULL;
	BoxesListViewRow* _tmp10_;
	BoxesCollectionItem* _tmp11_;
	BoxesCollectionItem* _tmp12_;
	BoxesCollectionItem* _tmp13_;
	gboolean _tmp14_ = FALSE;
	BoxesCollectionItem* _tmp15_;
	BoxesCollectionItem* _tmp17_;
	BoxesCollectionItem* _tmp18_;
	gint _tmp19_;
#line 244 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 244 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (box_row1 != NULL, 0);
#line 244 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (box_row2 != NULL, 0);
#line 245 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row1;
#line 245 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 245 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 245 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row1 = _tmp2_;
#line 246 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = box_row2;
#line 246 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = gtk_bin_get_child ((GtkBin*) _tmp3_);
#line 246 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp4_) : NULL);
#line 246 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row2 = _tmp5_;
#line 247 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = view_row1;
#line 247 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = boxes_list_view_row_get_item (_tmp6_);
#line 247 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = _tmp7_;
#line 247 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = _g_object_ref0 (_tmp8_);
#line 247 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item1 = _tmp9_;
#line 248 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = view_row2;
#line 248 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp11_ = boxes_list_view_row_get_item (_tmp10_);
#line 248 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp12_ = _tmp11_;
#line 248 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp13_ = _g_object_ref0 (_tmp12_);
#line 248 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item2 = _tmp13_;
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp15_ = item1;
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp15_ == NULL) {
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp14_ = TRUE;
#line 1945 "list-view.c"
	} else {
		BoxesCollectionItem* _tmp16_;
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp16_ = item2;
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp14_ = _tmp16_ == NULL;
#line 1952 "list-view.c"
	}
#line 250 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp14_) {
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = 0;
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (item2);
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (item1);
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view_row2);
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view_row1);
#line 251 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 1968 "list-view.c"
	}
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp17_ = item1;
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp18_ = item2;
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp19_ = boxes_collection_item_compare (_tmp17_, _tmp18_);
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp19_;
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item2);
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item1);
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row2);
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row1);
#line 253 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 1988 "list-view.c"
}


static gboolean boxes_list_view_model_filter (BoxesListView* self, GtkListBoxRow* box_row) {
	gboolean result = FALSE;
	BoxesListViewRow* view = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* _tmp3_;
	BoxesCollectionItem* item = NULL;
	BoxesListViewRow* _tmp4_;
	BoxesCollectionItem* _tmp5_;
	BoxesCollectionItem* _tmp6_;
	BoxesCollectionItem* _tmp7_;
	BoxesCollectionItem* _tmp8_;
	BoxesCollectionFilter* _tmp9_;
	BoxesCollectionFilter* _tmp10_;
	BoxesCollectionItem* _tmp11_;
	gboolean _tmp12_;
#line 256 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 256 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (box_row != NULL, FALSE);
#line 257 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 257 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 257 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 257 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view = _tmp2_;
#line 258 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = view;
#line 258 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp3_ == NULL) {
#line 259 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 259 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view);
#line 259 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2031 "list-view.c"
	}
#line 261 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = view;
#line 261 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = boxes_list_view_row_get_item (_tmp4_);
#line 261 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = _tmp5_;
#line 261 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _g_object_ref0 (_tmp6_);
#line 261 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item = _tmp7_;
#line 262 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = item;
#line 262 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp8_ == NULL) {
#line 263 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 263 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (item);
#line 263 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (view);
#line 263 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2055 "list-view.c"
	}
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = boxes_icollection_view_get_filter ((BoxesICollectionView*) self);
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = _tmp9_;
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp11_ = item;
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp12_ = boxes_collection_filter_filter (_tmp10_, G_TYPE_CHECK_INSTANCE_TYPE (_tmp11_, BOXES_TYPE_COLLECTION_ITEM) ? ((BoxesCollectionItem*) _tmp11_) : NULL);
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp12_;
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item);
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view);
#line 265 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2073 "list-view.c"
}


static void boxes_list_view_ui_state_changed (BoxesListView* self) {
	BoxesUIState _tmp0_;
	BoxesUIState _tmp1_;
#line 268 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 269 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 269 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_;
#line 269 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp1_ == BOXES_UI_STATE_COLLECTION) {
#line 2088 "list-view.c"
		GtkListBox* _tmp2_;
#line 270 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp2_ = self->priv->list_box;
#line 270 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		gtk_list_box_unselect_all (_tmp2_);
#line 2094 "list-view.c"
	}
}


static gboolean boxes_list_view_on_button_press_event (BoxesListView* self, GdkEventButton* event) {
	gboolean result = FALSE;
	GdkEventButton* _tmp0_;
	GdkEventType _tmp1_;
	GdkEventButton* _tmp2_;
	guint _tmp3_;
#line 274 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 274 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 275 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = event;
#line 275 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->type;
#line 275 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp1_ != GDK_BUTTON_RELEASE) {
#line 276 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 276 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2119 "list-view.c"
	}
#line 278 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = event;
#line 278 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _tmp2_->button;
#line 278 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (_tmp3_) {
#line 278 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case 1:
#line 2129 "list-view.c"
		{
			GdkEventButton* _tmp4_;
			gboolean _tmp5_;
#line 280 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			_tmp4_ = event;
#line 280 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			_tmp5_ = boxes_list_view_on_button_1_press_event (self, _tmp4_);
#line 280 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			result = _tmp5_;
#line 280 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			return result;
#line 2141 "list-view.c"
		}
#line 278 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case 3:
#line 2145 "list-view.c"
		{
			GdkEventButton* _tmp6_;
			gboolean _tmp7_;
#line 282 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			_tmp6_ = event;
#line 282 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			_tmp7_ = boxes_list_view_on_button_3_press_event (self, _tmp6_);
#line 282 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			result = _tmp7_;
#line 282 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			return result;
#line 2157 "list-view.c"
		}
		default:
		{
#line 284 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			result = FALSE;
#line 284 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
			return result;
#line 2165 "list-view.c"
		}
	}
}


static gboolean _boxes_list_view_on_button_press_event_gtk_widget_button_release_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) {
	gboolean result;
	result = boxes_list_view_on_button_press_event ((BoxesListView*) self, event);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2176 "list-view.c"
}


static gboolean boxes_list_view_on_button_1_press_event (BoxesListView* self, GdkEventButton* event) {
	gboolean result = FALSE;
	BoxesAppWindow* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	GdkEventButton* _tmp3_;
	GdkWindow* _tmp4_;
	GtkListBox* _tmp5_;
	GdkWindow* _tmp6_;
	GtkListBoxRow* box_row = NULL;
	GtkListBox* _tmp7_;
	GdkEventButton* _tmp8_;
	gdouble _tmp9_;
	GtkListBoxRow* _tmp10_;
	GtkListBoxRow* _tmp11_;
	GtkListBoxRow* _tmp12_;
	GtkListBoxRow* _tmp13_;
#line 288 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 288 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 289 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->window;
#line 289 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = boxes_app_window_get_selection_mode (_tmp0_);
#line 289 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _tmp1_;
#line 289 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (!_tmp2_) {
#line 290 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 290 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2213 "list-view.c"
	}
#line 293 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = event;
#line 293 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = _tmp3_->window;
#line 293 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = self->priv->list_box;
#line 293 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = gtk_widget_get_window ((GtkWidget*) _tmp5_);
#line 293 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp4_ != _tmp6_) {
#line 294 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 294 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2229 "list-view.c"
	}
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = self->priv->list_box;
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = event;
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = _tmp8_->y;
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = gtk_list_box_get_row_at_y (_tmp7_, (gint) _tmp9_);
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp11_ = _g_object_ref0 (_tmp10_);
#line 296 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp11_;
#line 297 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp12_ = box_row;
#line 297 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp12_ == NULL) {
#line 298 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 298 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (box_row);
#line 298 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2253 "list-view.c"
	}
#line 300 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp13_ = box_row;
#line 300 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_toggle_row_selected (self, _tmp13_);
#line 302 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = TRUE;
#line 302 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 302 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2265 "list-view.c"
}


static gboolean boxes_list_view_on_button_3_press_event (BoxesListView* self, GdkEventButton* event) {
	gboolean result = FALSE;
	GtkListBoxRow* box_row = NULL;
	GtkListBox* _tmp0_;
	GdkEventButton* _tmp1_;
	gdouble _tmp2_;
	GtkListBoxRow* _tmp3_;
	GtkListBoxRow* _tmp4_;
	GtkListBoxRow* _tmp5_;
	GtkListBoxRow* _tmp6_;
	gboolean _tmp7_;
#line 305 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 305 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->list_box;
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = event;
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _tmp1_->y;
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = gtk_list_box_get_row_at_y (_tmp0_, (gint) _tmp2_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp4_;
#line 307 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = box_row;
#line 307 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_ == NULL) {
#line 308 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 308 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (box_row);
#line 308 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2306 "list-view.c"
	}
#line 310 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = box_row;
#line 310 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = boxes_list_view_launch_context_popover_for_row (self, _tmp6_);
#line 310 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp7_;
#line 310 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 310 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2318 "list-view.c"
}


static gboolean boxes_list_view_on_key_press_event (BoxesListView* self, GdkEventKey* event) {
	gboolean result = FALSE;
	GdkEventKey* _tmp0_;
	guint _tmp1_;
	GtkListBoxRow* box_row = NULL;
	GtkListBox* _tmp2_;
	GtkListBoxRow* _tmp3_;
	GtkListBoxRow* _tmp4_;
	GtkListBoxRow* _tmp5_;
	GtkListBoxRow* _tmp6_;
	gboolean _tmp7_;
#line 314 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 314 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 315 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = event;
#line 315 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->keyval;
#line 315 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp1_ != ((guint) GDK_KEY_Menu)) {
#line 316 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 316 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2347 "list-view.c"
	}
#line 318 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = self->priv->list_box;
#line 318 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = gtk_list_box_get_selected_row (_tmp2_);
#line 318 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 318 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp4_;
#line 319 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = box_row;
#line 319 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_ == NULL) {
#line 320 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 320 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (box_row);
#line 320 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2367 "list-view.c"
	}
#line 322 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = box_row;
#line 322 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = boxes_list_view_launch_context_popover_for_row (self, _tmp6_);
#line 322 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp7_;
#line 322 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 322 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2379 "list-view.c"
}


static gboolean _boxes_list_view_on_key_press_event_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) {
	gboolean result;
	result = boxes_list_view_on_key_press_event ((BoxesListView*) self, event);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2388 "list-view.c"
}


static gboolean boxes_list_view_launch_context_popover_for_row (BoxesListView* self, GtkListBoxRow* box_row) {
	gboolean result = FALSE;
	BoxesCollectionItem* item = NULL;
	GtkListBoxRow* _tmp0_;
	BoxesCollectionItem* _tmp1_;
	BoxesCollectionItem* _tmp2_;
	BoxesActionsPopover* _tmp3_;
	BoxesCollectionItem* _tmp4_;
	BoxesActionsPopover* _tmp5_;
	GtkListBoxRow* _tmp6_;
	BoxesActionsPopover* _tmp7_;
#line 325 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 325 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (box_row != NULL, FALSE);
#line 326 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 326 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = boxes_list_view_get_item_for_row (self, _tmp0_);
#line 326 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	item = _tmp1_;
#line 327 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = item;
#line 327 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp2_ == NULL) {
#line 328 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		result = FALSE;
#line 328 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (item);
#line 328 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		return result;
#line 2423 "list-view.c"
	}
#line 330 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->context_popover;
#line 330 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = item;
#line 330 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_actions_popover_update_for_item (_tmp3_, _tmp4_);
#line 331 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = self->priv->context_popover;
#line 331 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = box_row;
#line 331 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_popover_set_relative_to ((GtkPopover*) _tmp5_, (GtkWidget*) _tmp6_);
#line 332 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = self->priv->context_popover;
#line 332 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_show ((GtkWidget*) _tmp7_);
#line 334 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = TRUE;
#line 334 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (item);
#line 334 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2447 "list-view.c"
}


static void __lambda188_ (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesListViewRow* view_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	BoxesAppWindow* _tmp6_;
	gboolean _tmp7_;
	gboolean _tmp8_;
	GtkListBoxRow* _tmp13_;
#line 338 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 339 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 339 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 339 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 339 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row = _tmp2_;
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = view_row;
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = boxes_list_view_row_get_selection_mode (_tmp3_);
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _tmp4_;
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = self->priv->window;
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = boxes_app_window_get_selection_mode (_tmp6_);
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = _tmp7_;
#line 341 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_ != _tmp8_) {
#line 2487 "list-view.c"
		BoxesListViewRow* _tmp9_;
		BoxesAppWindow* _tmp10_;
		gboolean _tmp11_;
		gboolean _tmp12_;
#line 342 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp9_ = view_row;
#line 342 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp10_ = self->priv->window;
#line 342 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp11_ = boxes_app_window_get_selection_mode (_tmp10_);
#line 342 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp12_ = _tmp11_;
#line 342 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_row_set_selection_mode (_tmp9_, _tmp12_);
#line 2502 "list-view.c"
	}
#line 344 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp13_ = box_row;
#line 344 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_unselect_row (self, _tmp13_);
#line 338 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row);
#line 2510 "list-view.c"
}


static void ___lambda188__gfunc (gconstpointer data, gpointer self) {
#line 338 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda188_ ((BoxesListView*) self, (GtkListBoxRow*) data);
#line 2517 "list-view.c"
}


static void boxes_list_view_update_selection_mode (BoxesListView* self) {
#line 337 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 338 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_foreach_row (self, ___lambda188__gfunc, self);
#line 2526 "list-view.c"
}


static void boxes_list_view_propagate_view_row_selection (BoxesListView* self, BoxesListViewRow* view_row) {
	GtkListBoxRow* box_row = NULL;
	BoxesListViewRow* _tmp0_;
	GtkContainer* _tmp1_;
	GtkContainer* _tmp2_;
	GtkListBoxRow* _tmp3_;
	BoxesListViewRow* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
#line 348 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 348 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (view_row != NULL);
#line 349 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = view_row;
#line 349 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_widget_get_parent ((GtkWidget*) _tmp0_);
#line 349 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _tmp1_;
#line 349 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, gtk_list_box_row_get_type ()) ? ((GtkListBoxRow*) _tmp2_) : NULL);
#line 349 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	box_row = _tmp3_;
#line 351 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = view_row;
#line 351 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = boxes_list_view_row_get_selected (_tmp4_);
#line 351 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = _tmp5_;
#line 351 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp6_) {
#line 2561 "list-view.c"
		GtkListBoxRow* _tmp7_;
#line 352 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp7_ = box_row;
#line 352 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_select_row (self, _tmp7_);
#line 2567 "list-view.c"
	} else {
		GtkListBoxRow* _tmp8_;
#line 354 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = box_row;
#line 354 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_unselect_row (self, _tmp8_);
#line 2574 "list-view.c"
	}
#line 348 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (box_row);
#line 2578 "list-view.c"
}


static void boxes_list_view_toggle_row_selected (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesListViewRow* view_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	BoxesListViewRow* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
#line 357 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 357 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 358 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 358 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 358 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 358 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row = _tmp2_;
#line 360 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = view_row;
#line 360 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = boxes_list_view_row_get_selected (_tmp3_);
#line 360 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _tmp4_;
#line 360 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp5_) {
#line 2610 "list-view.c"
		GtkListBoxRow* _tmp6_;
#line 361 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp6_ = box_row;
#line 361 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_unselect_row (self, _tmp6_);
#line 2616 "list-view.c"
	} else {
		GtkListBoxRow* _tmp7_;
#line 363 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp7_ = box_row;
#line 363 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_select_row (self, _tmp7_);
#line 2623 "list-view.c"
	}
#line 357 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row);
#line 2627 "list-view.c"
}


static void boxes_list_view_select_row (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesListViewRow* view_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	GtkListBox* _tmp3_;
	GtkListBoxRow* _tmp4_;
	BoxesListViewRow* _tmp5_;
	gboolean _tmp6_;
	gboolean _tmp7_;
	BoxesApp* _tmp9_;
#line 366 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 366 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 367 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 367 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 367 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 367 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row = _tmp2_;
#line 369 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->list_box;
#line 369 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = box_row;
#line 369 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_select_row (_tmp3_, _tmp4_);
#line 370 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = view_row;
#line 370 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = boxes_list_view_row_get_selected (_tmp5_);
#line 370 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _tmp6_;
#line 370 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (!_tmp7_) {
#line 2668 "list-view.c"
		BoxesListViewRow* _tmp8_;
#line 371 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = view_row;
#line 371 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_row_set_selected (_tmp8_, TRUE);
#line 2674 "list-view.c"
	}
#line 373 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = boxes_app_app;
#line 373 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_notify ((GObject*) _tmp9_, "selected-items");
#line 366 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row);
#line 2682 "list-view.c"
}


static void boxes_list_view_unselect_row (BoxesListView* self, GtkListBoxRow* box_row) {
	BoxesListViewRow* view_row = NULL;
	GtkListBoxRow* _tmp0_;
	GtkWidget* _tmp1_;
	BoxesListViewRow* _tmp2_;
	GtkListBox* _tmp3_;
	GtkListBoxRow* _tmp4_;
	BoxesListViewRow* _tmp5_;
	gboolean _tmp6_;
	gboolean _tmp7_;
	BoxesApp* _tmp9_;
#line 376 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 376 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (box_row != NULL);
#line 377 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = box_row;
#line 377 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = gtk_bin_get_child ((GtkBin*) _tmp0_);
#line 377 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIST_VIEW_ROW) ? ((BoxesListViewRow*) _tmp1_) : NULL);
#line 377 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	view_row = _tmp2_;
#line 379 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->list_box;
#line 379 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = box_row;
#line 379 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_unselect_row (_tmp3_, _tmp4_);
#line 380 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = view_row;
#line 380 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = boxes_list_view_row_get_selected (_tmp5_);
#line 380 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _tmp6_;
#line 380 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (_tmp7_) {
#line 2723 "list-view.c"
		BoxesListViewRow* _tmp8_;
#line 381 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp8_ = view_row;
#line 381 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_row_set_selected (_tmp8_, FALSE);
#line 2729 "list-view.c"
	}
#line 383 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = boxes_app_app;
#line 383 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_notify ((GObject*) _tmp9_, "selected-items");
#line 376 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (view_row);
#line 2737 "list-view.c"
}


BoxesListView* boxes_list_view_construct (GType object_type) {
	BoxesListView * self = NULL;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) g_object_new (object_type, NULL);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return self;
#line 2747 "list-view.c"
}


BoxesListView* boxes_list_view_new (void) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return boxes_list_view_construct (BOXES_TYPE_LIST_VIEW);
#line 2754 "list-view.c"
}


static BoxesUIState boxes_list_view_real_get_previous_ui_state (BoxesUI* base) {
	BoxesUIState result;
	BoxesListView* self;
	BoxesUIState _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_previous_ui_state;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2770 "list-view.c"
}


static void boxes_list_view_real_set_previous_ui_state (BoxesUI* base, BoxesUIState value) {
	BoxesListView* self;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (boxes_list_view_real_get_previous_ui_state (base) != value) {
#line 2780 "list-view.c"
		BoxesUIState _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = value;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->_previous_ui_state = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_list_view_properties[BOXES_LIST_VIEW_PREVIOUS_UI_STATE]);
#line 2788 "list-view.c"
	}
}


static BoxesUIState boxes_list_view_real_get_ui_state (BoxesUI* base) {
	BoxesUIState result;
	BoxesListView* self;
	BoxesUIState _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_ui_state;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2805 "list-view.c"
}


static void boxes_list_view_real_set_ui_state (BoxesUI* base, BoxesUIState value) {
	BoxesListView* self;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (boxes_list_view_real_get_ui_state (base) != value) {
#line 2815 "list-view.c"
		BoxesUIState _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = value;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->_ui_state = _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_list_view_properties[BOXES_LIST_VIEW_UI_STATE]);
#line 2823 "list-view.c"
	}
}


static BoxesCollectionFilter* boxes_list_view_real_get_filter (BoxesICollectionView* base) {
	BoxesCollectionFilter* result;
	BoxesListView* self;
	BoxesCollectionFilter* _tmp0_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_filter;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp0_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 2840 "list-view.c"
}


static void boxes_list_view_real_set_filter (BoxesICollectionView* base, BoxesCollectionFilter* value) {
	BoxesListView* self;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListView*) base;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (boxes_list_view_real_get_filter (base) != value) {
#line 2850 "list-view.c"
		BoxesCollectionFilter* _tmp0_;
		BoxesCollectionFilter* _tmp1_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = value;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self->priv->_filter);
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->_filter = _tmp1_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_list_view_properties[BOXES_LIST_VIEW_FILTER]);
#line 2863 "list-view.c"
	}
}


static void _boxes_list_view___lambda198_ (BoxesListView* self) {
	GtkListBox* _tmp0_;
#line 64 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->list_box;
#line 64 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_filter (_tmp0_);
#line 2874 "list-view.c"
}


static void __boxes_list_view___lambda198__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 63 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_boxes_list_view___lambda198_ ((BoxesListView*) self);
#line 2881 "list-view.c"
}


static void _boxes_list_view___lambda199_ (BoxesListView* self) {
	GtkListBox* _tmp0_;
#line 67 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->list_box;
#line 67 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_filter (_tmp0_);
#line 2891 "list-view.c"
}


static void __boxes_list_view___lambda199__boxes_collection_filter_filter_func_changed (BoxesCollectionFilter* _sender, gpointer self) {
#line 66 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_boxes_list_view___lambda199_ ((BoxesListView*) self);
#line 2898 "list-view.c"
}


static void _boxes_list_view_ui_state_changed_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 70 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_ui_state_changed ((BoxesListView*) self);
#line 2905 "list-view.c"
}


static GObject * boxes_list_view_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties) {
	GObject * obj;
	GObjectClass * parent_class;
	BoxesListView * self;
	GHashFunc _tmp0_;
	GEqualFunc _tmp1_;
	GHashTable* _tmp2_;
	GtkSizeGroup* _tmp3_;
	BoxesCollectionFilter* _tmp4_;
	BoxesCollectionFilter* _tmp5_;
	BoxesCollectionFilter* _tmp6_;
	BoxesCollectionFilter* _tmp7_;
	BoxesCollectionFilter* _tmp8_;
	BoxesCollectionFilter* _tmp9_;
#line 55 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	parent_class = G_OBJECT_CLASS (boxes_list_view_parent_class);
#line 55 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 55 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIST_VIEW, BoxesListView);
#line 56 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__g_list_free__g_object_unref0_0 (self->priv->hidden_items);
#line 56 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->hidden_items = NULL;
#line 57 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = g_direct_hash;
#line 57 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = g_direct_equal;
#line 57 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = g_hash_table_new_full (_tmp0_, _tmp1_, _g_object_unref0_, _g_object_unref0_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_hash_table_unref0 (self->priv->items_connections);
#line 57 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->items_connections = _tmp2_;
#line 59 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_setup_list_box (self);
#line 61 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);
#line 61 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->size_group);
#line 61 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->size_group = _tmp3_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = boxes_collection_filter_new ();
#line 62 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _tmp4_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_icollection_view_set_filter ((BoxesICollectionView*) self, _tmp5_);
#line 62 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (_tmp5_);
#line 63 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = boxes_icollection_view_get_filter ((BoxesICollectionView*) self);
#line 63 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = _tmp6_;
#line 63 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_object ((GObject*) _tmp7_, "notify::text", (GCallback) __boxes_list_view___lambda198__g_object_notify, self, 0);
#line 66 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = boxes_icollection_view_get_filter ((BoxesICollectionView*) self);
#line 66 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = _tmp8_;
#line 66 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_object (_tmp9_, "filter-func-changed", (GCallback) __boxes_list_view___lambda199__boxes_collection_filter_filter_func_changed, self, 0);
#line 70 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_connect_object ((GObject*) self, "notify::ui-state", (GCallback) _boxes_list_view_ui_state_changed_g_object_notify, self, 0);
#line 55 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return obj;
#line 2975 "list-view.c"
}


static Block63Data* block63_data_ref (Block63Data* _data63_) {
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_atomic_int_inc (&_data63_->_ref_count_);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return _data63_;
#line 2984 "list-view.c"
}


static void block63_data_unref (void * _userdata_) {
	Block63Data* _data63_;
	_data63_ = (Block63Data*) _userdata_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (g_atomic_int_dec_and_test (&_data63_->_ref_count_)) {
#line 2993 "list-view.c"
		BoxesListViewItemConnections* self;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self = _data63_->self;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (_data63_->view);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_slice_free (Block63Data, _data63_);
#line 3003 "list-view.c"
	}
}


static void __lambda183_ (Block63Data* _data63_) {
	BoxesListViewItemConnections* self;
	BoxesListView* _tmp0_;
	GtkListBox* _tmp1_;
	BoxesListView* _tmp2_;
	GtkListBox* _tmp3_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data63_->self;
#line 34 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data63_->view;
#line 34 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->priv->list_box;
#line 34 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_sort (_tmp1_);
#line 35 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data63_->view;
#line 35 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _tmp2_->priv->list_box;
#line 35 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_filter (_tmp3_);
#line 3028 "list-view.c"
}


static void ___lambda183__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda183_ (self);
#line 3035 "list-view.c"
}


static void __lambda184_ (Block63Data* _data63_) {
	BoxesListViewItemConnections* self;
	BoxesListView* _tmp0_;
	GtkListBox* _tmp1_;
	BoxesListView* _tmp2_;
	GtkListBox* _tmp3_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data63_->self;
#line 38 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data63_->view;
#line 38 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->priv->list_box;
#line 38 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_sort (_tmp1_);
#line 39 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data63_->view;
#line 39 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _tmp2_->priv->list_box;
#line 39 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_filter (_tmp3_);
#line 3059 "list-view.c"
}


static void ___lambda184__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 37 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda184_ (self);
#line 3066 "list-view.c"
}


static void __lambda185_ (Block63Data* _data63_) {
	BoxesListViewItemConnections* self;
	BoxesListView* _tmp0_;
	GtkListBox* _tmp1_;
	BoxesListView* _tmp2_;
	GtkListBox* _tmp3_;
#line 41 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = _data63_->self;
#line 42 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = _data63_->view;
#line 42 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->priv->list_box;
#line 42 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_sort (_tmp1_);
#line 43 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data63_->view;
#line 43 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = _tmp2_->priv->list_box;
#line 43 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_list_box_invalidate_filter (_tmp3_);
#line 3090 "list-view.c"
}


static void ___lambda185__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 41 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__lambda185_ (self);
#line 3097 "list-view.c"
}


static BoxesListViewItemConnections* boxes_list_view_item_connections_construct (GType object_type, BoxesListView* view, BoxesMachine* machine) {
	BoxesListViewItemConnections * self = NULL;
	Block63Data* _data63_;
	BoxesListView* _tmp0_;
	BoxesListView* _tmp1_;
	BoxesListView* _tmp2_;
	BoxesMachine* _tmp3_;
	BoxesMachine* _tmp4_;
	BoxesBoxConfig* _tmp5_;
	gulong _tmp6_;
	BoxesMachine* _tmp7_;
	gulong _tmp8_;
	BoxesMachine* _tmp9_;
	gulong _tmp10_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (view != NULL, NULL);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (machine != NULL, NULL);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data63_ = g_slice_new0 (Block63Data);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data63_->_ref_count_ = 1;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = view;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (_data63_->view);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data63_->view = _tmp1_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListViewItemConnections*) g_object_new (object_type, NULL);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data63_->self = g_object_ref (self);
#line 30 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = _data63_->view;
#line 30 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_item_connections_set_view (self, _tmp2_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = machine;
#line 31 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_item_connections_set_machine (self, _tmp3_);
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = machine;
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = _tmp4_->config;
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = g_signal_connect_data ((GObject*) _tmp5_, "notify::categories", (GCallback) ___lambda183__g_object_notify, block63_data_ref (_data63_), (GClosureNotify) block63_data_unref, 0);
#line 33 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->categories_id = _tmp6_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp7_ = machine;
#line 37 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp8_ = g_signal_connect_data ((GObject*) _tmp7_, "notify::name", (GCallback) ___lambda184__g_object_notify, block63_data_ref (_data63_), (GClosureNotify) block63_data_unref, 0);
#line 37 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->name_id = _tmp8_;
#line 41 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp9_ = machine;
#line 41 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp10_ = g_signal_connect_data ((GObject*) _tmp9_, "notify::info", (GCallback) ___lambda185__g_object_notify, block63_data_ref (_data63_), (GClosureNotify) block63_data_unref, 0);
#line 41 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv->info_id = _tmp10_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	block63_data_unref (_data63_);
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_data63_ = NULL;
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return self;
#line 3169 "list-view.c"
}


static BoxesListViewItemConnections* boxes_list_view_item_connections_new (BoxesListView* view, BoxesMachine* machine) {
#line 29 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return boxes_list_view_item_connections_construct (BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, view, machine);
#line 3176 "list-view.c"
}


static void boxes_list_view_item_connections_real_dispose (GObject* base) {
	BoxesListViewItemConnections * self;
	BoxesMachine* _tmp0_;
	BoxesBoxConfig* _tmp1_;
	gulong _tmp2_;
	BoxesMachine* _tmp3_;
	gulong _tmp4_;
	BoxesMachine* _tmp5_;
	gulong _tmp6_;
#line 47 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = (BoxesListViewItemConnections*) base;
#line 48 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_machine;
#line 48 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp1_ = _tmp0_->config;
#line 48 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp2_ = self->priv->categories_id;
#line 48 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_handler_disconnect ((GObject*) _tmp1_, _tmp2_);
#line 49 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp3_ = self->priv->_machine;
#line 49 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp4_ = self->priv->name_id;
#line 49 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_handler_disconnect ((GObject*) _tmp3_, _tmp4_);
#line 50 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp5_ = self->priv->_machine;
#line 50 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp6_ = self->priv->info_id;
#line 50 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_signal_handler_disconnect ((GObject*) _tmp5_, _tmp6_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (boxes_list_view_item_connections_parent_class)->dispose (G_TYPE_CHECK_INSTANCE_CAST (self, G_TYPE_OBJECT, GObject));
#line 3213 "list-view.c"
}


static BoxesListView* boxes_list_view_item_connections_get_view (BoxesListViewItemConnections* self) {
	BoxesListView* result;
	BoxesListView* _tmp0_;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_view;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp0_;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 3228 "list-view.c"
}


static void boxes_list_view_item_connections_set_view (BoxesListViewItemConnections* self, BoxesListView* value) {
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (boxes_list_view_item_connections_get_view (self) != value) {
#line 3237 "list-view.c"
		BoxesListView* _tmp0_;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = value;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->_view = _tmp0_;
#line 26 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_list_view_item_connections_properties[BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW]);
#line 3245 "list-view.c"
	}
}


static BoxesMachine* boxes_list_view_item_connections_get_machine (BoxesListViewItemConnections* self) {
	BoxesMachine* result;
	BoxesMachine* _tmp0_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_tmp0_ = self->priv->_machine;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	result = _tmp0_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	return result;
#line 3261 "list-view.c"
}


static void boxes_list_view_item_connections_set_machine (BoxesListViewItemConnections* self, BoxesMachine* value) {
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_return_if_fail (self != NULL);
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	if (boxes_list_view_item_connections_get_machine (self) != value) {
#line 3270 "list-view.c"
		BoxesMachine* _tmp0_;
		BoxesMachine* _tmp1_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp0_ = value;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		_g_object_unref0 (self->priv->_machine);
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		self->priv->_machine = _tmp1_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_list_view_item_connections_properties[BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE]);
#line 3283 "list-view.c"
	}
}


static void boxes_list_view_item_connections_class_init (BoxesListViewItemConnectionsClass * klass) {
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_item_connections_parent_class = g_type_class_peek_parent (klass);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_type_class_add_private (klass, sizeof (BoxesListViewItemConnectionsPrivate));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	((GObjectClass *) klass)->dispose = (void (*) (GObject *)) boxes_list_view_item_connections_real_dispose;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_list_view_item_connections_get_property;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_list_view_item_connections_set_property;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_list_view_item_connections_finalize;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW, boxes_list_view_item_connections_properties[BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW] = g_param_spec_object ("view", "view", "view", BOXES_TYPE_LIST_VIEW, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE, boxes_list_view_item_connections_properties[BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE] = g_param_spec_object ("machine", "machine", "machine", BOXES_TYPE_MACHINE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 3305 "list-view.c"
}


static void boxes_list_view_item_connections_instance_init (BoxesListViewItemConnections * self) {
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv = BOXES_LIST_VIEW_ITEM_CONNECTIONS_GET_PRIVATE (self);
#line 3312 "list-view.c"
}


static void boxes_list_view_item_connections_finalize (GObject * obj) {
	BoxesListViewItemConnections * self;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnections);
#line 27 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->_machine);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (boxes_list_view_item_connections_parent_class)->finalize (obj);
#line 3324 "list-view.c"
}


static GType boxes_list_view_item_connections_get_type (void) {
	static volatile gsize boxes_list_view_item_connections_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_list_view_item_connections_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesListViewItemConnectionsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_list_view_item_connections_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesListViewItemConnections), 0, (GInstanceInitFunc) boxes_list_view_item_connections_instance_init, NULL };
		GType boxes_list_view_item_connections_type_id;
		boxes_list_view_item_connections_type_id = g_type_register_static (G_TYPE_OBJECT, "BoxesListViewItemConnections", &g_define_type_info, 0);
		g_once_init_leave (&boxes_list_view_item_connections_type_id__volatile, boxes_list_view_item_connections_type_id);
	}
	return boxes_list_view_item_connections_type_id__volatile;
}


static void _vala_boxes_list_view_item_connections_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesListViewItemConnections * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnections);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (property_id) {
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_value_set_object (value, boxes_list_view_item_connections_get_view (self));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_value_set_object (value, boxes_list_view_item_connections_get_machine (self));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3357 "list-view.c"
		default:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3363 "list-view.c"
	}
}


static void _vala_boxes_list_view_item_connections_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesListViewItemConnections * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_LIST_VIEW_TYPE_ITEM_CONNECTIONS, BoxesListViewItemConnections);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (property_id) {
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_ITEM_CONNECTIONS_VIEW:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_item_connections_set_view (self, g_value_get_object (value));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_ITEM_CONNECTIONS_MACHINE:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_list_view_item_connections_set_machine (self, g_value_get_object (value));
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3385 "list-view.c"
		default:
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 21 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3391 "list-view.c"
	}
}


static void boxes_list_view_class_init (BoxesListViewClass * klass) {
	gint BoxesListView_private_offset;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_parent_class = g_type_class_peek_parent (klass);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_type_class_add_private (klass, sizeof (BoxesListViewPrivate));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_list_view_get_property;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_list_view_set_property;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->constructor = boxes_list_view_constructor;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_list_view_finalize;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIST_VIEW_PREVIOUS_UI_STATE, boxes_list_view_properties[BOXES_LIST_VIEW_PREVIOUS_UI_STATE] = g_param_spec_enum ("previous-ui-state", "previous-ui-state", "previous-ui-state", BOXES_TYPE_UI_STATE, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIST_VIEW_UI_STATE, boxes_list_view_properties[BOXES_LIST_VIEW_UI_STATE] = g_param_spec_enum ("ui-state", "ui-state", "ui-state", BOXES_TYPE_UI_STATE, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIST_VIEW_FILTER, boxes_list_view_properties[BOXES_LIST_VIEW_FILTER] = g_param_spec_object ("filter", "filter", "filter", BOXES_TYPE_COLLECTION_FILTER, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	BoxesListView_private_offset = g_type_class_get_instance_private_offset (klass);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass), "/org/gnome/Boxes/ui/list-view.ui");
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "list_box", FALSE, BoxesListView_private_offset + G_STRUCT_OFFSET (BoxesListViewPrivate, list_box));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_button_press_event", G_CALLBACK(_boxes_list_view_on_button_press_event_gtk_widget_button_release_event));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_key_press_event", G_CALLBACK(_boxes_list_view_on_key_press_event_gtk_widget_key_press_event));
#line 3426 "list-view.c"
}


static void boxes_list_view_boxes_icollection_view_interface_init (BoxesICollectionViewIface * iface) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_boxes_icollection_view_parent_iface = g_type_interface_peek_parent (iface);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->add_item = (void (*) (BoxesICollectionView *, BoxesCollectionItem*)) boxes_list_view_real_add_item;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->remove_item = (void (*) (BoxesICollectionView *, BoxesCollectionItem*)) boxes_list_view_real_remove_item;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->select_by_criteria = (void (*) (BoxesICollectionView *, BoxesSelectionCriteria)) boxes_list_view_real_select_by_criteria;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->get_selected_items = (GList* (*) (BoxesICollectionView *)) boxes_list_view_real_get_selected_items;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->activate_first_item = (void (*) (BoxesICollectionView *)) boxes_list_view_real_activate_first_item;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->get_filter = boxes_list_view_real_get_filter;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->set_filter = boxes_list_view_real_set_filter;
#line 3447 "list-view.c"
}


static void boxes_list_view_boxes_ui_interface_init (BoxesUIIface * iface) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	boxes_list_view_boxes_ui_parent_iface = g_type_interface_peek_parent (iface);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->get_previous_ui_state = boxes_list_view_real_get_previous_ui_state;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->set_previous_ui_state = boxes_list_view_real_set_previous_ui_state;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->get_ui_state = boxes_list_view_real_get_ui_state;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	iface->set_ui_state = boxes_list_view_real_set_ui_state;
#line 3462 "list-view.c"
}


static void boxes_list_view_instance_init (BoxesListView * self) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self->priv = BOXES_LIST_VIEW_GET_PRIVATE (self);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	gtk_widget_init_template (GTK_WIDGET (self));
#line 3471 "list-view.c"
}


static void boxes_list_view_finalize (GObject * obj) {
	BoxesListView * self;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIST_VIEW, BoxesListView);
#line 8 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->_filter);
#line 11 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->list_box);
#line 13 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->size_group);
#line 15 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	__g_list_free__g_object_unref0_0 (self->priv->hidden_items);
#line 16 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_hash_table_unref0 (self->priv->items_connections);
#line 18 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->window);
#line 19 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	_g_object_unref0 (self->priv->context_popover);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	G_OBJECT_CLASS (boxes_list_view_parent_class)->finalize (obj);
#line 3495 "list-view.c"
}


GType boxes_list_view_get_type (void) {
	static volatile gsize boxes_list_view_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_list_view_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesListViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_list_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesListView), 0, (GInstanceInitFunc) boxes_list_view_instance_init, NULL };
		static const GInterfaceInfo boxes_icollection_view_info = { (GInterfaceInitFunc) boxes_list_view_boxes_icollection_view_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		static const GInterfaceInfo boxes_ui_info = { (GInterfaceInitFunc) boxes_list_view_boxes_ui_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType boxes_list_view_type_id;
		boxes_list_view_type_id = g_type_register_static (gtk_scrolled_window_get_type (), "BoxesListView", &g_define_type_info, 0);
		g_type_add_interface_static (boxes_list_view_type_id, BOXES_TYPE_ICOLLECTION_VIEW, &boxes_icollection_view_info);
		g_type_add_interface_static (boxes_list_view_type_id, BOXES_TYPE_UI, &boxes_ui_info);
		g_once_init_leave (&boxes_list_view_type_id__volatile, boxes_list_view_type_id);
	}
	return boxes_list_view_type_id__volatile;
}


static void _vala_boxes_list_view_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesListView * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_LIST_VIEW, BoxesListView);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (property_id) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_PREVIOUS_UI_STATE:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_value_set_enum (value, boxes_ui_get_previous_ui_state ((BoxesUI*) self));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_UI_STATE:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_value_set_enum (value, boxes_ui_get_ui_state ((BoxesUI*) self));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_FILTER:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		g_value_set_object (value, boxes_icollection_view_get_filter ((BoxesICollectionView*) self));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3538 "list-view.c"
		default:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3544 "list-view.c"
	}
}


static void _vala_boxes_list_view_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesListView * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_LIST_VIEW, BoxesListView);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
	switch (property_id) {
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_PREVIOUS_UI_STATE:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_ui_set_previous_ui_state ((BoxesUI*) self, g_value_get_enum (value));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_UI_STATE:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_ui_set_ui_state ((BoxesUI*) self, g_value_get_enum (value));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		case BOXES_LIST_VIEW_FILTER:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		boxes_icollection_view_set_filter ((BoxesICollectionView*) self, g_value_get_object (value));
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3572 "list-view.c"
		default:
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 4 "/home/fborges/checkout/gnome-boxes/src/list-view.vala"
		break;
#line 3578 "list-view.c"
	}
}



