/* app-window.c generated by valac 0.26.0.50-d9a75, the Vala compiler
 * generated from app-window.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 <libgd/gd.h>
#include <gio/gio.h>
#include <glib/gi18n-lib.h>
#include <stdlib.h>
#include <string.h>
#include <gdk/gdk.h>


#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_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;
typedef struct _BoxesAppWindowPrivate BoxesAppWindowPrivate;

#define BOXES_TYPE_WIZARD_WINDOW (boxes_wizard_window_get_type ())
#define BOXES_WIZARD_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindow))
#define BOXES_WIZARD_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindowClass))
#define BOXES_IS_WIZARD_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_WIZARD_WINDOW))
#define BOXES_IS_WIZARD_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_WIZARD_WINDOW))
#define BOXES_WIZARD_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindowClass))

typedef struct _BoxesWizardWindow BoxesWizardWindow;
typedef struct _BoxesWizardWindowClass BoxesWizardWindowClass;

#define BOXES_TYPE_PROPERTIES_WINDOW (boxes_properties_window_get_type ())
#define BOXES_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindow))
#define BOXES_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindowClass))
#define BOXES_IS_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTIES_WINDOW))
#define BOXES_IS_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTIES_WINDOW))
#define BOXES_PROPERTIES_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindowClass))

typedef struct _BoxesPropertiesWindow BoxesPropertiesWindow;
typedef struct _BoxesPropertiesWindowClass BoxesPropertiesWindowClass;

#define BOXES_TYPE_SEARCHBAR (boxes_searchbar_get_type ())
#define BOXES_SEARCHBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SEARCHBAR, BoxesSearchbar))
#define BOXES_SEARCHBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SEARCHBAR, BoxesSearchbarClass))
#define BOXES_IS_SEARCHBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SEARCHBAR))
#define BOXES_IS_SEARCHBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SEARCHBAR))
#define BOXES_SEARCHBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SEARCHBAR, BoxesSearchbarClass))

typedef struct _BoxesSearchbar BoxesSearchbar;
typedef struct _BoxesSearchbarClass BoxesSearchbarClass;

#define BOXES_TYPE_TOPBAR (boxes_topbar_get_type ())
#define BOXES_TOPBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_TOPBAR, BoxesTopbar))
#define BOXES_TOPBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_TOPBAR, BoxesTopbarClass))
#define BOXES_IS_TOPBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_TOPBAR))
#define BOXES_IS_TOPBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_TOPBAR))
#define BOXES_TOPBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_TOPBAR, BoxesTopbarClass))

typedef struct _BoxesTopbar BoxesTopbar;
typedef struct _BoxesTopbarClass BoxesTopbarClass;

#define BOXES_TYPE_NOTIFICATIONBAR (boxes_notificationbar_get_type ())
#define BOXES_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbar))
#define BOXES_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))
#define BOXES_IS_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_IS_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_NOTIFICATIONBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))

typedef struct _BoxesNotificationbar BoxesNotificationbar;
typedef struct _BoxesNotificationbarClass BoxesNotificationbarClass;

#define BOXES_TYPE_SELECTIONBAR (boxes_selectionbar_get_type ())
#define BOXES_SELECTIONBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbar))
#define BOXES_SELECTIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbarClass))
#define BOXES_IS_SELECTIONBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SELECTIONBAR))
#define BOXES_IS_SELECTIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SELECTIONBAR))
#define BOXES_SELECTIONBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbarClass))

typedef struct _BoxesSelectionbar BoxesSelectionbar;
typedef struct _BoxesSelectionbarClass BoxesSelectionbarClass;

#define BOXES_TYPE_DISPLAY_PAGE (boxes_display_page_get_type ())
#define BOXES_DISPLAY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPage))
#define BOXES_DISPLAY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPageClass))
#define BOXES_IS_DISPLAY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_DISPLAY_PAGE))
#define BOXES_IS_DISPLAY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_DISPLAY_PAGE))
#define BOXES_DISPLAY_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPageClass))

typedef struct _BoxesDisplayPage BoxesDisplayPage;
typedef struct _BoxesDisplayPageClass BoxesDisplayPageClass;

#define BOXES_TYPE_EMPTY_BOXES (boxes_empty_boxes_get_type ())
#define BOXES_EMPTY_BOXES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxes))
#define BOXES_EMPTY_BOXES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxesClass))
#define BOXES_IS_EMPTY_BOXES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_EMPTY_BOXES))
#define BOXES_IS_EMPTY_BOXES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_EMPTY_BOXES))
#define BOXES_EMPTY_BOXES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxesClass))

typedef struct _BoxesEmptyBoxes BoxesEmptyBoxes;
typedef struct _BoxesEmptyBoxesClass BoxesEmptyBoxesClass;

#define BOXES_TYPE_COLLECTION_VIEW (boxes_collection_view_get_type ())
#define BOXES_COLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionView))
#define BOXES_COLLECTION_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionViewClass))
#define BOXES_IS_COLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_VIEW))
#define BOXES_IS_COLLECTION_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_VIEW))
#define BOXES_COLLECTION_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionViewClass))

typedef struct _BoxesCollectionView BoxesCollectionView;
typedef struct _BoxesCollectionViewClass BoxesCollectionViewClass;

#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 _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))
typedef struct _BoxesNotificationbarPrivate BoxesNotificationbarPrivate;

#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;
typedef struct _BoxesAppPrivate BoxesAppPrivate;

#define BOXES_TYPE_COLLECTION (boxes_collection_get_type ())
#define BOXES_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION, BoxesCollection))
#define BOXES_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION, BoxesCollectionClass))
#define BOXES_IS_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION))
#define BOXES_IS_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION))
#define BOXES_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION, BoxesCollectionClass))

typedef struct _BoxesCollection BoxesCollection;
typedef struct _BoxesCollectionClass BoxesCollectionClass;

#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;
typedef struct _BoxesCollectionPrivate BoxesCollectionPrivate;

#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))
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))

#define BOXES_MACHINE_TYPE_MACHINE_STATE (boxes_machine_machine_state_get_type ())

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 _BoxesAppWindow {
	GtkApplicationWindow parent_instance;
	BoxesAppWindowPrivate * priv;
	BoxesWizardWindow* wizard_window;
	BoxesPropertiesWindow* props_window;
	BoxesSearchbar* searchbar;
	BoxesTopbar* topbar;
	BoxesNotificationbar* notificationbar;
	BoxesSelectionbar* selectionbar;
	BoxesDisplayPage* display_page;
	BoxesEmptyBoxes* empty_boxes;
	GtkStack* below_bin;
	BoxesCollectionView* view;
	GSettings* settings;
};

struct _BoxesAppWindowClass {
	GtkApplicationWindowClass parent_class;
};

struct _BoxesAppWindowPrivate {
	BoxesUIState _previous_ui_state;
	BoxesUIState _ui_state;
	BoxesCollectionItem* _current_item;
	GBinding* status_bind;
	gulong got_error_id;
	gulong machine_state_notify_id;
	gulong machine_deleted_notify_id;
	gboolean _selection_mode;
	guint configure_id;
};

struct _BoxesNotificationbar {
	GtkGrid parent_instance;
	BoxesNotificationbarPrivate * priv;
	BoxesSearchbar* searchbar;
};

struct _BoxesNotificationbarClass {
	GtkGridClass parent_class;
};

struct _BoxesApp {
	GtkApplication parent_instance;
	BoxesAppPrivate * priv;
	BoxesCollection* collection;
	BoxesCollectionFilter* filter;
};

struct _BoxesAppClass {
	GtkApplicationClass parent_class;
};

struct _BoxesCollection {
	GObject parent_instance;
	BoxesCollectionPrivate * priv;
	GPtrArray* items;
};

struct _BoxesCollectionClass {
	GObjectClass parent_class;
};

typedef enum  {
	BOXES_MACHINE_MACHINE_STATE_UNKNOWN,
	BOXES_MACHINE_MACHINE_STATE_STOPPED,
	BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED,
	BOXES_MACHINE_MACHINE_STATE_RUNNING,
	BOXES_MACHINE_MACHINE_STATE_PAUSED,
	BOXES_MACHINE_MACHINE_STATE_SAVED,
	BOXES_MACHINE_MACHINE_STATE_SLEEPING
} BoxesMachineMachineState;


static gpointer boxes_app_window_parent_class = NULL;
extern BoxesApp* boxes_app_app;
static BoxesUIIface* boxes_app_window_boxes_ui_parent_iface = NULL;

GType boxes_ui_state_get_type (void) G_GNUC_CONST;
GType boxes_ui_get_type (void) G_GNUC_CONST;
GType boxes_app_window_get_type (void) G_GNUC_CONST;
GType boxes_wizard_window_get_type (void) G_GNUC_CONST;
GType boxes_properties_window_get_type (void) G_GNUC_CONST;
GType boxes_searchbar_get_type (void) G_GNUC_CONST;
GType boxes_topbar_get_type (void) G_GNUC_CONST;
GType boxes_notificationbar_get_type (void) G_GNUC_CONST;
GType boxes_selectionbar_get_type (void) G_GNUC_CONST;
GType boxes_display_page_get_type (void) G_GNUC_CONST;
GType boxes_empty_boxes_get_type (void) G_GNUC_CONST;
GType boxes_collection_view_get_type (void) G_GNUC_CONST;
GType boxes_collection_item_get_type (void) G_GNUC_CONST;
#define BOXES_APP_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_APP_WINDOW, BoxesAppWindowPrivate))
enum  {
	BOXES_APP_WINDOW_DUMMY_PROPERTY,
	BOXES_APP_WINDOW_PREVIOUS_UI_STATE,
	BOXES_APP_WINDOW_UI_STATE,
	BOXES_APP_WINDOW_CURRENT_ITEM,
	BOXES_APP_WINDOW_FULLSCREENED,
	BOXES_APP_WINDOW_SELECTION_MODE
};
#define BOXES_APP_WINDOW_TRANSITION_DURATION ((guint) 400)
#define BOXES_APP_WINDOW_configure_id_timeout ((guint) 100)
BoxesAppWindow* boxes_app_window_new (GtkApplication* app);
BoxesAppWindow* boxes_app_window_construct (GType object_type, GtkApplication* app);
static void boxes_app_window_ui_state_changed (BoxesAppWindow* self);
static void _boxes_app_window_ui_state_changed_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
GtkCssProvider* boxes_load_css (const gchar* css);
static gint _variant_get1 (GVariant* value);
static gint _variant_get2 (GVariant* value);
static gint _variant_get3 (GVariant* value);
static gint _variant_get4 (GVariant* value);
void boxes_app_window_setup_ui (BoxesAppWindow* self);
void boxes_topbar_setup_ui (BoxesTopbar* self, BoxesAppWindow* window);
void boxes_display_page_setup_ui (BoxesDisplayPage* self, BoxesAppWindow* window);
void boxes_collection_view_setup_ui (BoxesCollectionView* self, BoxesAppWindow* window);
void boxes_selectionbar_setup_ui (BoxesSelectionbar* self, BoxesAppWindow* window);
void boxes_searchbar_setup_ui (BoxesSearchbar* self, BoxesAppWindow* window);
void boxes_empty_boxes_setup_ui (BoxesEmptyBoxes* self, BoxesAppWindow* window);
BoxesWizardWindow* boxes_wizard_window_new (BoxesAppWindow* app_window);
BoxesWizardWindow* boxes_wizard_window_construct (GType object_type, BoxesAppWindow* app_window);
BoxesPropertiesWindow* boxes_properties_window_new (BoxesAppWindow* app_window);
BoxesPropertiesWindow* boxes_properties_window_construct (GType object_type, BoxesAppWindow* app_window);
static void boxes_app_window_save_window_geometry (BoxesAppWindow* self);
static gboolean boxes_app_window_get_maximized (BoxesAppWindow* self);
static GVariant* _variant_new5 (gint* value, gint value_length1);
static GVariant* _variant_new6 (gint* value, gint value_length1);
void boxes_ui_set_state (BoxesUI* self, BoxesUIState new_state);
BoxesUIState boxes_ui_get_ui_state (BoxesUI* self);
GType boxes_app_get_type (void) G_GNUC_CONST;
GType boxes_collection_get_type (void) G_GNUC_CONST;
GType boxes_collection_filter_get_type (void) G_GNUC_CONST;
void boxes_app_window_set_fullscreened (BoxesAppWindow* self, gboolean value);
void boxes_topbar_set_status (BoxesTopbar* self, const gchar* value);
BoxesCollectionItem* boxes_app_window_get_current_item (BoxesAppWindow* self);
GType boxes_machine_get_type (void) G_GNUC_CONST;
GCancellable* boxes_machine_get_connecting_cancellable (BoxesMachine* self);
void boxes_machine_schedule_autosave (BoxesMachine* self);
const gchar* boxes_ui_state_to_string (BoxesUIState self);
void boxes_app_window_show_properties (BoxesAppWindow* self);
GList* boxes_collection_view_get_selected_items (BoxesCollectionView* self);
void boxes_app_window_set_selection_mode (BoxesAppWindow* self, gboolean value);
void boxes_app_window_set_current_item (BoxesAppWindow* self, BoxesCollectionItem* value);
static void _g_object_unref0_ (gpointer var);
static void _g_list_free__g_object_unref0_ (GList* self);
void boxes_app_window_connect_to (BoxesAppWindow* self, BoxesMachine* machine);
void boxes_machine_set_window (BoxesMachine* self, BoxesAppWindow* value);
void boxes_machine_unschedule_autosave (BoxesMachine* self);
static void __lambda29_ (BoxesAppWindow* self, const gchar* message);
GdNotification* boxes_notificationbar_display_error (BoxesNotificationbar* self, const gchar* message, gint timeout);
#define BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT 6
static void ___lambda29__boxes_machine_got_error (BoxesMachine* _sender, const gchar* message, gpointer self);
void boxes_app_window_select_item (BoxesAppWindow* self, BoxesCollectionItem* item);
gboolean boxes_app_window_get_selection_mode (BoxesAppWindow* self);
BoxesAppWindow* boxes_machine_get_window (BoxesMachine* self);
BoxesAppWindow* boxes_app_get_main_window (BoxesApp* self);
gboolean boxes_app_window_on_key_pressed (BoxesAppWindow* self, GtkWidget* widget, GdkEventKey* event);
gboolean boxes_app_window_get_fullscreened (BoxesAppWindow* self);
gboolean boxes_app_quit_app (BoxesApp* self);
void boxes_topbar_click_new_button (BoxesTopbar* self);
void boxes_topbar_click_search_button (BoxesTopbar* self);
void boxes_topbar_click_back_button (BoxesTopbar* self);
void boxes_topbar_click_cancel_button (BoxesTopbar* self);
static gboolean _boxes_app_window_on_key_pressed_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self);
static gboolean boxes_app_window_on_configure_event (BoxesAppWindow* self);
static gboolean __lambda196_ (BoxesAppWindow* self);
static gboolean ___lambda196__gsource_func (gpointer self);
static gboolean _boxes_app_window_on_configure_event_gtk_widget_configure_event (GtkWidget* _sender, GdkEventConfigure* event, gpointer self);
static gboolean boxes_app_window_on_window_state_event (BoxesAppWindow* self, GdkEventWindowState* event);
static gboolean _boxes_app_window_on_window_state_event_gtk_widget_window_state_event (GtkWidget* _sender, GdkEventWindowState* event, gpointer self);
static gboolean boxes_app_window_on_delete_event (BoxesAppWindow* self);
gboolean boxes_app_remove_window (BoxesApp* self, BoxesAppWindow* window);
static gboolean _boxes_app_window_on_delete_event_gtk_widget_delete_event (GtkWidget* _sender, GdkEventAny* event, gpointer self);
static void boxes_app_window_on_machine_state_notify (BoxesAppWindow* self);
GType boxes_machine_machine_state_get_type (void) G_GNUC_CONST;
BoxesMachineMachineState boxes_machine_get_state (BoxesMachine* self);
static void boxes_app_window_on_machine_deleted_notify (BoxesAppWindow* self);
gboolean boxes_machine_get_deleted (BoxesMachine* self);
static void _boxes_app_window_on_machine_state_notify_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void _boxes_app_window_on_machine_deleted_notify_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void boxes_app_window_finalize (GObject* obj);
BoxesUIState boxes_ui_get_previous_ui_state (BoxesUI* self);
static void _vala_boxes_app_window_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_app_window_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);


static void _boxes_app_window_ui_state_changed_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 93 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_ui_state_changed ((BoxesAppWindow*) self);
#line 397 "app-window.c"
}


static gint _variant_get1 (GVariant* value) {
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_get_int32 (value);
#line 404 "app-window.c"
}


static gint _variant_get2 (GVariant* value) {
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_get_int32 (value);
#line 411 "app-window.c"
}


static gint _variant_get3 (GVariant* value) {
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_get_int32 (value);
#line 418 "app-window.c"
}


static gint _variant_get4 (GVariant* value) {
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_get_int32 (value);
#line 425 "app-window.c"
}


BoxesAppWindow* boxes_app_window_construct (GType object_type, GtkApplication* app) {
	BoxesAppWindow * self = NULL;
	GtkApplication* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	GSettings* _tmp2_ = NULL;
	GtkSettings* _tmp3_ = NULL;
	GtkCssProvider* provider = NULL;
	GtkCssProvider* _tmp4_ = NULL;
	GdkScreen* _tmp5_ = NULL;
	GtkCssProvider* _tmp6_ = NULL;
	GVariant* size = NULL;
	GSettings* _tmp7_ = NULL;
	GVariant* _tmp8_ = NULL;
	GVariant* _tmp9_ = NULL;
	gsize _tmp10_ = 0UL;
	GSettings* _tmp23_ = NULL;
	gboolean _tmp24_ = FALSE;
	GVariant* position = NULL;
	GSettings* _tmp25_ = NULL;
	GVariant* _tmp26_ = NULL;
	GVariant* _tmp27_ = NULL;
	gsize _tmp28_ = 0UL;
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (app != NULL, NULL);
#line 89 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = app;
#line 89 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _ ("Boxes");
#line 89 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = (BoxesAppWindow*) g_object_new (object_type, "application", _tmp0_, "title", _tmp1_, NULL);
#line 91 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = g_settings_new ("org.gnome.boxes");
#line 91 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->settings);
#line 91 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->settings = _tmp2_;
#line 93 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_signal_connect_object ((GObject*) self, "notify::ui-state", (GCallback) _boxes_app_window_ui_state_changed_g_object_notify, self, 0);
#line 95 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_window_set_default_icon_name ("gnome-boxes");
#line 96 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = gtk_settings_get_default ();
#line 96 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_set (_tmp3_, "gtk-application-prefer-dark-theme", TRUE, NULL);
#line 98 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = boxes_load_css ("gtk-style.css");
#line 98 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	provider = _tmp4_;
#line 99 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = gdk_screen_get_default ();
#line 99 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = provider;
#line 99 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_style_context_add_provider_for_screen (_tmp5_, (GtkStyleProvider*) _tmp6_, (guint) 600);
#line 104 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_ = self->settings;
#line 104 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = g_settings_get_value (_tmp7_, "window-size");
#line 104 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	size = _tmp8_;
#line 105 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp9_ = size;
#line 105 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_ = g_variant_n_children (_tmp9_);
#line 105 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp10_ == ((gsize) 2)) {
#line 495 "app-window.c"
		gint width = 0;
		GVariant* _tmp11_ = NULL;
		GVariant* _tmp12_ = NULL;
		GVariant* _tmp13_ = NULL;
		gint _tmp14_ = 0;
		gint _tmp15_ = 0;
		gint height = 0;
		GVariant* _tmp16_ = NULL;
		GVariant* _tmp17_ = NULL;
		GVariant* _tmp18_ = NULL;
		gint _tmp19_ = 0;
		gint _tmp20_ = 0;
		gint _tmp21_ = 0;
		gint _tmp22_ = 0;
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp11_ = size;
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp12_ = g_variant_get_child_value (_tmp11_, (gsize) 0);
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp13_ = _tmp12_;
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp14_ = _variant_get1 (_tmp13_);
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp15_ = _tmp14_;
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_variant_unref0 (_tmp13_);
#line 106 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		width = _tmp15_;
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp16_ = size;
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp17_ = g_variant_get_child_value (_tmp16_, (gsize) 1);
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp18_ = _tmp17_;
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp19_ = _variant_get2 (_tmp18_);
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp20_ = _tmp19_;
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_variant_unref0 (_tmp18_);
#line 107 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		height = _tmp20_;
#line 109 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp21_ = width;
#line 109 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp22_ = height;
#line 109 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		gtk_window_set_default_size ((GtkWindow*) self, _tmp21_, _tmp22_);
#line 544 "app-window.c"
	}
#line 112 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp23_ = self->settings;
#line 112 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp24_ = g_settings_get_boolean (_tmp23_, "window-maximized");
#line 112 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp24_) {
#line 113 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		gtk_window_maximize ((GtkWindow*) self);
#line 554 "app-window.c"
	}
#line 115 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp25_ = self->settings;
#line 115 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp26_ = g_settings_get_value (_tmp25_, "window-position");
#line 115 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	position = _tmp26_;
#line 116 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp27_ = position;
#line 116 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp28_ = g_variant_n_children (_tmp27_);
#line 116 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp28_ == ((gsize) 2)) {
#line 568 "app-window.c"
		gint x = 0;
		GVariant* _tmp29_ = NULL;
		GVariant* _tmp30_ = NULL;
		GVariant* _tmp31_ = NULL;
		gint _tmp32_ = 0;
		gint _tmp33_ = 0;
		gint y = 0;
		GVariant* _tmp34_ = NULL;
		GVariant* _tmp35_ = NULL;
		GVariant* _tmp36_ = NULL;
		gint _tmp37_ = 0;
		gint _tmp38_ = 0;
		gint _tmp39_ = 0;
		gint _tmp40_ = 0;
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp29_ = position;
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp30_ = g_variant_get_child_value (_tmp29_, (gsize) 0);
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp31_ = _tmp30_;
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp32_ = _variant_get3 (_tmp31_);
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp33_ = _tmp32_;
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_variant_unref0 (_tmp31_);
#line 117 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		x = _tmp33_;
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp34_ = position;
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp35_ = g_variant_get_child_value (_tmp34_, (gsize) 1);
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp36_ = _tmp35_;
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp37_ = _variant_get4 (_tmp36_);
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp38_ = _tmp37_;
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_variant_unref0 (_tmp36_);
#line 118 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		y = _tmp38_;
#line 120 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp39_ = x;
#line 120 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp40_ = y;
#line 120 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		gtk_window_move ((GtkWindow*) self, _tmp39_, _tmp40_);
#line 617 "app-window.c"
	}
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_variant_unref0 (position);
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_variant_unref0 (size);
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (provider);
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return self;
#line 627 "app-window.c"
}


BoxesAppWindow* boxes_app_window_new (GtkApplication* app) {
#line 88 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return boxes_app_window_construct (BOXES_TYPE_APP_WINDOW, app);
#line 634 "app-window.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return self ? g_object_ref (self) : NULL;
#line 641 "app-window.c"
}


void boxes_app_window_setup_ui (BoxesAppWindow* self) {
	BoxesTopbar* _tmp0_ = NULL;
	BoxesDisplayPage* _tmp1_ = NULL;
	BoxesCollectionView* _tmp2_ = NULL;
	BoxesSelectionbar* _tmp3_ = NULL;
	BoxesSearchbar* _tmp4_ = NULL;
	BoxesEmptyBoxes* _tmp5_ = NULL;
	BoxesNotificationbar* _tmp6_ = NULL;
	BoxesSearchbar* _tmp7_ = NULL;
	BoxesSearchbar* _tmp8_ = NULL;
	BoxesWizardWindow* _tmp9_ = NULL;
	BoxesPropertiesWindow* _tmp10_ = NULL;
#line 124 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 125 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->topbar;
#line 125 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_topbar_setup_ui (_tmp0_, self);
#line 126 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = self->display_page;
#line 126 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_display_page_setup_ui (_tmp1_, self);
#line 127 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = self->view;
#line 127 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_collection_view_setup_ui (_tmp2_, self);
#line 128 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = self->selectionbar;
#line 128 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_selectionbar_setup_ui (_tmp3_, self);
#line 129 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = self->searchbar;
#line 129 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_searchbar_setup_ui (_tmp4_, self);
#line 130 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = self->empty_boxes;
#line 130 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_empty_boxes_setup_ui (_tmp5_, self);
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = self->notificationbar;
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_ = self->searchbar;
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = _g_object_ref0 (_tmp7_);
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (_tmp6_->searchbar);
#line 131 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_->searchbar = _tmp8_;
#line 133 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp9_ = boxes_wizard_window_new (self);
#line 133 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_ref_sink (_tmp9_);
#line 133 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->wizard_window);
#line 133 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->wizard_window = _tmp9_;
#line 134 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_ = boxes_properties_window_new (self);
#line 134 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_ref_sink (_tmp10_);
#line 134 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->props_window);
#line 134 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->props_window = _tmp10_;
#line 709 "app-window.c"
}


static GVariant* _variant_new5 (gint* value, gint value_length1) {
	gint* _tmp9_;
	GVariantBuilder _tmp10_;
	int _tmp11_;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp9_ = value;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_variant_builder_init (&_tmp10_, G_VARIANT_TYPE ("ai"));
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	for (_tmp11_ = 0; _tmp11_ < value_length1; _tmp11_++) {
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_variant_builder_add_value (&_tmp10_, g_variant_new_int32 (*_tmp9_));
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp9_++;
#line 727 "app-window.c"
	}
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_ref_sink (g_variant_builder_end (&_tmp10_));
#line 731 "app-window.c"
}


static GVariant* _variant_new6 (gint* value, gint value_length1) {
	gint* _tmp20_;
	GVariantBuilder _tmp21_;
	int _tmp22_;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp20_ = value;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_variant_builder_init (&_tmp21_, G_VARIANT_TYPE ("ai"));
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	for (_tmp22_ = 0; _tmp22_ < value_length1; _tmp22_++) {
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_variant_builder_add_value (&_tmp21_, g_variant_new_int32 (*_tmp20_));
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp20_++;
#line 749 "app-window.c"
	}
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return g_variant_ref_sink (g_variant_builder_end (&_tmp21_));
#line 753 "app-window.c"
}


static void boxes_app_window_save_window_geometry (BoxesAppWindow* self) {
	gint width = 0;
	gint height = 0;
	gint x = 0;
	gint y = 0;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gint _tmp2_ = 0;
	gint _tmp3_ = 0;
	GSettings* _tmp4_ = NULL;
	gint _tmp5_ = 0;
	gint _tmp6_ = 0;
	gint* _tmp7_ = NULL;
	gint* _tmp8_ = NULL;
	gint _tmp8__length1 = 0;
	GVariant* _tmp12_ = NULL;
	gint _tmp13_ = 0;
	gint _tmp14_ = 0;
	GSettings* _tmp15_ = NULL;
	gint _tmp16_ = 0;
	gint _tmp17_ = 0;
	gint* _tmp18_ = NULL;
	gint* _tmp19_ = NULL;
	gint _tmp19__length1 = 0;
	GVariant* _tmp23_ = NULL;
#line 137 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 140 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = boxes_app_window_get_maximized (self);
#line 140 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _tmp0_;
#line 140 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp1_) {
#line 141 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		return;
#line 792 "app-window.c"
	}
#line 143 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_window_get_size ((GtkWindow*) self, &_tmp2_, &_tmp3_);
#line 143 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	width = _tmp2_;
#line 143 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	height = _tmp3_;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = self->settings;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = width;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = height;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_ = g_new0 (gint, 2);
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_[0] = _tmp5_;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_[1] = _tmp6_;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = _tmp7_;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8__length1 = 2;
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp12_ = _variant_new5 (_tmp8_, 2);
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_settings_set_value (_tmp4_, "window-size", _tmp12_);
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_variant_unref0 (_tmp12_);
#line 144 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = (g_free (_tmp8_), NULL);
#line 146 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_window_get_position ((GtkWindow*) self, &_tmp13_, &_tmp14_);
#line 146 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	x = _tmp13_;
#line 146 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	y = _tmp14_;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp15_ = self->settings;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp16_ = x;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp17_ = y;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp18_ = g_new0 (gint, 2);
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp18_[0] = _tmp16_;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp18_[1] = _tmp17_;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp19_ = _tmp18_;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp19__length1 = 2;
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp23_ = _variant_new6 (_tmp19_, 2);
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_settings_set_value (_tmp15_, "window-position", _tmp23_);
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_variant_unref0 (_tmp23_);
#line 147 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp19_ = (g_free (_tmp19_), NULL);
#line 854 "app-window.c"
}


static gint g_ptr_array_get_length (GPtrArray* self) {
	gint result;
	guint _tmp0_ = 0U;
#line 4407 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, 0);
#line 4407 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = self->len;
#line 4407 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	result = (gint) _tmp0_;
#line 4407 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 869 "app-window.c"
}


static void g_ptr_array_set_length (GPtrArray* self, gint value) {
	gint _tmp0_ = 0;
#line 4408 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_if_fail (self != NULL);
#line 4408 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = value;
#line 4408 "/home/zeenix/jhbuild/share/vala-0.28/vapi/glib-2.0.vapi"
	g_ptr_array_set_size (self, _tmp0_);
#line 881 "app-window.c"
}


static void boxes_app_window_ui_state_changed (BoxesAppWindow* self) {
	BoxesTopbar* _tmp0_ = NULL;
	BoxesUI* _tmp1_ = NULL;
	BoxesCollectionView* _tmp2_ = NULL;
	BoxesUI* _tmp3_ = NULL;
	BoxesPropertiesWindow* _tmp4_ = NULL;
	BoxesUI* _tmp5_ = NULL;
	BoxesWizardWindow* _tmp6_ = NULL;
	BoxesUI* _tmp7_ = NULL;
	BoxesEmptyBoxes* _tmp8_ = NULL;
	BoxesUI* _tmp9_ = NULL;
	BoxesUI** _tmp10_ = NULL;
	BoxesUIState _tmp15_ = 0;
	BoxesUIState _tmp16_ = 0;
	BoxesUIState _tmp18_ = 0;
	BoxesUIState _tmp19_ = 0;
	BoxesCollectionItem* _tmp48_ = NULL;
	BoxesCollectionItem* _tmp49_ = NULL;
#line 150 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->topbar;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _g_object_ref0 ((BoxesUI*) _tmp0_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = self->view;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = _g_object_ref0 ((BoxesUI*) _tmp2_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = self->props_window;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = _g_object_ref0 ((BoxesUI*) _tmp4_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = self->wizard_window;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_ = _g_object_ref0 ((BoxesUI*) _tmp6_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = self->empty_boxes;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp9_ = _g_object_ref0 ((BoxesUI*) _tmp8_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_ = g_new0 (BoxesUI*, 5 + 1);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_[0] = _tmp1_;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_[1] = _tmp3_;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_[2] = _tmp5_;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_[3] = _tmp7_;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_[4] = _tmp9_;
#line 937 "app-window.c"
	{
		BoxesUI** ui_collection = NULL;
		gint ui_collection_length1 = 0;
		gint _ui_collection_size_ = 0;
		gint ui_it = 0;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		ui_collection = _tmp10_;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		ui_collection_length1 = 5;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		for (ui_it = 0; ui_it < 5; ui_it = ui_it + 1) {
#line 949 "app-window.c"
			BoxesUI* _tmp11_ = NULL;
			BoxesUI* ui = NULL;
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp11_ = _g_object_ref0 (ui_collection[ui_it]);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			ui = _tmp11_;
#line 956 "app-window.c"
			{
				BoxesUI* _tmp12_ = NULL;
				BoxesUIState _tmp13_ = 0;
				BoxesUIState _tmp14_ = 0;
#line 154 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp12_ = ui;
#line 154 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp13_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 154 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp14_ = _tmp13_;
#line 154 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				boxes_ui_set_state (_tmp12_, _tmp14_);
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_g_object_unref0 (ui);
#line 971 "app-window.c"
			}
		}
#line 153 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		ui_collection = (_vala_array_free (ui_collection, ui_collection_length1, (GDestroyNotify) g_object_unref), NULL);
#line 976 "app-window.c"
	}
#line 157 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp15_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 157 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp16_ = _tmp15_;
#line 157 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp16_ != BOXES_UI_STATE_COLLECTION) {
#line 984 "app-window.c"
		BoxesSearchbar* _tmp17_ = NULL;
#line 158 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp17_ = self->searchbar;
#line 158 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_object_set ((GtkSearchBar*) _tmp17_, "search-mode-enabled", FALSE, NULL);
#line 990 "app-window.c"
	}
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp18_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp19_ = _tmp18_;
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	switch (_tmp19_) {
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_UI_STATE_COLLECTION:
#line 1000 "app-window.c"
		{
			BoxesApp* _tmp20_ = NULL;
			BoxesCollection* _tmp21_ = NULL;
			GPtrArray* _tmp22_ = NULL;
			gint _tmp23_ = 0;
			gint _tmp24_ = 0;
			BoxesCollectionView* _tmp29_ = NULL;
			BoxesTopbar* _tmp30_ = NULL;
			BoxesCollectionItem* _tmp31_ = NULL;
			BoxesCollectionItem* _tmp32_ = NULL;
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp20_ = boxes_app_app;
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp21_ = _tmp20_->collection;
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp22_ = _tmp21_->items;
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp23_ = g_ptr_array_get_length (_tmp22_);
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp24_ = _tmp23_;
#line 162 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			if (_tmp24_ != 0) {
#line 1023 "app-window.c"
				GtkStack* _tmp25_ = NULL;
				BoxesCollectionView* _tmp26_ = NULL;
#line 163 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp25_ = self->below_bin;
#line 163 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp26_ = self->view;
#line 163 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				gtk_stack_set_visible_child (_tmp25_, (GtkWidget*) _tmp26_);
#line 1032 "app-window.c"
			} else {
				GtkStack* _tmp27_ = NULL;
				BoxesEmptyBoxes* _tmp28_ = NULL;
#line 165 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp27_ = self->below_bin;
#line 165 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp28_ = self->empty_boxes;
#line 165 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				gtk_stack_set_visible_child (_tmp27_, (GtkWidget*) _tmp28_);
#line 1042 "app-window.c"
			}
#line 166 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			boxes_app_window_set_fullscreened (self, FALSE);
#line 167 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp29_ = self->view;
#line 167 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			gtk_widget_set_visible ((GtkWidget*) _tmp29_, TRUE);
#line 169 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_g_object_unref0 (self->priv->status_bind);
#line 169 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			self->priv->status_bind = NULL;
#line 170 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp30_ = self->topbar;
#line 170 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			boxes_topbar_set_status (_tmp30_, NULL);
#line 171 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp31_ = boxes_app_window_get_current_item (self);
#line 171 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp32_ = _tmp31_;
#line 171 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp32_, BOXES_TYPE_MACHINE)) {
#line 1064 "app-window.c"
				BoxesMachine* machine = NULL;
				BoxesCollectionItem* _tmp33_ = NULL;
				BoxesCollectionItem* _tmp34_ = NULL;
				BoxesMachine* _tmp35_ = NULL;
				gulong _tmp36_ = 0UL;
				BoxesMachine* _tmp39_ = NULL;
				GCancellable* _tmp40_ = NULL;
				GCancellable* _tmp41_ = NULL;
				BoxesMachine* _tmp42_ = NULL;
#line 172 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp33_ = boxes_app_window_get_current_item (self);
#line 172 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp34_ = _tmp33_;
#line 172 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp35_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp34_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp34_) : NULL);
#line 172 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				machine = _tmp35_;
#line 173 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp36_ = self->priv->got_error_id;
#line 173 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				if (_tmp36_ != ((gulong) 0)) {
#line 1086 "app-window.c"
					BoxesMachine* _tmp37_ = NULL;
					gulong _tmp38_ = 0UL;
#line 174 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp37_ = machine;
#line 174 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp38_ = self->priv->got_error_id;
#line 174 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					g_signal_handler_disconnect ((GObject*) _tmp37_, _tmp38_);
#line 175 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					self->priv->got_error_id = (gulong) 0;
#line 1097 "app-window.c"
				}
#line 178 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp39_ = machine;
#line 178 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp40_ = boxes_machine_get_connecting_cancellable (_tmp39_);
#line 178 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp41_ = _tmp40_;
#line 178 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				g_cancellable_cancel (_tmp41_);
#line 179 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp42_ = machine;
#line 179 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				boxes_machine_schedule_autosave (_tmp42_);
#line 171 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_g_object_unref0 (machine);
#line 1113 "app-window.c"
			}
#line 182 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			break;
#line 1117 "app-window.c"
		}
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_UI_STATE_CREDS:
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_UI_STATE_DISPLAY:
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_UI_STATE_WIZARD:
#line 160 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_UI_STATE_PROPERTIES:
#line 1127 "app-window.c"
		{
#line 189 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			break;
#line 1131 "app-window.c"
		}
		default:
		{
			BoxesUIState _tmp43_ = 0;
			BoxesUIState _tmp44_ = 0;
			GEnumValue* _tmp45_;
			gchar* _tmp46_ = NULL;
			gchar* _tmp47_ = NULL;
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp43_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp44_ = _tmp43_;
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp45_ = g_enum_get_value (g_type_class_ref (BOXES_TYPE_UI_STATE), _tmp44_);
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp46_ = g_strdup_printf ("Unhandled UI state %s", (_tmp45_ != NULL) ? _tmp45_->value_name : NULL);
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp47_ = _tmp46_;
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			g_warning ("app-window.vala:192: %s", _tmp47_);
#line 192 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_g_free0 (_tmp47_);
#line 193 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			break;
#line 1156 "app-window.c"
		}
	}
#line 196 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp48_ = boxes_app_window_get_current_item (self);
#line 196 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp49_ = _tmp48_;
#line 196 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp49_ != NULL) {
#line 1165 "app-window.c"
		BoxesCollectionItem* _tmp50_ = NULL;
		BoxesCollectionItem* _tmp51_ = NULL;
		BoxesUIState _tmp52_ = 0;
		BoxesUIState _tmp53_ = 0;
#line 197 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp50_ = boxes_app_window_get_current_item (self);
#line 197 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp51_ = _tmp50_;
#line 197 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp52_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 197 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp53_ = _tmp52_;
#line 197 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_ui_set_state ((BoxesUI*) _tmp51_, _tmp53_);
#line 1180 "app-window.c"
	}
}


static void _g_object_unref0_ (gpointer var) {
#line 200 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
#line 1188 "app-window.c"
}


static void _g_list_free__g_object_unref0_ (GList* self) {
#line 200 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_list_foreach (self, (GFunc) _g_object_unref0_, NULL);
#line 200 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_list_free (self);
#line 1197 "app-window.c"
}


void boxes_app_window_show_properties (BoxesAppWindow* self) {
	BoxesCollectionItem* _tmp0_ = NULL;
	BoxesCollectionItem* _tmp1_ = NULL;
	GList* selected_items = NULL;
	BoxesCollectionView* _tmp2_ = NULL;
	GList* _tmp3_ = NULL;
	GList* _tmp4_ = NULL;
#line 200 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 201 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = boxes_app_window_get_current_item (self);
#line 201 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _tmp0_;
#line 201 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp1_ != NULL) {
#line 202 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_ui_set_state ((BoxesUI*) self, BOXES_UI_STATE_PROPERTIES);
#line 204 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		return;
#line 1220 "app-window.c"
	}
#line 207 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = self->view;
#line 207 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = boxes_collection_view_get_selected_items (_tmp2_);
#line 207 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	selected_items = _tmp3_;
#line 209 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_set_selection_mode (self, FALSE);
#line 212 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = selected_items;
#line 1232 "app-window.c"
	{
		GList* item_collection = NULL;
		GList* item_it = NULL;
#line 212 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		item_collection = _tmp4_;
#line 212 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		for (item_it = item_collection; item_it != NULL; item_it = item_it->next) {
#line 1240 "app-window.c"
			BoxesCollectionItem* _tmp5_ = NULL;
			BoxesCollectionItem* item = NULL;
#line 212 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp5_ = _g_object_ref0 ((BoxesCollectionItem*) item_it->data);
#line 212 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			item = _tmp5_;
#line 1247 "app-window.c"
			{
				BoxesCollectionItem* _tmp6_ = NULL;
#line 213 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp6_ = item;
#line 213 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				boxes_app_window_set_current_item (self, _tmp6_);
#line 214 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				boxes_ui_set_state ((BoxesUI*) self, BOXES_UI_STATE_PROPERTIES);
#line 215 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_g_object_unref0 (item);
#line 215 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				break;
#line 1260 "app-window.c"
			}
		}
	}
#line 200 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	__g_list_free__g_object_unref0_0 (selected_items);
#line 1266 "app-window.c"
}


static void __lambda29_ (BoxesAppWindow* self, const gchar* message) {
	BoxesNotificationbar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	GdNotification* _tmp2_ = NULL;
	GdNotification* _tmp3_ = NULL;
#line 227 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (message != NULL);
#line 228 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->notificationbar;
#line 228 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = message;
#line 228 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = boxes_notificationbar_display_error (_tmp0_, _tmp1_, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 228 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = _tmp2_;
#line 228 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (_tmp3_);
#line 1287 "app-window.c"
}


static void ___lambda29__boxes_machine_got_error (BoxesMachine* _sender, const gchar* message, gpointer self) {
#line 227 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	__lambda29_ ((BoxesAppWindow*) self, message);
#line 1294 "app-window.c"
}


void boxes_app_window_connect_to (BoxesAppWindow* self, BoxesMachine* machine) {
	BoxesMachine* _tmp0_ = NULL;
	BoxesMachine* _tmp1_ = NULL;
	BoxesMachine* _tmp2_ = NULL;
	BoxesMachine* _tmp3_ = NULL;
	BoxesTopbar* _tmp4_ = NULL;
	GBinding* _tmp5_ = NULL;
	GBinding* _tmp6_ = NULL;
	BoxesMachine* _tmp7_ = NULL;
	gulong _tmp8_ = 0UL;
	BoxesUIState _tmp9_ = 0;
	BoxesUIState _tmp10_ = 0;
#line 219 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 219 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (machine != NULL);
#line 220 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = machine;
#line 220 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_set_current_item (self, (BoxesCollectionItem*) _tmp0_);
#line 221 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = machine;
#line 221 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_machine_set_window (_tmp1_, self);
#line 222 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = machine;
#line 222 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_machine_unschedule_autosave (_tmp2_);
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = machine;
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = self->topbar;
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = g_object_bind_property_with_closures ((GObject*) _tmp3_, "status", (GObject*) _tmp4_, "status", G_BINDING_SYNC_CREATE, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, NULL)));
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = _g_object_ref0 (_tmp5_);
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->priv->status_bind);
#line 225 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->status_bind = _tmp6_;
#line 227 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp7_ = machine;
#line 227 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp8_ = g_signal_connect_object (_tmp7_, "got-error", (GCallback) ___lambda29__boxes_machine_got_error, self, 0);
#line 227 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->got_error_id = _tmp8_;
#line 231 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp9_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 231 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp10_ = _tmp9_;
#line 231 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp10_ != BOXES_UI_STATE_CREDS) {
#line 232 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_ui_set_state ((BoxesUI*) self, BOXES_UI_STATE_CREDS);
#line 1352 "app-window.c"
	}
}


void boxes_app_window_select_item (BoxesAppWindow* self, BoxesCollectionItem* item) {
	gboolean _tmp0_ = FALSE;
	BoxesUIState _tmp1_ = 0;
	BoxesUIState _tmp2_ = 0;
#line 235 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 235 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (item != NULL);
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = _tmp1_;
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp2_ == BOXES_UI_STATE_COLLECTION) {
#line 1371 "app-window.c"
		gboolean _tmp3_ = FALSE;
		gboolean _tmp4_ = FALSE;
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp3_ = boxes_app_window_get_selection_mode (self);
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp4_ = _tmp3_;
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = !_tmp4_;
#line 1380 "app-window.c"
	} else {
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = FALSE;
#line 1384 "app-window.c"
	}
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp0_) {
#line 1388 "app-window.c"
		BoxesCollectionItem* _tmp5_ = NULL;
		BoxesMachine* machine = NULL;
		BoxesCollectionItem* _tmp6_ = NULL;
		BoxesMachine* _tmp7_ = NULL;
		BoxesMachine* _tmp8_ = NULL;
		BoxesAppWindow* _tmp9_ = NULL;
		BoxesAppWindow* _tmp10_ = NULL;
		BoxesApp* _tmp11_ = NULL;
		BoxesAppWindow* _tmp12_ = NULL;
		BoxesAppWindow* _tmp13_ = NULL;
		BoxesCollectionItem* _tmp17_ = NULL;
		BoxesCollectionItem* _tmp18_ = NULL;
		BoxesCollectionItem* _tmp19_ = NULL;
		BoxesCollectionItem* _tmp21_ = NULL;
#line 237 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp5_ = item;
#line 237 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, BOXES_TYPE_MACHINE));
#line 239 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp6_ = item;
#line 239 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp7_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp6_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp6_) : NULL);
#line 239 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		machine = _tmp7_;
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp8_ = machine;
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp9_ = boxes_machine_get_window (_tmp8_);
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp10_ = _tmp9_;
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp11_ = boxes_app_app;
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp12_ = boxes_app_get_main_window (_tmp11_);
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp13_ = _tmp12_;
#line 241 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		if (_tmp10_ != _tmp13_) {
#line 1427 "app-window.c"
			BoxesMachine* _tmp14_ = NULL;
			BoxesAppWindow* _tmp15_ = NULL;
			BoxesAppWindow* _tmp16_ = NULL;
#line 242 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp14_ = machine;
#line 242 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp15_ = boxes_machine_get_window (_tmp14_);
#line 242 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp16_ = _tmp15_;
#line 242 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			gtk_window_present ((GtkWindow*) _tmp16_);
#line 244 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_g_object_unref0 (machine);
#line 244 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			return;
#line 1443 "app-window.c"
		}
#line 247 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp17_ = item;
#line 247 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_set_current_item (self, _tmp17_);
#line 249 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp18_ = boxes_app_window_get_current_item (self);
#line 249 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp19_ = _tmp18_;
#line 249 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp19_, BOXES_TYPE_MACHINE)) {
#line 1455 "app-window.c"
			BoxesMachine* _tmp20_ = NULL;
#line 250 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp20_ = machine;
#line 250 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			boxes_app_window_connect_to (self, _tmp20_);
#line 1461 "app-window.c"
		} else {
#line 252 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			g_warning ("app-window.vala:252: unknown item, fix your code");
#line 1465 "app-window.c"
		}
#line 254 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp21_ = item;
#line 254 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_signal_emit_by_name (self, "item-selected", _tmp21_);
#line 236 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_object_unref0 (machine);
#line 1473 "app-window.c"
	} else {
		BoxesUIState _tmp22_ = 0;
		BoxesUIState _tmp23_ = 0;
#line 255 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp22_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 255 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp23_ = _tmp22_;
#line 255 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		if (_tmp23_ == BOXES_UI_STATE_WIZARD) {
#line 1483 "app-window.c"
			BoxesCollectionItem* _tmp24_ = NULL;
#line 256 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp24_ = item;
#line 256 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			boxes_app_window_set_current_item (self, _tmp24_);
#line 258 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			boxes_ui_set_state ((BoxesUI*) self, BOXES_UI_STATE_PROPERTIES);
#line 1491 "app-window.c"
		}
	}
}


gboolean boxes_app_window_on_key_pressed (BoxesAppWindow* self, GtkWidget* widget, GdkEventKey* event) {
	gboolean result = FALSE;
	GdkModifierType default_modifiers = 0;
	GdkModifierType _tmp0_ = 0;
	GdkEventKey* _tmp1_ = NULL;
	guint _tmp2_ = 0U;
#line 263 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 263 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (widget != NULL, FALSE);
#line 263 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 264 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = gtk_accelerator_get_default_mod_mask ();
#line 264 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	default_modifiers = _tmp0_;
#line 266 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = event;
#line 266 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = _tmp1_->keyval;
#line 266 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp2_ == ((guint) GDK_KEY_F11)) {
#line 1519 "app-window.c"
		gboolean _tmp3_ = FALSE;
		gboolean _tmp4_ = FALSE;
#line 267 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp3_ = boxes_app_window_get_fullscreened (self);
#line 267 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp4_ = _tmp3_;
#line 267 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_set_fullscreened (self, !_tmp4_);
#line 269 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		result = TRUE;
#line 269 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		return result;
#line 1532 "app-window.c"
	} else {
		GdkEventKey* _tmp5_ = NULL;
		guint _tmp6_ = 0U;
#line 270 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp5_ = event;
#line 270 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp6_ = _tmp5_->keyval;
#line 270 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		if (_tmp6_ == ((guint) GDK_KEY_F1)) {
#line 1542 "app-window.c"
			BoxesApp* _tmp7_ = NULL;
#line 271 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp7_ = boxes_app_app;
#line 271 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			g_action_group_activate_action ((GActionGroup*) _tmp7_, "help", NULL);
#line 273 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			result = TRUE;
#line 273 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			return result;
#line 1552 "app-window.c"
		} else {
			gboolean _tmp8_ = FALSE;
			GdkEventKey* _tmp9_ = NULL;
			guint _tmp10_ = 0U;
#line 274 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp9_ = event;
#line 274 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			_tmp10_ = _tmp9_->keyval;
#line 274 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			if (_tmp10_ == ((guint) GDK_KEY_q)) {
#line 1563 "app-window.c"
				GdkEventKey* _tmp11_ = NULL;
				GdkModifierType _tmp12_ = 0;
				GdkModifierType _tmp13_ = 0;
#line 275 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp11_ = event;
#line 275 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp12_ = _tmp11_->state;
#line 275 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp13_ = default_modifiers;
#line 275 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp8_ = (_tmp12_ & _tmp13_) == GDK_CONTROL_MASK;
#line 1575 "app-window.c"
			} else {
#line 274 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp8_ = FALSE;
#line 1579 "app-window.c"
			}
#line 274 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
			if (_tmp8_) {
#line 1583 "app-window.c"
				BoxesApp* _tmp14_ = NULL;
#line 276 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp14_ = boxes_app_app;
#line 276 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				boxes_app_quit_app (_tmp14_);
#line 278 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				result = TRUE;
#line 278 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				return result;
#line 1593 "app-window.c"
			} else {
				gboolean _tmp15_ = FALSE;
				GdkEventKey* _tmp16_ = NULL;
				guint _tmp17_ = 0U;
#line 279 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp16_ = event;
#line 279 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				_tmp17_ = _tmp16_->keyval;
#line 279 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				if (_tmp17_ == ((guint) GDK_KEY_n)) {
#line 1604 "app-window.c"
					GdkEventKey* _tmp18_ = NULL;
					GdkModifierType _tmp19_ = 0;
					GdkModifierType _tmp20_ = 0;
#line 280 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp18_ = event;
#line 280 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp19_ = _tmp18_->state;
#line 280 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp20_ = default_modifiers;
#line 280 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp15_ = (_tmp19_ & _tmp20_) == GDK_CONTROL_MASK;
#line 1616 "app-window.c"
				} else {
#line 279 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp15_ = FALSE;
#line 1620 "app-window.c"
				}
#line 279 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
				if (_tmp15_) {
#line 1624 "app-window.c"
					BoxesTopbar* _tmp21_ = NULL;
#line 281 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp21_ = self->topbar;
#line 281 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					boxes_topbar_click_new_button (_tmp21_);
#line 283 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					result = TRUE;
#line 283 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					return result;
#line 1634 "app-window.c"
				} else {
					gboolean _tmp22_ = FALSE;
					GdkEventKey* _tmp23_ = NULL;
					guint _tmp24_ = 0U;
#line 284 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp23_ = event;
#line 284 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					_tmp24_ = _tmp23_->keyval;
#line 284 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					if (_tmp24_ == ((guint) GDK_KEY_f)) {
#line 1645 "app-window.c"
						GdkEventKey* _tmp25_ = NULL;
						GdkModifierType _tmp26_ = 0;
						GdkModifierType _tmp27_ = 0;
#line 285 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp25_ = event;
#line 285 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp26_ = _tmp25_->state;
#line 285 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp27_ = default_modifiers;
#line 285 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp22_ = (_tmp26_ & _tmp27_) == GDK_CONTROL_MASK;
#line 1657 "app-window.c"
					} else {
#line 284 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp22_ = FALSE;
#line 1661 "app-window.c"
					}
#line 284 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
					if (_tmp22_) {
#line 1665 "app-window.c"
						BoxesTopbar* _tmp28_ = NULL;
#line 286 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp28_ = self->topbar;
#line 286 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						boxes_topbar_click_search_button (_tmp28_);
#line 288 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						result = TRUE;
#line 288 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						return result;
#line 1675 "app-window.c"
					} else {
						gboolean _tmp29_ = FALSE;
						GdkEventKey* _tmp30_ = NULL;
						guint _tmp31_ = 0U;
#line 289 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp30_ = event;
#line 289 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						_tmp31_ = _tmp30_->keyval;
#line 289 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						if (_tmp31_ == ((guint) GDK_KEY_a)) {
#line 1686 "app-window.c"
							GdkEventKey* _tmp32_ = NULL;
							GdkModifierType _tmp33_ = 0;
							GdkModifierType _tmp34_ = 0;
#line 290 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp32_ = event;
#line 290 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp33_ = _tmp32_->state;
#line 290 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp34_ = default_modifiers;
#line 290 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp29_ = (_tmp33_ & _tmp34_) == GDK_MOD1_MASK;
#line 1698 "app-window.c"
						} else {
#line 289 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp29_ = FALSE;
#line 1702 "app-window.c"
						}
#line 289 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
						if (_tmp29_) {
#line 1706 "app-window.c"
							BoxesApp* _tmp35_ = NULL;
#line 291 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp35_ = boxes_app_app;
#line 291 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							boxes_app_quit_app (_tmp35_);
#line 293 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							result = TRUE;
#line 293 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							return result;
#line 1716 "app-window.c"
						} else {
							gboolean _tmp36_ = FALSE;
							GdkEventKey* _tmp37_ = NULL;
							guint _tmp38_ = 0U;
#line 294 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp37_ = event;
#line 294 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							_tmp38_ = _tmp37_->keyval;
#line 294 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							if (_tmp38_ == ((guint) GDK_KEY_Left)) {
#line 1727 "app-window.c"
								GdkEventKey* _tmp39_ = NULL;
								GdkModifierType _tmp40_ = 0;
								GdkModifierType _tmp41_ = 0;
#line 295 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp39_ = event;
#line 295 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp40_ = _tmp39_->state;
#line 295 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp41_ = default_modifiers;
#line 295 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp36_ = (_tmp40_ & _tmp41_) == GDK_MOD1_MASK;
#line 1739 "app-window.c"
							} else {
#line 294 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp36_ = FALSE;
#line 1743 "app-window.c"
							}
#line 294 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
							if (_tmp36_) {
#line 1747 "app-window.c"
								BoxesTopbar* _tmp42_ = NULL;
#line 296 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp42_ = self->topbar;
#line 296 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								boxes_topbar_click_back_button (_tmp42_);
#line 297 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								result = TRUE;
#line 297 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								return result;
#line 1757 "app-window.c"
							} else {
								GdkEventKey* _tmp43_ = NULL;
								guint _tmp44_ = 0U;
#line 298 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp43_ = event;
#line 298 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								_tmp44_ = _tmp43_->keyval;
#line 298 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
								if (_tmp44_ == ((guint) GDK_KEY_Escape)) {
#line 1767 "app-window.c"
									BoxesTopbar* _tmp45_ = NULL;
#line 299 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
									_tmp45_ = self->topbar;
#line 299 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
									boxes_topbar_click_cancel_button (_tmp45_);
#line 1773 "app-window.c"
								}
							}
						}
					}
				}
			}
		}
	}
#line 302 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = FALSE;
#line 302 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1786 "app-window.c"
}


static gboolean _boxes_app_window_on_key_pressed_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) {
	gboolean result;
	result = boxes_app_window_on_key_pressed ((BoxesAppWindow*) self, _sender, event);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1795 "app-window.c"
}


static gboolean __lambda196_ (BoxesAppWindow* self) {
	gboolean result = FALSE;
#line 313 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->configure_id = (guint) 0;
#line 314 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_save_window_geometry (self);
#line 316 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = FALSE;
#line 316 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1809 "app-window.c"
}


static gboolean ___lambda196__gsource_func (gpointer self) {
	gboolean result;
	result = __lambda196_ ((BoxesAppWindow*) self);
#line 312 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1818 "app-window.c"
}


static gboolean boxes_app_window_on_configure_event (BoxesAppWindow* self) {
	gboolean result = FALSE;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	guint _tmp2_ = 0U;
	guint _tmp4_ = 0U;
#line 306 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 307 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = boxes_app_window_get_fullscreened (self);
#line 307 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _tmp0_;
#line 307 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp1_) {
#line 308 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		result = FALSE;
#line 308 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		return result;
#line 1840 "app-window.c"
	}
#line 310 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = self->priv->configure_id;
#line 310 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp2_ != ((guint) 0)) {
#line 1846 "app-window.c"
		guint _tmp3_ = 0U;
#line 311 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp3_ = self->priv->configure_id;
#line 311 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_source_remove (_tmp3_);
#line 1852 "app-window.c"
	}
#line 312 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = g_timeout_add_full (G_PRIORITY_DEFAULT, BOXES_APP_WINDOW_configure_id_timeout, ___lambda196__gsource_func, g_object_ref (self), g_object_unref);
#line 312 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->configure_id = _tmp4_;
#line 319 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = FALSE;
#line 319 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1862 "app-window.c"
}


static gboolean _boxes_app_window_on_configure_event_gtk_widget_configure_event (GtkWidget* _sender, GdkEventConfigure* event, gpointer self) {
	gboolean result;
	result = boxes_app_window_on_configure_event ((BoxesAppWindow*) self);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1871 "app-window.c"
}


static gboolean boxes_app_window_on_window_state_event (BoxesAppWindow* self, GdkEventWindowState* event) {
	gboolean result = FALSE;
	GdkEventWindowState* _tmp0_ = NULL;
	GdkWindowState _tmp1_ = 0;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_ = FALSE;
	GSettings* _tmp4_ = NULL;
	gboolean _tmp5_ = FALSE;
	gboolean _tmp6_ = FALSE;
#line 323 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 323 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 324 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = event;
#line 324 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _tmp0_->changed_mask;
#line 324 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if ((_tmp1_ & GDK_WINDOW_STATE_FULLSCREEN) == GDK_WINDOW_STATE_FULLSCREEN) {
#line 325 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_object_notify ((GObject*) self, "fullscreened");
#line 1896 "app-window.c"
	}
#line 327 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = boxes_app_window_get_fullscreened (self);
#line 327 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = _tmp2_;
#line 327 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp3_) {
#line 328 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		result = FALSE;
#line 328 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		return result;
#line 1908 "app-window.c"
	}
#line 330 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = self->settings;
#line 330 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = boxes_app_window_get_maximized (self);
#line 330 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = _tmp5_;
#line 330 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_settings_set_boolean (_tmp4_, "window-maximized", _tmp6_);
#line 332 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = FALSE;
#line 332 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1922 "app-window.c"
}


static gboolean _boxes_app_window_on_window_state_event_gtk_widget_window_state_event (GtkWidget* _sender, GdkEventWindowState* event, gpointer self) {
	gboolean result;
	result = boxes_app_window_on_window_state_event ((BoxesAppWindow*) self, event);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 1931 "app-window.c"
}


static gboolean boxes_app_window_on_delete_event (BoxesAppWindow* self) {
	gboolean result = FALSE;
	gboolean _tmp0_ = FALSE;
	BoxesCollectionItem* _tmp1_ = NULL;
	BoxesCollectionItem* _tmp2_ = NULL;
	BoxesCollectionItem* _tmp5_ = NULL;
	BoxesCollectionItem* _tmp6_ = NULL;
	BoxesApp* _tmp12_ = NULL;
	gboolean _tmp13_ = FALSE;
#line 336 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = boxes_app_window_get_current_item (self);
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = _tmp1_;
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp2_ == NULL) {
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = TRUE;
#line 1954 "app-window.c"
	} else {
		BoxesCollectionItem* _tmp3_ = NULL;
		BoxesCollectionItem* _tmp4_ = NULL;
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp3_ = boxes_app_window_get_current_item (self);
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp4_ = _tmp3_;
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, BOXES_TYPE_MACHINE);
#line 1964 "app-window.c"
	}
#line 337 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (_tmp0_);
#line 339 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = boxes_app_window_get_current_item (self);
#line 339 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp6_ = _tmp5_;
#line 339 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp6_ != NULL) {
#line 1974 "app-window.c"
		BoxesMachine* machine = NULL;
		BoxesCollectionItem* _tmp7_ = NULL;
		BoxesCollectionItem* _tmp8_ = NULL;
		BoxesMachine* _tmp9_ = NULL;
		BoxesMachine* _tmp10_ = NULL;
		BoxesMachine* _tmp11_ = NULL;
#line 340 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp7_ = boxes_app_window_get_current_item (self);
#line 340 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp8_ = _tmp7_;
#line 340 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp9_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp8_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp8_) : NULL);
#line 340 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		machine = _tmp9_;
#line 342 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp10_ = machine;
#line 342 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_machine_set_window (_tmp10_, NULL);
#line 343 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp11_ = machine;
#line 343 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_machine_schedule_autosave (_tmp11_);
#line 339 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_object_unref0 (machine);
#line 1999 "app-window.c"
	}
#line 346 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp12_ = boxes_app_app;
#line 346 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp13_ = boxes_app_remove_window (_tmp12_, self);
#line 346 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = _tmp13_;
#line 346 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2009 "app-window.c"
}


static gboolean _boxes_app_window_on_delete_event_gtk_widget_delete_event (GtkWidget* _sender, GdkEventAny* event, gpointer self) {
	gboolean result;
	result = boxes_app_window_on_delete_event ((BoxesAppWindow*) self);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2018 "app-window.c"
}


static void boxes_app_window_on_machine_state_notify (BoxesAppWindow* self) {
	gboolean _tmp0_ = FALSE;
	BoxesApp* _tmp1_ = NULL;
	BoxesAppWindow* _tmp2_ = NULL;
	BoxesAppWindow* _tmp3_ = NULL;
#line 349 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = boxes_app_app;
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = boxes_app_get_main_window (_tmp1_);
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = _tmp2_;
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (self != _tmp3_) {
#line 2037 "app-window.c"
		BoxesCollectionItem* _tmp4_ = NULL;
		BoxesCollectionItem* _tmp5_ = NULL;
		BoxesMachineMachineState _tmp6_ = 0;
		BoxesMachineMachineState _tmp7_ = 0;
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp4_ = boxes_app_window_get_current_item (self);
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp5_ = _tmp4_;
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp6_ = boxes_machine_get_state (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp5_) : NULL);
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp7_ = _tmp6_;
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = _tmp7_ != BOXES_MACHINE_MACHINE_STATE_RUNNING;
#line 2052 "app-window.c"
	} else {
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = FALSE;
#line 2056 "app-window.c"
	}
#line 350 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp0_) {
#line 351 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_on_delete_event (self);
#line 2062 "app-window.c"
	}
}


static void boxes_app_window_on_machine_deleted_notify (BoxesAppWindow* self) {
	gboolean _tmp0_ = FALSE;
	BoxesApp* _tmp1_ = NULL;
	BoxesAppWindow* _tmp2_ = NULL;
	BoxesAppWindow* _tmp3_ = NULL;
#line 354 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = boxes_app_app;
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = boxes_app_get_main_window (_tmp1_);
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = _tmp2_;
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (self != _tmp3_) {
#line 2082 "app-window.c"
		BoxesCollectionItem* _tmp4_ = NULL;
		BoxesCollectionItem* _tmp5_ = NULL;
		gboolean _tmp6_ = FALSE;
		gboolean _tmp7_ = FALSE;
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp4_ = boxes_app_window_get_current_item (self);
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp5_ = _tmp4_;
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp6_ = boxes_machine_get_deleted (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp5_) : NULL);
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp7_ = _tmp6_;
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = _tmp7_;
#line 2097 "app-window.c"
	} else {
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp0_ = FALSE;
#line 2101 "app-window.c"
	}
#line 355 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp0_) {
#line 356 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_on_delete_event (self);
#line 2107 "app-window.c"
	}
}


static BoxesUIState boxes_app_window_real_get_previous_ui_state (BoxesUI* base) {
	BoxesUIState result;
	BoxesAppWindow* self;
	BoxesUIState _tmp0_ = 0;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = (BoxesAppWindow*) base;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->priv->_previous_ui_state;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = _tmp0_;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2124 "app-window.c"
}


static void boxes_app_window_real_set_previous_ui_state (BoxesUI* base, BoxesUIState value) {
	BoxesAppWindow* self;
	BoxesUIState _tmp0_ = 0;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = (BoxesAppWindow*) base;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = value;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->_previous_ui_state = _tmp0_;
#line 9 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_notify ((GObject *) self, "previous-ui-state");
#line 2139 "app-window.c"
}


static BoxesUIState boxes_app_window_real_get_ui_state (BoxesUI* base) {
	BoxesUIState result;
	BoxesAppWindow* self;
	BoxesUIState _tmp0_ = 0;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = (BoxesAppWindow*) base;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->priv->_ui_state;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = _tmp0_;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2155 "app-window.c"
}


static void boxes_app_window_real_set_ui_state (BoxesUI* base, BoxesUIState value) {
	BoxesAppWindow* self;
	BoxesUIState _tmp0_ = 0;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = (BoxesAppWindow*) base;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = value;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->_ui_state = _tmp0_;
#line 10 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_notify ((GObject *) self, "ui-state");
#line 2170 "app-window.c"
}


BoxesCollectionItem* boxes_app_window_get_current_item (BoxesAppWindow* self) {
	BoxesCollectionItem* result;
	BoxesCollectionItem* _tmp0_ = NULL;
#line 15 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 16 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->priv->_current_item;
#line 16 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = _tmp0_;
#line 16 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2185 "app-window.c"
}


static void _boxes_app_window_on_machine_state_notify_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 30 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_on_machine_state_notify ((BoxesAppWindow*) self);
#line 2192 "app-window.c"
}


static void _boxes_app_window_on_machine_deleted_notify_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 31 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_on_machine_deleted_notify ((BoxesAppWindow*) self);
#line 2199 "app-window.c"
}


void boxes_app_window_set_current_item (BoxesAppWindow* self, BoxesCollectionItem* value) {
	BoxesCollectionItem* _tmp0_ = NULL;
	BoxesCollectionItem* _tmp3_ = NULL;
	BoxesCollectionItem* _tmp4_ = NULL;
	BoxesCollectionItem* _tmp5_ = NULL;
#line 19 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 20 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->priv->_current_item;
#line 20 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp0_ != NULL) {
#line 2214 "app-window.c"
		BoxesCollectionItem* _tmp1_ = NULL;
		gulong _tmp2_ = 0UL;
#line 21 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp1_ = self->priv->_current_item;
#line 21 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp2_ = self->priv->machine_state_notify_id;
#line 21 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_signal_handler_disconnect ((GObject*) _tmp1_, _tmp2_);
#line 22 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		self->priv->machine_state_notify_id = (gulong) 0;
#line 23 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		self->priv->machine_deleted_notify_id = (gulong) 0;
#line 2227 "app-window.c"
	}
#line 26 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp3_ = value;
#line 26 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 26 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->priv->_current_item);
#line 26 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->_current_item = _tmp4_;
#line 27 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp5_ = self->priv->_current_item;
#line 27 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp5_ != NULL) {
#line 2241 "app-window.c"
		BoxesMachine* machine = NULL;
		BoxesCollectionItem* _tmp6_ = NULL;
		BoxesMachine* _tmp7_ = NULL;
		BoxesMachine* _tmp8_ = NULL;
		gulong _tmp9_ = 0UL;
		BoxesMachine* _tmp10_ = NULL;
		gulong _tmp11_ = 0UL;
#line 28 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp6_ = self->priv->_current_item;
#line 28 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp7_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp6_, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) _tmp6_) : NULL);
#line 28 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		machine = _tmp7_;
#line 30 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp8_ = machine;
#line 30 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp9_ = g_signal_connect_object ((GObject*) _tmp8_, "notify::state", (GCallback) _boxes_app_window_on_machine_state_notify_g_object_notify, self, 0);
#line 30 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		self->priv->machine_state_notify_id = _tmp9_;
#line 31 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp10_ = machine;
#line 31 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_tmp11_ = g_signal_connect_object ((GObject*) _tmp10_, "notify::deleted", (GCallback) _boxes_app_window_on_machine_deleted_notify_g_object_notify, self, 0);
#line 31 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		self->priv->machine_deleted_notify_id = _tmp11_;
#line 27 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		_g_object_unref0 (machine);
#line 2269 "app-window.c"
	}
#line 19 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_notify ((GObject *) self, "current-item");
#line 2273 "app-window.c"
}


gboolean boxes_app_window_get_fullscreened (BoxesAppWindow* self) {
	gboolean result;
	GdkWindow* _tmp0_ = NULL;
	GdkWindowState _tmp1_ = 0;
#line 44 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 44 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = gtk_widget_get_window ((GtkWidget*) self);
#line 44 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = gdk_window_get_state (_tmp0_);
#line 44 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = (_tmp1_ & GDK_WINDOW_STATE_FULLSCREEN) == GDK_WINDOW_STATE_FULLSCREEN;
#line 44 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2291 "app-window.c"
}


void boxes_app_window_set_fullscreened (BoxesAppWindow* self, gboolean value) {
	gboolean _tmp0_ = FALSE;
#line 45 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 46 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = value;
#line 46 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	if (_tmp0_) {
#line 47 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		gtk_window_fullscreen ((GtkWindow*) self);
#line 2305 "app-window.c"
	} else {
#line 49 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		gtk_window_unfullscreen ((GtkWindow*) self);
#line 2309 "app-window.c"
	}
}


static gboolean boxes_app_window_get_maximized (BoxesAppWindow* self) {
	gboolean result;
	GdkWindow* _tmp0_ = NULL;
	GdkWindowState _tmp1_ = 0;
#line 52 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 52 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = gtk_widget_get_window ((GtkWidget*) self);
#line 52 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = gdk_window_get_state (_tmp0_);
#line 52 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = (_tmp1_ & GDK_WINDOW_STATE_MAXIMIZED) == GDK_WINDOW_STATE_MAXIMIZED;
#line 52 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2328 "app-window.c"
}


gboolean boxes_app_window_get_selection_mode (BoxesAppWindow* self) {
	gboolean result;
	gboolean _tmp0_ = FALSE;
#line 55 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 55 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = self->priv->_selection_mode;
#line 55 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	result = _tmp0_;
#line 55 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	return result;
#line 2343 "app-window.c"
}


void boxes_app_window_set_selection_mode (BoxesAppWindow* self, gboolean value) {
	BoxesUIState _tmp0_ = 0;
	BoxesUIState _tmp1_ = 0;
	gboolean _tmp2_ = FALSE;
#line 56 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (self != NULL);
#line 57 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp0_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 57 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp1_ = _tmp0_;
#line 57 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_return_if_fail (_tmp1_ == BOXES_UI_STATE_COLLECTION);
#line 59 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_tmp2_ = value;
#line 59 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv->_selection_mode = _tmp2_;
#line 56 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_notify ((GObject *) self, "selection-mode");
#line 2365 "app-window.c"
}


static void boxes_app_window_class_init (BoxesAppWindowClass * klass) {
	gint BoxesAppWindow_private_offset;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_parent_class = g_type_class_peek_parent (klass);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_class_add_private (klass, sizeof (BoxesAppWindowPrivate));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_app_window_get_property;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_app_window_set_property;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_app_window_finalize;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_APP_WINDOW_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 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_APP_WINDOW_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 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_APP_WINDOW_CURRENT_ITEM, g_param_spec_object ("current-item", "current-item", "current-item", BOXES_TYPE_COLLECTION_ITEM, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_APP_WINDOW_FULLSCREENED, g_param_spec_boolean ("fullscreened", "fullscreened", "fullscreened", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_APP_WINDOW_SELECTION_MODE, g_param_spec_boolean ("selection-mode", "selection-mode", "selection-mode", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	BoxesAppWindow_private_offset = g_type_class_get_instance_private_offset (klass);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass), "/org/gnome/Boxes/ui/app-window.ui");
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_signal_new ("item_selected", BOXES_TYPE_APP_WINDOW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, BOXES_TYPE_COLLECTION_ITEM);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "searchbar", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, searchbar));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "topbar", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, topbar));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "notificationbar", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, notificationbar));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "selectionbar", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, selectionbar));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "display_page", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, display_page));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "empty_boxes", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, empty_boxes));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "below_bin", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, below_bin));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "view", FALSE, G_STRUCT_OFFSET (BoxesAppWindow, view));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_key_pressed", G_CALLBACK(_boxes_app_window_on_key_pressed_gtk_widget_key_press_event));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_configure_event", G_CALLBACK(_boxes_app_window_on_configure_event_gtk_widget_configure_event));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_window_state_event", G_CALLBACK(_boxes_app_window_on_window_state_event_gtk_widget_window_state_event));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_delete_event", G_CALLBACK(_boxes_app_window_on_delete_event_gtk_widget_delete_event));
#line 2421 "app-window.c"
}


static void boxes_app_window_boxes_ui_interface_init (BoxesUIIface * iface) {
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	boxes_app_window_boxes_ui_parent_iface = g_type_interface_peek_parent (iface);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	iface->get_previous_ui_state = boxes_app_window_real_get_previous_ui_state;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	iface->set_previous_ui_state = boxes_app_window_real_set_previous_ui_state;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	iface->get_ui_state = boxes_app_window_real_get_ui_state;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	iface->set_ui_state = boxes_app_window_real_set_ui_state;
#line 2436 "app-window.c"
}


static void boxes_app_window_instance_init (BoxesAppWindow * self) {
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self->priv = BOXES_APP_WINDOW_GET_PRIVATE (self);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_NOTIFICATIONBAR);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_COLLECTION_VIEW);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_TOPBAR);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_EMPTY_BOXES);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_SEARCHBAR);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_SELECTIONBAR);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	g_type_ensure (BOXES_TYPE_DISPLAY_PAGE);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	gtk_widget_init_template (GTK_WIDGET (self));
#line 2459 "app-window.c"
}


static void boxes_app_window_finalize (GObject* obj) {
	BoxesAppWindow * self;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_APP_WINDOW, BoxesAppWindow);
#line 13 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->priv->_current_item);
#line 37 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->priv->status_bind);
#line 63 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->wizard_window);
#line 64 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->props_window);
#line 67 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->searchbar);
#line 69 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->topbar);
#line 71 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->notificationbar);
#line 73 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->selectionbar);
#line 75 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->display_page);
#line 77 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->empty_boxes);
#line 79 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->below_bin);
#line 81 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->view);
#line 83 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	_g_object_unref0 (self->settings);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	G_OBJECT_CLASS (boxes_app_window_parent_class)->finalize (obj);
#line 2495 "app-window.c"
}


GType boxes_app_window_get_type (void) {
	static volatile gsize boxes_app_window_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_app_window_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesAppWindowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_app_window_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesAppWindow), 0, (GInstanceInitFunc) boxes_app_window_instance_init, NULL };
		static const GInterfaceInfo boxes_ui_info = { (GInterfaceInitFunc) boxes_app_window_boxes_ui_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType boxes_app_window_type_id;
		boxes_app_window_type_id = g_type_register_static (gtk_application_window_get_type (), "BoxesAppWindow", &g_define_type_info, 0);
		g_type_add_interface_static (boxes_app_window_type_id, BOXES_TYPE_UI, &boxes_ui_info);
		g_once_init_leave (&boxes_app_window_type_id__volatile, boxes_app_window_type_id);
	}
	return boxes_app_window_type_id__volatile;
}


static void _vala_boxes_app_window_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesAppWindow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_APP_WINDOW, BoxesAppWindow);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	switch (property_id) {
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_PREVIOUS_UI_STATE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_value_set_enum (value, boxes_ui_get_previous_ui_state ((BoxesUI*) self));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_UI_STATE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_value_set_enum (value, boxes_ui_get_ui_state ((BoxesUI*) self));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_CURRENT_ITEM:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_value_set_object (value, boxes_app_window_get_current_item (self));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_FULLSCREENED:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_value_set_boolean (value, boxes_app_window_get_fullscreened (self));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_SELECTION_MODE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		g_value_set_boolean (value, boxes_app_window_get_selection_mode (self));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 2548 "app-window.c"
		default:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 2554 "app-window.c"
	}
}


static void _vala_boxes_app_window_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesAppWindow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_APP_WINDOW, BoxesAppWindow);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
	switch (property_id) {
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_PREVIOUS_UI_STATE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_ui_set_previous_ui_state ((BoxesUI*) self, g_value_get_enum (value));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_UI_STATE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_ui_set_ui_state ((BoxesUI*) self, g_value_get_enum (value));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_CURRENT_ITEM:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_set_current_item (self, g_value_get_object (value));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_FULLSCREENED:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_set_fullscreened (self, g_value_get_boolean (value));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		case BOXES_APP_WINDOW_SELECTION_MODE:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		boxes_app_window_set_selection_mode (self, g_value_get_boolean (value));
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 2594 "app-window.c"
		default:
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 6 "/home/zeenix/checkout/gnome/gnome-boxes/src/app-window.vala"
		break;
#line 2600 "app-window.c"
	}
}


static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
	if ((array != NULL) && (destroy_func != NULL)) {
		int i;
		for (i = 0; i < array_length; i = i + 1) {
			if (((gpointer*) array)[i] != NULL) {
				destroy_func (((gpointer*) array)[i]);
			}
		}
	}
}


static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
	_vala_array_destroy (array, array_length, destroy_func);
	g_free (array);
}



