/* LibraryWindow.c generated by valac 0.34.7, the Vala compiler
 * generated from LibraryWindow.vala, do not modify */

/* Copyright 2016 Software Freedom Conservancy Inc.
 *
 * This software is licensed under the GNU Lesser General Public License
 * (version 2.1 or later).  See the COPYING file in this distribution.
 */

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
#include <gee.h>
#include <gdk/gdk.h>
#include <gio/gio.h>
#include <glib/gi18n-lib.h>
#include <gphoto2/gphoto2-camera.h>
#include <gphoto.h>
#include <float.h>
#include <math.h>
#include <cairo.h>
#include <gdk-pixbuf/gdk-pixbuf.h>


#define TYPE_PAGE_WINDOW (page_window_get_type ())
#define PAGE_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE_WINDOW, PageWindow))
#define PAGE_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE_WINDOW, PageWindowClass))
#define IS_PAGE_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE_WINDOW))
#define IS_PAGE_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE_WINDOW))
#define PAGE_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE_WINDOW, PageWindowClass))

typedef struct _PageWindow PageWindow;
typedef struct _PageWindowClass PageWindowClass;
typedef struct _PageWindowPrivate PageWindowPrivate;

#define TYPE_PAGE (page_get_type ())
#define PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE, Page))
#define PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE, PageClass))
#define IS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE))
#define IS_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE))
#define PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE, PageClass))

typedef struct _Page Page;
typedef struct _PageClass PageClass;

#define TYPE_APP_WINDOW (app_window_get_type ())
#define APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_APP_WINDOW, AppWindow))
#define APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_APP_WINDOW, AppWindowClass))
#define IS_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_APP_WINDOW))
#define IS_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_APP_WINDOW))
#define APP_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_APP_WINDOW, AppWindowClass))

typedef struct _AppWindow AppWindow;
typedef struct _AppWindowClass AppWindowClass;
typedef struct _AppWindowPrivate AppWindowPrivate;

#define TYPE_DIMENSIONS (dimensions_get_type ())
typedef struct _Dimensions Dimensions;

#define TYPE_LIBRARY_WINDOW (library_window_get_type ())
#define LIBRARY_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_WINDOW, LibraryWindow))
#define LIBRARY_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_WINDOW, LibraryWindowClass))
#define IS_LIBRARY_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_WINDOW))
#define IS_LIBRARY_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_WINDOW))
#define LIBRARY_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_WINDOW, LibraryWindowClass))

typedef struct _LibraryWindow LibraryWindow;
typedef struct _LibraryWindowClass LibraryWindowClass;
typedef struct _LibraryWindowPrivate LibraryWindowPrivate;

#define TYPE_ONE_SHOT_SCHEDULER (one_shot_scheduler_get_type ())
#define ONE_SHOT_SCHEDULER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ONE_SHOT_SCHEDULER, OneShotScheduler))
#define ONE_SHOT_SCHEDULER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ONE_SHOT_SCHEDULER, OneShotSchedulerClass))
#define IS_ONE_SHOT_SCHEDULER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ONE_SHOT_SCHEDULER))
#define IS_ONE_SHOT_SCHEDULER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ONE_SHOT_SCHEDULER))
#define ONE_SHOT_SCHEDULER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ONE_SHOT_SCHEDULER, OneShotSchedulerClass))

typedef struct _OneShotScheduler OneShotScheduler;
typedef struct _OneShotSchedulerClass OneShotSchedulerClass;

#define SIDEBAR_TYPE_TREE (sidebar_tree_get_type ())
#define SIDEBAR_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_TREE, SidebarTree))
#define SIDEBAR_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_TREE, SidebarTreeClass))
#define SIDEBAR_IS_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_TREE))
#define SIDEBAR_IS_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_TREE))
#define SIDEBAR_TREE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_TREE, SidebarTreeClass))

typedef struct _SidebarTree SidebarTree;
typedef struct _SidebarTreeClass SidebarTreeClass;

#define SIDEBAR_TYPE_BRANCH (sidebar_branch_get_type ())
#define SIDEBAR_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_BRANCH, SidebarBranch))
#define SIDEBAR_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_BRANCH, SidebarBranchClass))
#define SIDEBAR_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_BRANCH))
#define SIDEBAR_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_BRANCH))
#define SIDEBAR_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_BRANCH, SidebarBranchClass))

typedef struct _SidebarBranch SidebarBranch;
typedef struct _SidebarBranchClass SidebarBranchClass;

#define LIBRARY_TYPE_BRANCH (library_branch_get_type ())
#define LIBRARY_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_TYPE_BRANCH, LibraryBranch))
#define LIBRARY_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_TYPE_BRANCH, LibraryBranchClass))
#define LIBRARY_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_TYPE_BRANCH))
#define LIBRARY_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_TYPE_BRANCH))
#define LIBRARY_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_TYPE_BRANCH, LibraryBranchClass))

typedef struct _LibraryBranch LibraryBranch;
typedef struct _LibraryBranchClass LibraryBranchClass;

#define TAGS_TYPE_BRANCH (tags_branch_get_type ())
#define TAGS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TAGS_TYPE_BRANCH, TagsBranch))
#define TAGS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TAGS_TYPE_BRANCH, TagsBranchClass))
#define TAGS_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TAGS_TYPE_BRANCH))
#define TAGS_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TAGS_TYPE_BRANCH))
#define TAGS_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TAGS_TYPE_BRANCH, TagsBranchClass))

typedef struct _TagsBranch TagsBranch;
typedef struct _TagsBranchClass TagsBranchClass;

#define FOLDERS_TYPE_BRANCH (folders_branch_get_type ())
#define FOLDERS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLDERS_TYPE_BRANCH, FoldersBranch))
#define FOLDERS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLDERS_TYPE_BRANCH, FoldersBranchClass))
#define FOLDERS_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLDERS_TYPE_BRANCH))
#define FOLDERS_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLDERS_TYPE_BRANCH))
#define FOLDERS_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLDERS_TYPE_BRANCH, FoldersBranchClass))

typedef struct _FoldersBranch FoldersBranch;
typedef struct _FoldersBranchClass FoldersBranchClass;

#define EVENTS_TYPE_BRANCH (events_branch_get_type ())
#define EVENTS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENTS_TYPE_BRANCH, EventsBranch))
#define EVENTS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENTS_TYPE_BRANCH, EventsBranchClass))
#define EVENTS_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENTS_TYPE_BRANCH))
#define EVENTS_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENTS_TYPE_BRANCH))
#define EVENTS_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENTS_TYPE_BRANCH, EventsBranchClass))

typedef struct _EventsBranch EventsBranch;
typedef struct _EventsBranchClass EventsBranchClass;

#define CAMERA_TYPE_BRANCH (camera_branch_get_type ())
#define CAMERA_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CAMERA_TYPE_BRANCH, CameraBranch))
#define CAMERA_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CAMERA_TYPE_BRANCH, CameraBranchClass))
#define CAMERA_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CAMERA_TYPE_BRANCH))
#define CAMERA_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CAMERA_TYPE_BRANCH))
#define CAMERA_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CAMERA_TYPE_BRANCH, CameraBranchClass))

typedef struct _CameraBranch CameraBranch;
typedef struct _CameraBranchClass CameraBranchClass;

#define SEARCHES_TYPE_BRANCH (searches_branch_get_type ())
#define SEARCHES_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEARCHES_TYPE_BRANCH, SearchesBranch))
#define SEARCHES_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SEARCHES_TYPE_BRANCH, SearchesBranchClass))
#define SEARCHES_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SEARCHES_TYPE_BRANCH))
#define SEARCHES_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SEARCHES_TYPE_BRANCH))
#define SEARCHES_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SEARCHES_TYPE_BRANCH, SearchesBranchClass))

typedef struct _SearchesBranch SearchesBranch;
typedef struct _SearchesBranchClass SearchesBranchClass;

#define SIDEBAR_TYPE_ENTRY (sidebar_entry_get_type ())
#define SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_ENTRY, SidebarEntry))
#define SIDEBAR_IS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_ENTRY))
#define SIDEBAR_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_ENTRY, SidebarEntryIface))

typedef struct _SidebarEntry SidebarEntry;
typedef struct _SidebarEntryIface SidebarEntryIface;

#define TYPE_SINGLE_PHOTO_PAGE (single_photo_page_get_type ())
#define SINGLE_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SINGLE_PHOTO_PAGE, SinglePhotoPage))
#define SINGLE_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SINGLE_PHOTO_PAGE, SinglePhotoPageClass))
#define IS_SINGLE_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SINGLE_PHOTO_PAGE))
#define IS_SINGLE_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SINGLE_PHOTO_PAGE))
#define SINGLE_PHOTO_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SINGLE_PHOTO_PAGE, SinglePhotoPageClass))

typedef struct _SinglePhotoPage SinglePhotoPage;
typedef struct _SinglePhotoPageClass SinglePhotoPageClass;

#define TYPE_EDITING_HOST_PAGE (editing_host_page_get_type ())
#define EDITING_HOST_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EDITING_HOST_PAGE, EditingHostPage))
#define EDITING_HOST_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EDITING_HOST_PAGE, EditingHostPageClass))
#define IS_EDITING_HOST_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EDITING_HOST_PAGE))
#define IS_EDITING_HOST_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EDITING_HOST_PAGE))
#define EDITING_HOST_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EDITING_HOST_PAGE, EditingHostPageClass))

typedef struct _EditingHostPage EditingHostPage;
typedef struct _EditingHostPageClass EditingHostPageClass;

#define TYPE_LIBRARY_PHOTO_PAGE (library_photo_page_get_type ())
#define LIBRARY_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPage))
#define LIBRARY_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPageClass))
#define IS_LIBRARY_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_PHOTO_PAGE))
#define IS_LIBRARY_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_PHOTO_PAGE))
#define LIBRARY_PHOTO_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPageClass))

typedef struct _LibraryPhotoPage LibraryPhotoPage;
typedef struct _LibraryPhotoPageClass LibraryPhotoPageClass;

#define TYPE_SEARCH_FILTER_ACTIONS (search_filter_actions_get_type ())
#define SEARCH_FILTER_ACTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_FILTER_ACTIONS, SearchFilterActions))
#define SEARCH_FILTER_ACTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_FILTER_ACTIONS, SearchFilterActionsClass))
#define IS_SEARCH_FILTER_ACTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_FILTER_ACTIONS))
#define IS_SEARCH_FILTER_ACTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_FILTER_ACTIONS))
#define SEARCH_FILTER_ACTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_FILTER_ACTIONS, SearchFilterActionsClass))

typedef struct _SearchFilterActions SearchFilterActions;
typedef struct _SearchFilterActionsClass SearchFilterActionsClass;

#define TYPE_SEARCH_FILTER_TOOLBAR (search_filter_toolbar_get_type ())
#define SEARCH_FILTER_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_FILTER_TOOLBAR, SearchFilterToolbar))
#define SEARCH_FILTER_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_FILTER_TOOLBAR, SearchFilterToolbarClass))
#define IS_SEARCH_FILTER_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_FILTER_TOOLBAR))
#define IS_SEARCH_FILTER_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_FILTER_TOOLBAR))
#define SEARCH_FILTER_TOOLBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_FILTER_TOOLBAR, SearchFilterToolbarClass))

typedef struct _SearchFilterToolbar SearchFilterToolbar;
typedef struct _SearchFilterToolbarClass SearchFilterToolbarClass;

#define TYPE_PROPERTIES (properties_get_type ())
#define PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PROPERTIES, Properties))
#define PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PROPERTIES, PropertiesClass))
#define IS_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PROPERTIES))
#define IS_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PROPERTIES))
#define PROPERTIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PROPERTIES, PropertiesClass))

typedef struct _Properties Properties;
typedef struct _PropertiesClass PropertiesClass;

#define TYPE_BASIC_PROPERTIES (basic_properties_get_type ())
#define BASIC_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BASIC_PROPERTIES, BasicProperties))
#define BASIC_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BASIC_PROPERTIES, BasicPropertiesClass))
#define IS_BASIC_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BASIC_PROPERTIES))
#define IS_BASIC_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BASIC_PROPERTIES))
#define BASIC_PROPERTIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BASIC_PROPERTIES, BasicPropertiesClass))

typedef struct _BasicProperties BasicProperties;
typedef struct _BasicPropertiesClass BasicPropertiesClass;

#define TYPE_EXTENDED_PROPERTIES_WINDOW (extended_properties_window_get_type ())
#define EXTENDED_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EXTENDED_PROPERTIES_WINDOW, ExtendedPropertiesWindow))
#define EXTENDED_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EXTENDED_PROPERTIES_WINDOW, ExtendedPropertiesWindowClass))
#define IS_EXTENDED_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EXTENDED_PROPERTIES_WINDOW))
#define IS_EXTENDED_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EXTENDED_PROPERTIES_WINDOW))
#define EXTENDED_PROPERTIES_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EXTENDED_PROPERTIES_WINDOW, ExtendedPropertiesWindowClass))

typedef struct _ExtendedPropertiesWindow ExtendedPropertiesWindow;
typedef struct _ExtendedPropertiesWindowClass ExtendedPropertiesWindowClass;

#define SIDEBAR_TYPE_SELECTABLE_ENTRY (sidebar_selectable_entry_get_type ())
#define SIDEBAR_SELECTABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY, SidebarSelectableEntry))
#define SIDEBAR_IS_SELECTABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY))
#define SIDEBAR_SELECTABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY, SidebarSelectableEntryIface))

typedef struct _SidebarSelectableEntry SidebarSelectableEntry;
typedef struct _SidebarSelectableEntryIface SidebarSelectableEntryIface;

#define SIDEBAR_TYPE_PAGE_REPRESENTATIVE (sidebar_page_representative_get_type ())
#define SIDEBAR_PAGE_REPRESENTATIVE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative))
#define SIDEBAR_IS_PAGE_REPRESENTATIVE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE))
#define SIDEBAR_PAGE_REPRESENTATIVE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentativeIface))

typedef struct _SidebarPageRepresentative SidebarPageRepresentative;
typedef struct _SidebarPageRepresentativeIface SidebarPageRepresentativeIface;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define TYPE_DATA_COLLECTION (data_collection_get_type ())
#define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection))
#define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass))
#define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION))
#define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION))
#define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass))

typedef struct _DataCollection DataCollection;
typedef struct _DataCollectionClass DataCollectionClass;

#define TYPE_SOURCE_COLLECTION (source_collection_get_type ())
#define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection))
#define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
#define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION))
#define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION))
#define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass))

typedef struct _SourceCollection SourceCollection;
typedef struct _SourceCollectionClass SourceCollectionClass;

#define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ())
#define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection))
#define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
#define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION))
#define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION))
#define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))

typedef struct _DatabaseSourceCollection DatabaseSourceCollection;
typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass;

#define TYPE_MEDIA_SOURCE_COLLECTION (media_source_collection_get_type ())
#define MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection))
#define MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass))
#define IS_MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE_COLLECTION))
#define IS_MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE_COLLECTION))
#define MEDIA_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass))

typedef struct _MediaSourceCollection MediaSourceCollection;
typedef struct _MediaSourceCollectionClass MediaSourceCollectionClass;

#define TYPE_MEDIA_COLLECTION_REGISTRY (media_collection_registry_get_type ())
#define MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistry))
#define MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass))
#define IS_MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_COLLECTION_REGISTRY))
#define IS_MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_COLLECTION_REGISTRY))
#define MEDIA_COLLECTION_REGISTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass))

typedef struct _MediaCollectionRegistry MediaCollectionRegistry;
typedef struct _MediaCollectionRegistryClass MediaCollectionRegistryClass;
#define _media_collection_registry_unref0(var) ((var == NULL) ? NULL : (var = (media_collection_registry_unref (var), NULL)))

#define TYPE_DATA_OBJECT (data_object_get_type ())
#define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject))
#define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass))
#define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT))
#define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT))
#define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass))

typedef struct _DataObject DataObject;
typedef struct _DataObjectClass DataObjectClass;

#define TYPE_DATA_SOURCE (data_source_get_type ())
#define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource))
#define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass))
#define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE))
#define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE))
#define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass))

typedef struct _DataSource DataSource;
typedef struct _DataSourceClass DataSourceClass;

#define TYPE_THUMBNAIL_SOURCE (thumbnail_source_get_type ())
#define THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSource))
#define THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))
#define IS_THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_SOURCE))
#define IS_THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_SOURCE))
#define THUMBNAIL_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))

typedef struct _ThumbnailSource ThumbnailSource;
typedef struct _ThumbnailSourceClass ThumbnailSourceClass;

#define TYPE_MEDIA_SOURCE (media_source_get_type ())
#define MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE, MediaSource))
#define MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE, MediaSourceClass))
#define IS_MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE))
#define IS_MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE))
#define MEDIA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE, MediaSourceClass))

typedef struct _MediaSource MediaSource;
typedef struct _MediaSourceClass MediaSourceClass;

#define TYPE_ALTERATION (alteration_get_type ())
#define ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ALTERATION, Alteration))
#define ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ALTERATION, AlterationClass))
#define IS_ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ALTERATION))
#define IS_ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ALTERATION))
#define ALTERATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ALTERATION, AlterationClass))

typedef struct _Alteration Alteration;
typedef struct _AlterationClass AlterationClass;
#define _data_collection_unref0(var) ((var == NULL) ? NULL : (var = (data_collection_unref (var), NULL)))

#define TYPE_METADATA_WRITER (metadata_writer_get_type ())
#define METADATA_WRITER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_METADATA_WRITER, MetadataWriter))
#define METADATA_WRITER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_METADATA_WRITER, MetadataWriterClass))
#define IS_METADATA_WRITER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_METADATA_WRITER))
#define IS_METADATA_WRITER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_METADATA_WRITER))
#define METADATA_WRITER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_METADATA_WRITER, MetadataWriterClass))

typedef struct _MetadataWriter MetadataWriter;
typedef struct _MetadataWriterClass MetadataWriterClass;

#define TYPE_DIRECTORY_MONITOR (directory_monitor_get_type ())
#define DIRECTORY_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DIRECTORY_MONITOR, DirectoryMonitor))
#define DIRECTORY_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DIRECTORY_MONITOR, DirectoryMonitorClass))
#define IS_DIRECTORY_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DIRECTORY_MONITOR))
#define IS_DIRECTORY_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DIRECTORY_MONITOR))
#define DIRECTORY_MONITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DIRECTORY_MONITOR, DirectoryMonitorClass))

typedef struct _DirectoryMonitor DirectoryMonitor;
typedef struct _DirectoryMonitorClass DirectoryMonitorClass;

#define TYPE_LIBRARY_MONITOR (library_monitor_get_type ())
#define LIBRARY_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_MONITOR, LibraryMonitor))
#define LIBRARY_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_MONITOR, LibraryMonitorClass))
#define IS_LIBRARY_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_MONITOR))
#define IS_LIBRARY_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_MONITOR))
#define LIBRARY_MONITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_MONITOR, LibraryMonitorClass))

typedef struct _LibraryMonitor LibraryMonitor;
typedef struct _LibraryMonitorClass LibraryMonitorClass;

#define TYPE_LIBRARY_MONITOR_POOL (library_monitor_pool_get_type ())
#define LIBRARY_MONITOR_POOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_MONITOR_POOL, LibraryMonitorPool))
#define LIBRARY_MONITOR_POOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_MONITOR_POOL, LibraryMonitorPoolClass))
#define IS_LIBRARY_MONITOR_POOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_MONITOR_POOL))
#define IS_LIBRARY_MONITOR_POOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_MONITOR_POOL))
#define LIBRARY_MONITOR_POOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_MONITOR_POOL, LibraryMonitorPoolClass))

typedef struct _LibraryMonitorPool LibraryMonitorPool;
typedef struct _LibraryMonitorPoolClass LibraryMonitorPoolClass;
#define _library_monitor_pool_unref0(var) ((var == NULL) ? NULL : (var = (library_monitor_pool_unref (var), NULL)))

#define TYPE_CAMERA_TABLE (camera_table_get_type ())
#define CAMERA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CAMERA_TABLE, CameraTable))
#define CAMERA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CAMERA_TABLE, CameraTableClass))
#define IS_CAMERA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CAMERA_TABLE))
#define IS_CAMERA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CAMERA_TABLE))
#define CAMERA_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CAMERA_TABLE, CameraTableClass))

typedef struct _CameraTable CameraTable;
typedef struct _CameraTableClass CameraTableClass;

#define TYPE_DISCOVERED_CAMERA (discovered_camera_get_type ())
#define DISCOVERED_CAMERA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DISCOVERED_CAMERA, DiscoveredCamera))
#define DISCOVERED_CAMERA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DISCOVERED_CAMERA, DiscoveredCameraClass))
#define IS_DISCOVERED_CAMERA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DISCOVERED_CAMERA))
#define IS_DISCOVERED_CAMERA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DISCOVERED_CAMERA))
#define DISCOVERED_CAMERA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DISCOVERED_CAMERA, DiscoveredCameraClass))

typedef struct _DiscoveredCamera DiscoveredCamera;
typedef struct _DiscoveredCameraClass DiscoveredCameraClass;
#define _camera_table_unref0(var) ((var == NULL) ? NULL : (var = (camera_table_unref (var), NULL)))

#define LIBRARY_WINDOW_TYPE_SIDEBAR_ROOT_POSITION (library_window_sidebar_root_position_get_type ())

#define LIBRARY_WINDOW_TYPE_TARGET_TYPE (library_window_target_type_get_type ())
#define _g_free0(var) (var = (g_free (var), NULL))
#define _one_shot_scheduler_unref0(var) ((var == NULL) ? NULL : (var = (one_shot_scheduler_unref (var), NULL)))
#define _search_filter_actions_unref0(var) ((var == NULL) ? NULL : (var = (search_filter_actions_unref (var), NULL)))

#define SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY (sidebar_simple_page_entry_get_type ())
#define SIDEBAR_SIMPLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntry))
#define SIDEBAR_SIMPLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntryClass))
#define SIDEBAR_IS_SIMPLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY))
#define SIDEBAR_IS_SIMPLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY))
#define SIDEBAR_SIMPLE_PAGE_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntryClass))

typedef struct _SidebarSimplePageEntry SidebarSimplePageEntry;
typedef struct _SidebarSimplePageEntryClass SidebarSimplePageEntryClass;

#define LIBRARY_TYPE_PHOTOS_ENTRY (library_photos_entry_get_type ())
#define LIBRARY_PHOTOS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_TYPE_PHOTOS_ENTRY, LibraryPhotosEntry))
#define LIBRARY_PHOTOS_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_TYPE_PHOTOS_ENTRY, LibraryPhotosEntryClass))
#define LIBRARY_IS_PHOTOS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_TYPE_PHOTOS_ENTRY))
#define LIBRARY_IS_PHOTOS_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_TYPE_PHOTOS_ENTRY))
#define LIBRARY_PHOTOS_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_TYPE_PHOTOS_ENTRY, LibraryPhotosEntryClass))

typedef struct _LibraryPhotosEntry LibraryPhotosEntry;
typedef struct _LibraryPhotosEntryClass LibraryPhotosEntryClass;

#define TYPE_CONFIGURATION_FACADE (configuration_facade_get_type ())
#define CONFIGURATION_FACADE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONFIGURATION_FACADE, ConfigurationFacade))
#define CONFIGURATION_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONFIGURATION_FACADE, ConfigurationFacadeClass))
#define IS_CONFIGURATION_FACADE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONFIGURATION_FACADE))
#define IS_CONFIGURATION_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONFIGURATION_FACADE))
#define CONFIGURATION_FACADE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONFIGURATION_FACADE, ConfigurationFacadeClass))

typedef struct _ConfigurationFacade ConfigurationFacade;
typedef struct _ConfigurationFacadeClass ConfigurationFacadeClass;

#define CONFIG_TYPE_FACADE (config_facade_get_type ())
#define CONFIG_FACADE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CONFIG_TYPE_FACADE, ConfigFacade))
#define CONFIG_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CONFIG_TYPE_FACADE, ConfigFacadeClass))
#define CONFIG_IS_FACADE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CONFIG_TYPE_FACADE))
#define CONFIG_IS_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CONFIG_TYPE_FACADE))
#define CONFIG_FACADE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CONFIG_TYPE_FACADE, ConfigFacadeClass))

typedef struct _ConfigFacade ConfigFacade;
typedef struct _ConfigFacadeClass ConfigFacadeClass;
#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))

#define TYPE_VIEW_COLLECTION (view_collection_get_type ())
#define VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_COLLECTION, ViewCollection))
#define VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_COLLECTION, ViewCollectionClass))
#define IS_VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_COLLECTION))
#define IS_VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_COLLECTION))
#define VIEW_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_COLLECTION, ViewCollectionClass))

typedef struct _ViewCollection ViewCollection;
typedef struct _ViewCollectionClass ViewCollectionClass;

#define TYPE_VIEW_FILTER (view_filter_get_type ())
#define VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_FILTER, ViewFilter))
#define VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_FILTER, ViewFilterClass))
#define IS_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_FILTER))
#define IS_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_FILTER))
#define VIEW_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_FILTER, ViewFilterClass))

typedef struct _ViewFilter ViewFilter;
typedef struct _ViewFilterClass ViewFilterClass;

#define TYPE_CHECKERBOARD_PAGE (checkerboard_page_get_type ())
#define CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPage))
#define CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))
#define IS_CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CHECKERBOARD_PAGE))
#define IS_CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CHECKERBOARD_PAGE))
#define CHECKERBOARD_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))

typedef struct _CheckerboardPage CheckerboardPage;
typedef struct _CheckerboardPageClass CheckerboardPageClass;

#define TYPE_TAG (tag_get_type ())
#define TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG, Tag))
#define TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG, TagClass))
#define IS_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG))
#define IS_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG))
#define TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG, TagClass))

typedef struct _Tag Tag;
typedef struct _TagClass TagClass;

#define TAGS_TYPE_SIDEBAR_ENTRY (tags_sidebar_entry_get_type ())
#define TAGS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry))
#define TAGS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntryClass))
#define TAGS_IS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TAGS_TYPE_SIDEBAR_ENTRY))
#define TAGS_IS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TAGS_TYPE_SIDEBAR_ENTRY))
#define TAGS_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntryClass))

typedef struct _TagsSidebarEntry TagsSidebarEntry;
typedef struct _TagsSidebarEntryClass TagsSidebarEntryClass;

#define TYPE_EVENT_SOURCE (event_source_get_type ())
#define EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_SOURCE, EventSource))
#define EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_SOURCE, EventSourceClass))
#define IS_EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_SOURCE))
#define IS_EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_SOURCE))
#define EVENT_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_SOURCE, EventSourceClass))

typedef struct _EventSource EventSource;
typedef struct _EventSourceClass EventSourceClass;

#define TYPE_EVENT (event_get_type ())
#define EVENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT, Event))
#define EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT, EventClass))
#define IS_EVENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT))
#define IS_EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT))
#define EVENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT, EventClass))

typedef struct _Event Event;
typedef struct _EventClass EventClass;

#define EVENTS_TYPE_EVENT_ENTRY (events_event_entry_get_type ())
#define EVENTS_EVENT_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENTS_TYPE_EVENT_ENTRY, EventsEventEntry))
#define EVENTS_EVENT_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENTS_TYPE_EVENT_ENTRY, EventsEventEntryClass))
#define EVENTS_IS_EVENT_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENTS_TYPE_EVENT_ENTRY))
#define EVENTS_IS_EVENT_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENTS_TYPE_EVENT_ENTRY))
#define EVENTS_EVENT_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENTS_TYPE_EVENT_ENTRY, EventsEventEntryClass))

typedef struct _EventsEventEntry EventsEventEntry;
typedef struct _EventsEventEntryClass EventsEventEntryClass;

#define TYPE_SAVED_SEARCH (saved_search_get_type ())
#define SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH, SavedSearch))
#define SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH, SavedSearchClass))
#define IS_SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH))
#define IS_SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH))
#define SAVED_SEARCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH, SavedSearchClass))

typedef struct _SavedSearch SavedSearch;
typedef struct _SavedSearchClass SavedSearchClass;

#define SEARCHES_TYPE_SIDEBAR_ENTRY (searches_sidebar_entry_get_type ())
#define SEARCHES_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry))
#define SEARCHES_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntryClass))
#define SEARCHES_IS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY))
#define SEARCHES_IS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SEARCHES_TYPE_SIDEBAR_ENTRY))
#define SEARCHES_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntryClass))

typedef struct _SearchesSidebarEntry SearchesSidebarEntry;
typedef struct _SearchesSidebarEntryClass SearchesSidebarEntryClass;

#define TYPE_MEDIA_PAGE (media_page_get_type ())
#define MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_PAGE, MediaPage))
#define MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_PAGE, MediaPageClass))
#define IS_MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_PAGE))
#define IS_MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_PAGE))
#define MEDIA_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_PAGE, MediaPageClass))

typedef struct _MediaPage MediaPage;
typedef struct _MediaPageClass MediaPageClass;

#define TYPE_COLLECTION_PAGE (collection_page_get_type ())
#define COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COLLECTION_PAGE, CollectionPage))
#define COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COLLECTION_PAGE, CollectionPageClass))
#define IS_COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COLLECTION_PAGE))
#define IS_COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COLLECTION_PAGE))
#define COLLECTION_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COLLECTION_PAGE, CollectionPageClass))

typedef struct _CollectionPage CollectionPage;
typedef struct _CollectionPageClass CollectionPageClass;

#define TYPE_PHOTO_SOURCE (photo_source_get_type ())
#define PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO_SOURCE, PhotoSource))
#define PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO_SOURCE, PhotoSourceClass))
#define IS_PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO_SOURCE))
#define IS_PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO_SOURCE))
#define PHOTO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO_SOURCE, PhotoSourceClass))

typedef struct _PhotoSource PhotoSource;
typedef struct _PhotoSourceClass PhotoSourceClass;

#define TYPE_PHOTO (photo_get_type ())
#define PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO, Photo))
#define PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO, PhotoClass))
#define IS_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO))
#define IS_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO))
#define PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO, PhotoClass))

typedef struct _Photo Photo;
typedef struct _PhotoClass PhotoClass;

#define TYPE_LIBRARY_PHOTO (library_photo_get_type ())
#define LIBRARY_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_PHOTO, LibraryPhoto))
#define LIBRARY_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_PHOTO, LibraryPhotoClass))
#define IS_LIBRARY_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_PHOTO))
#define IS_LIBRARY_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_PHOTO))
#define LIBRARY_PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_PHOTO, LibraryPhotoClass))

typedef struct _LibraryPhoto LibraryPhoto;
typedef struct _LibraryPhotoClass LibraryPhotoClass;

#define TYPE_EVENTS_DIRECTORY_PAGE (events_directory_page_get_type ())
#define EVENTS_DIRECTORY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENTS_DIRECTORY_PAGE, EventsDirectoryPage))
#define EVENTS_DIRECTORY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENTS_DIRECTORY_PAGE, EventsDirectoryPageClass))
#define IS_EVENTS_DIRECTORY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENTS_DIRECTORY_PAGE))
#define IS_EVENTS_DIRECTORY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENTS_DIRECTORY_PAGE))
#define EVENTS_DIRECTORY_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENTS_DIRECTORY_PAGE, EventsDirectoryPageClass))

typedef struct _EventsDirectoryPage EventsDirectoryPage;
typedef struct _EventsDirectoryPageClass EventsDirectoryPageClass;

#define TYPE_DATA_VIEW (data_view_get_type ())
#define DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_VIEW, DataView))
#define DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_VIEW, DataViewClass))
#define IS_DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_VIEW))
#define IS_DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_VIEW))
#define DATA_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_VIEW, DataViewClass))

typedef struct _DataView DataView;
typedef struct _DataViewClass DataViewClass;

#define TYPE_EVENT_PAGE (event_page_get_type ())
#define EVENT_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_PAGE, EventPage))
#define EVENT_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_PAGE, EventPageClass))
#define IS_EVENT_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_PAGE))
#define IS_EVENT_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_PAGE))
#define EVENT_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_PAGE, EventPageClass))

typedef struct _EventPage EventPage;
typedef struct _EventPageClass EventPageClass;

#define LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE (library_window_fullscreen_photo_page_get_type ())
#define LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPage))
#define LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPageClass))
#define LIBRARY_WINDOW_IS_FULLSCREEN_PHOTO_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE))
#define LIBRARY_WINDOW_IS_FULLSCREEN_PHOTO_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE))
#define LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPageClass))

typedef struct _LibraryWindowFullscreenPhotoPage LibraryWindowFullscreenPhotoPage;
typedef struct _LibraryWindowFullscreenPhotoPageClass LibraryWindowFullscreenPhotoPageClass;
#define __g_slist_free__g_free0_0(var) ((var == NULL) ? NULL : (var = (_g_slist_free__g_free0_ (var), NULL)))

#define DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG (data_imports_ui_data_imports_dialog_get_type ())
#define DATA_IMPORTS_UI_DATA_IMPORTS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG, DataImportsUIDataImportsDialog))
#define DATA_IMPORTS_UI_DATA_IMPORTS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG, DataImportsUIDataImportsDialogClass))
#define DATA_IMPORTS_UI_IS_DATA_IMPORTS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG))
#define DATA_IMPORTS_UI_IS_DATA_IMPORTS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG))
#define DATA_IMPORTS_UI_DATA_IMPORTS_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_UI_TYPE_DATA_IMPORTS_DIALOG, DataImportsUIDataImportsDialogClass))

typedef struct _DataImportsUIDataImportsDialog DataImportsUIDataImportsDialog;
typedef struct _DataImportsUIDataImportsDialogClass DataImportsUIDataImportsDialogClass;

#define TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION (library_photo_source_collection_get_type ())
#define LIBRARY_PHOTO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollection))
#define LIBRARY_PHOTO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollectionClass))
#define IS_LIBRARY_PHOTO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION))
#define IS_LIBRARY_PHOTO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION))
#define LIBRARY_PHOTO_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollectionClass))

typedef struct _LibraryPhotoSourceCollection LibraryPhotoSourceCollection;
typedef struct _LibraryPhotoSourceCollectionClass LibraryPhotoSourceCollectionClass;

#define TYPE_VIDEO_SOURCE_COLLECTION (video_source_collection_get_type ())
#define VIDEO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollection))
#define VIDEO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollectionClass))
#define IS_VIDEO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_SOURCE_COLLECTION))
#define IS_VIDEO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_SOURCE_COLLECTION))
#define VIDEO_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollectionClass))

typedef struct _VideoSourceCollection VideoSourceCollection;
typedef struct _VideoSourceCollectionClass VideoSourceCollectionClass;

#define TYPE_COMMAND_MANAGER (command_manager_get_type ())
#define COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COMMAND_MANAGER, CommandManager))
#define COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COMMAND_MANAGER, CommandManagerClass))
#define IS_COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COMMAND_MANAGER))
#define IS_COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COMMAND_MANAGER))
#define COMMAND_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COMMAND_MANAGER, CommandManagerClass))

typedef struct _CommandManager CommandManager;
typedef struct _CommandManagerClass CommandManagerClass;
#define _command_manager_unref0(var) ((var == NULL) ? NULL : (var = (command_manager_unref (var), NULL)))

#define TYPE_SAVED_SEARCH_DIALOG (saved_search_dialog_get_type ())
#define SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialog))
#define SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass))
#define IS_SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_DIALOG))
#define IS_SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_DIALOG))
#define SAVED_SEARCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass))

typedef struct _SavedSearchDialog SavedSearchDialog;
typedef struct _SavedSearchDialogClass SavedSearchDialogClass;
#define _saved_search_dialog_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_dialog_unref (var), NULL)))

#define TYPE_BATCH_IMPORT (batch_import_get_type ())
#define BATCH_IMPORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BATCH_IMPORT, BatchImport))
#define BATCH_IMPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BATCH_IMPORT, BatchImportClass))
#define IS_BATCH_IMPORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BATCH_IMPORT))
#define IS_BATCH_IMPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BATCH_IMPORT))
#define BATCH_IMPORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BATCH_IMPORT, BatchImportClass))

typedef struct _BatchImport BatchImport;
typedef struct _BatchImportClass BatchImportClass;

#define LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY (library_hideable_page_entry_get_type ())
#define LIBRARY_HIDEABLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY, LibraryHideablePageEntry))
#define LIBRARY_HIDEABLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY, LibraryHideablePageEntryClass))
#define LIBRARY_IS_HIDEABLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY))
#define LIBRARY_IS_HIDEABLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY))
#define LIBRARY_HIDEABLE_PAGE_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY, LibraryHideablePageEntryClass))

typedef struct _LibraryHideablePageEntry LibraryHideablePageEntry;
typedef struct _LibraryHideablePageEntryClass LibraryHideablePageEntryClass;

#define LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY (library_import_queue_sidebar_entry_get_type ())
#define LIBRARY_IMPORT_QUEUE_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY, LibraryImportQueueSidebarEntry))
#define LIBRARY_IMPORT_QUEUE_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY, LibraryImportQueueSidebarEntryClass))
#define LIBRARY_IS_IMPORT_QUEUE_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY))
#define LIBRARY_IS_IMPORT_QUEUE_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY))
#define LIBRARY_IMPORT_QUEUE_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY, LibraryImportQueueSidebarEntryClass))

typedef struct _LibraryImportQueueSidebarEntry LibraryImportQueueSidebarEntry;
typedef struct _LibraryImportQueueSidebarEntryClass LibraryImportQueueSidebarEntryClass;

#define TYPE_IMPORT_MANIFEST (import_manifest_get_type ())
#define IMPORT_MANIFEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IMPORT_MANIFEST, ImportManifest))
#define IMPORT_MANIFEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IMPORT_MANIFEST, ImportManifestClass))
#define IS_IMPORT_MANIFEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IMPORT_MANIFEST))
#define IS_IMPORT_MANIFEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IMPORT_MANIFEST))
#define IMPORT_MANIFEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IMPORT_MANIFEST, ImportManifestClass))

typedef struct _ImportManifest ImportManifest;
typedef struct _ImportManifestClass ImportManifestClass;

#define IMPORT_UI_TYPE_QUESTION_PARAMS (import_ui_question_params_get_type ())
#define IMPORT_UI_QUESTION_PARAMS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), IMPORT_UI_TYPE_QUESTION_PARAMS, ImportUIQuestionParams))
#define IMPORT_UI_QUESTION_PARAMS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), IMPORT_UI_TYPE_QUESTION_PARAMS, ImportUIQuestionParamsClass))
#define IMPORT_UI_IS_QUESTION_PARAMS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), IMPORT_UI_TYPE_QUESTION_PARAMS))
#define IMPORT_UI_IS_QUESTION_PARAMS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), IMPORT_UI_TYPE_QUESTION_PARAMS))
#define IMPORT_UI_QUESTION_PARAMS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), IMPORT_UI_TYPE_QUESTION_PARAMS, ImportUIQuestionParamsClass))

typedef struct _ImportUIQuestionParams ImportUIQuestionParams;
typedef struct _ImportUIQuestionParamsClass ImportUIQuestionParamsClass;

#define TYPE_BATCH_IMPORT_JOB (batch_import_job_get_type ())
#define BATCH_IMPORT_JOB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BATCH_IMPORT_JOB, BatchImportJob))
#define BATCH_IMPORT_JOB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BATCH_IMPORT_JOB, BatchImportJobClass))
#define IS_BATCH_IMPORT_JOB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BATCH_IMPORT_JOB))
#define IS_BATCH_IMPORT_JOB_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BATCH_IMPORT_JOB))
#define BATCH_IMPORT_JOB_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BATCH_IMPORT_JOB, BatchImportJobClass))

typedef struct _BatchImportJob BatchImportJob;
typedef struct _BatchImportJobClass BatchImportJobClass;

#define TYPE_FILE_IMPORT_JOB (file_import_job_get_type ())
#define FILE_IMPORT_JOB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FILE_IMPORT_JOB, FileImportJob))
#define FILE_IMPORT_JOB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_FILE_IMPORT_JOB, FileImportJobClass))
#define IS_FILE_IMPORT_JOB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FILE_IMPORT_JOB))
#define IS_FILE_IMPORT_JOB_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_FILE_IMPORT_JOB))
#define FILE_IMPORT_JOB_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_FILE_IMPORT_JOB, FileImportJobClass))

typedef struct _FileImportJob FileImportJob;
typedef struct _FileImportJobClass FileImportJobClass;
#define _batch_import_job_unref0(var) ((var == NULL) ? NULL : (var = (batch_import_job_unref (var), NULL)))

#define TYPE_BATCH_IMPORT_ROLL (batch_import_roll_get_type ())
#define BATCH_IMPORT_ROLL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BATCH_IMPORT_ROLL, BatchImportRoll))
#define BATCH_IMPORT_ROLL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BATCH_IMPORT_ROLL, BatchImportRollClass))
#define IS_BATCH_IMPORT_ROLL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BATCH_IMPORT_ROLL))
#define IS_BATCH_IMPORT_ROLL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BATCH_IMPORT_ROLL))
#define BATCH_IMPORT_ROLL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BATCH_IMPORT_ROLL, BatchImportRollClass))

typedef struct _BatchImportRoll BatchImportRoll;
typedef struct _BatchImportRollClass BatchImportRollClass;

#define CAMERA_TYPE_SIDEBAR_ENTRY (camera_sidebar_entry_get_type ())
#define CAMERA_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CAMERA_TYPE_SIDEBAR_ENTRY, CameraSidebarEntry))
#define CAMERA_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CAMERA_TYPE_SIDEBAR_ENTRY, CameraSidebarEntryClass))
#define CAMERA_IS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CAMERA_TYPE_SIDEBAR_ENTRY))
#define CAMERA_IS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CAMERA_TYPE_SIDEBAR_ENTRY))
#define CAMERA_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CAMERA_TYPE_SIDEBAR_ENTRY, CameraSidebarEntryClass))

typedef struct _CameraSidebarEntry CameraSidebarEntry;
typedef struct _CameraSidebarEntryClass CameraSidebarEntryClass;

#define TYPE_IMPORT_PAGE (import_page_get_type ())
#define IMPORT_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IMPORT_PAGE, ImportPage))
#define IMPORT_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IMPORT_PAGE, ImportPageClass))
#define IS_IMPORT_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IMPORT_PAGE))
#define IS_IMPORT_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IMPORT_PAGE))
#define IMPORT_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IMPORT_PAGE, ImportPageClass))

typedef struct _ImportPage ImportPage;
typedef struct _ImportPageClass ImportPageClass;
typedef struct _DiscoveredCameraPrivate DiscoveredCameraPrivate;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

#define SIDEBAR_TYPE_EXPANDABLE_ENTRY (sidebar_expandable_entry_get_type ())
#define SIDEBAR_EXPANDABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY, SidebarExpandableEntry))
#define SIDEBAR_IS_EXPANDABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY))
#define SIDEBAR_EXPANDABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY, SidebarExpandableEntryIface))

typedef struct _SidebarExpandableEntry SidebarExpandableEntry;
typedef struct _SidebarExpandableEntryIface SidebarExpandableEntryIface;

#define TYPE_SEARCH_VIEW_FILTER (search_view_filter_get_type ())
#define SEARCH_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_VIEW_FILTER, SearchViewFilter))
#define SEARCH_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_VIEW_FILTER, SearchViewFilterClass))
#define IS_SEARCH_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_VIEW_FILTER))
#define IS_SEARCH_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_VIEW_FILTER))
#define SEARCH_VIEW_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_VIEW_FILTER, SearchViewFilterClass))

typedef struct _SearchViewFilter SearchViewFilter;
typedef struct _SearchViewFilterClass SearchViewFilterClass;
#define _view_filter_unref0(var) ((var == NULL) ? NULL : (var = (view_filter_unref (var), NULL)))

#define TYPE_DISABLED_VIEW_FILTER (disabled_view_filter_get_type ())
#define DISABLED_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DISABLED_VIEW_FILTER, DisabledViewFilter))
#define DISABLED_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DISABLED_VIEW_FILTER, DisabledViewFilterClass))
#define IS_DISABLED_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DISABLED_VIEW_FILTER))
#define IS_DISABLED_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DISABLED_VIEW_FILTER))
#define DISABLED_VIEW_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DISABLED_VIEW_FILTER, DisabledViewFilterClass))

typedef struct _DisabledViewFilter DisabledViewFilter;
typedef struct _DisabledViewFilterClass DisabledViewFilterClass;

#define LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY (library_last_import_sidebar_entry_get_type ())
#define LIBRARY_LAST_IMPORT_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY, LibraryLastImportSidebarEntry))
#define LIBRARY_LAST_IMPORT_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY, LibraryLastImportSidebarEntryClass))
#define LIBRARY_IS_LAST_IMPORT_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY))
#define LIBRARY_IS_LAST_IMPORT_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY))
#define LIBRARY_LAST_IMPORT_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LIBRARY_TYPE_LAST_IMPORT_SIDEBAR_ENTRY, LibraryLastImportSidebarEntryClass))

typedef struct _LibraryLastImportSidebarEntry LibraryLastImportSidebarEntry;
typedef struct _LibraryLastImportSidebarEntryClass LibraryLastImportSidebarEntryClass;

#define EVENTS_TYPE_DIRECTORY_ENTRY (events_directory_entry_get_type ())
#define EVENTS_DIRECTORY_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENTS_TYPE_DIRECTORY_ENTRY, EventsDirectoryEntry))
#define EVENTS_DIRECTORY_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENTS_TYPE_DIRECTORY_ENTRY, EventsDirectoryEntryClass))
#define EVENTS_IS_DIRECTORY_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENTS_TYPE_DIRECTORY_ENTRY))
#define EVENTS_IS_DIRECTORY_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENTS_TYPE_DIRECTORY_ENTRY))
#define EVENTS_DIRECTORY_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENTS_TYPE_DIRECTORY_ENTRY, EventsDirectoryEntryClass))

typedef struct _EventsDirectoryEntry EventsDirectoryEntry;
typedef struct _EventsDirectoryEntryClass EventsDirectoryEntryClass;

#define EVENTS_TYPE_MASTER_DIRECTORY_ENTRY (events_master_directory_entry_get_type ())
#define EVENTS_MASTER_DIRECTORY_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENTS_TYPE_MASTER_DIRECTORY_ENTRY, EventsMasterDirectoryEntry))
#define EVENTS_MASTER_DIRECTORY_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENTS_TYPE_MASTER_DIRECTORY_ENTRY, EventsMasterDirectoryEntryClass))
#define EVENTS_IS_MASTER_DIRECTORY_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENTS_TYPE_MASTER_DIRECTORY_ENTRY))
#define EVENTS_IS_MASTER_DIRECTORY_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENTS_TYPE_MASTER_DIRECTORY_ENTRY))
#define EVENTS_MASTER_DIRECTORY_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENTS_TYPE_MASTER_DIRECTORY_ENTRY, EventsMasterDirectoryEntryClass))

typedef struct _EventsMasterDirectoryEntry EventsMasterDirectoryEntry;
typedef struct _EventsMasterDirectoryEntryClass EventsMasterDirectoryEntryClass;
#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
typedef struct _PagePrivate PagePrivate;

#define TYPE_FULLSCREEN_WINDOW (fullscreen_window_get_type ())
#define FULLSCREEN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FULLSCREEN_WINDOW, FullscreenWindow))
#define FULLSCREEN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_FULLSCREEN_WINDOW, FullscreenWindowClass))
#define IS_FULLSCREEN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FULLSCREEN_WINDOW))
#define IS_FULLSCREEN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_FULLSCREEN_WINDOW))
#define FULLSCREEN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_FULLSCREEN_WINDOW, FullscreenWindowClass))

typedef struct _FullscreenWindow FullscreenWindow;
typedef struct _FullscreenWindowClass FullscreenWindowClass;

#define TYPE_INJECTION_GROUP (injection_group_get_type ())
#define INJECTION_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INJECTION_GROUP, InjectionGroup))
#define INJECTION_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INJECTION_GROUP, InjectionGroupClass))
#define IS_INJECTION_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INJECTION_GROUP))
#define IS_INJECTION_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INJECTION_GROUP))
#define INJECTION_GROUP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INJECTION_GROUP, InjectionGroupClass))

typedef struct _InjectionGroup InjectionGroup;
typedef struct _InjectionGroupClass InjectionGroupClass;
typedef struct _SinglePhotoPagePrivate SinglePhotoPagePrivate;

#define TYPE_ZOOM_BUFFER (zoom_buffer_get_type ())
#define ZOOM_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ZOOM_BUFFER, ZoomBuffer))
#define ZOOM_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ZOOM_BUFFER, ZoomBufferClass))
#define IS_ZOOM_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ZOOM_BUFFER))
#define IS_ZOOM_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ZOOM_BUFFER))
#define ZOOM_BUFFER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ZOOM_BUFFER, ZoomBufferClass))

typedef struct _ZoomBuffer ZoomBuffer;
typedef struct _ZoomBufferClass ZoomBufferClass;

#define SINGLE_PHOTO_PAGE_TYPE_UPDATE_REASON (single_photo_page_update_reason_get_type ())
typedef struct _EditingHostPagePrivate EditingHostPagePrivate;
typedef struct _LibraryPhotoPagePrivate LibraryPhotoPagePrivate;

#define TYPE_RAW_DEVELOPER (raw_developer_get_type ())
typedef struct _LibraryWindowFullscreenPhotoPagePrivate LibraryWindowFullscreenPhotoPagePrivate;
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _PageWindow {
	GtkApplicationWindow parent_instance;
	PageWindowPrivate * priv;
};

struct _PageWindowClass {
	GtkApplicationWindowClass parent_class;
	void (*switched_pages) (PageWindow* self, Page* old_page, Page* new_page);
	void (*set_current_page) (PageWindow* self, Page* page);
	void (*clear_current_page) (PageWindow* self);
};

struct _Dimensions {
	gint width;
	gint height;
};

struct _AppWindow {
	PageWindow parent_instance;
	AppWindowPrivate * priv;
	gboolean maximized;
	Dimensions dimensions;
	gint pos_x;
	gint pos_y;
};

struct _AppWindowClass {
	PageWindowClass parent_class;
	void (*on_fullscreen) (AppWindow* self);
	gchar* (*get_app_role) (AppWindow* self);
	void (*on_quit) (AppWindow* self);
	void (*add_actions) (AppWindow* self);
	void (*update_common_action_availability) (AppWindow* self, Page* old_page, Page* new_page);
	void (*update_common_actions) (AppWindow* self, Page* page, gint selected_count, gint count);
};

struct _LibraryWindow {
	AppWindow parent_instance;
	LibraryWindowPrivate * priv;
};

struct _LibraryWindowClass {
	AppWindowClass parent_class;
};

struct _SidebarEntryIface {
	GTypeInterface parent_iface;
	gchar* (*get_sidebar_name) (SidebarEntry* self);
	gchar* (*get_sidebar_tooltip) (SidebarEntry* self);
	gchar* (*get_sidebar_icon) (SidebarEntry* self);
	gchar* (*to_string) (SidebarEntry* self);
	void (*grafted) (SidebarEntry* self, SidebarTree* tree);
	void (*pruned) (SidebarEntry* self, SidebarTree* tree);
};

struct _LibraryWindowPrivate {
	gchar* import_dir;
	gboolean import_recursive;
	GtkPaned* sidebar_paned;
	GtkPaned* client_paned;
	GtkFrame* bottom_frame;
	OneShotScheduler* properties_scheduler;
	gboolean notify_library_is_home_dir;
	SidebarTree* sidebar_tree;
	LibraryBranch* library_branch;
	TagsBranch* tags_branch;
	FoldersBranch* folders_branch;
	EventsBranch* events_branch;
	CameraBranch* camera_branch;
	SearchesBranch* saved_search_branch;
	gboolean page_switching_enabled;
	GeeHashMap* page_map;
	LibraryPhotoPage* photo_page;
	gboolean is_search_toolbar_visible;
	SearchFilterActions* search_actions;
	SearchFilterToolbar* search_toolbar;
	GtkBox* top_section;
	GtkFrame* background_progress_frame;
	GtkProgressBar* background_progress_bar;
	gboolean background_progress_displayed;
	BasicProperties* basic_properties;
	ExtendedPropertiesWindow* extended_properties;
	GtkStack* stack;
	GtkBox* layout;
	GtkBox* right_vbox;
	GtkRevealer* toolbar_revealer;
	gint current_progress_priority;
	guint background_progress_pulse_id;
};

struct _SidebarSelectableEntryIface {
	GTypeInterface parent_iface;
};

struct _SidebarPageRepresentativeIface {
	GTypeInterface parent_iface;
	gboolean (*has_page) (SidebarPageRepresentative* self);
	Page* (*get_page) (SidebarPageRepresentative* self);
};

typedef enum  {
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_LIBRARY,
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_CAMERAS,
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_SAVED_SEARCH,
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_EVENTS,
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_FOLDERS,
	LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_TAGS
} LibraryWindowSidebarRootPosition;

typedef enum  {
	LIBRARY_WINDOW_TARGET_TYPE_URI_LIST,
	LIBRARY_WINDOW_TARGET_TYPE_MEDIA_LIST,
	LIBRARY_WINDOW_TARGET_TYPE_TAG_PATH
} LibraryWindowTargetType;

typedef gboolean (*ProgressMonitor) (guint64 current, guint64 total, gboolean do_event_loop, void* user_data);
typedef void (*SidebarTreeExternalDropHandler) (GdkDragContext* context, SidebarEntry* entry, GtkSelectionData* data, guint info, guint time, void* user_data);
typedef void (*OneShotCallback) (void* user_data);
typedef void (*BatchImportImportReporter) (ImportManifest* manifest, BatchImportRoll* import_roll, void* user_data);
struct _DiscoveredCamera {
	GTypeInstance parent_instance;
	volatile int ref_count;
	DiscoveredCameraPrivate * priv;
	Camera* gcamera;
	gchar* uri;
	gchar* display_name;
	gchar* icon;
};

struct _DiscoveredCameraClass {
	GTypeClass parent_class;
	void (*finalize) (DiscoveredCamera *self);
};

struct _SidebarExpandableEntryIface {
	GTypeInterface parent_iface;
	gboolean (*expand_on_select) (SidebarExpandableEntry* self);
};

struct _Page {
	GtkScrolledWindow parent_instance;
	PagePrivate * priv;
	GtkBuilder* builder;
	GtkToolbar* toolbar;
	gboolean in_view;
};

struct _PageClass {
	GtkScrolledWindowClass parent_class;
	void (*set_page_name) (Page* self, const gchar* page_name);
	void (*set_container) (Page* self, GtkWindow* container);
	void (*clear_container) (Page* self);
	GtkToolbar* (*get_toolbar) (Page* self);
	GtkMenu* (*get_page_context_menu) (Page* self);
	void (*switching_from) (Page* self);
	void (*switched_to) (Page* self);
	void (*ready) (Page* self);
	void (*switching_to_fullscreen) (Page* self, FullscreenWindow* fsw);
	void (*returning_from_fullscreen) (Page* self, FullscreenWindow* fsw);
	void (*add_actions) (Page* self, GActionMap* map);
	void (*remove_actions) (Page* self, GActionMap* map);
	void (*init_collect_ui_filenames) (Page* self, GeeList* ui_filenames);
	InjectionGroup** (*init_collect_injection_groups) (Page* self, int* result_length1);
	void (*init_actions) (Page* self, gint selected_count, gint count);
	void (*update_actions) (Page* self, gint selected_count, gint count);
	gboolean (*source_drag_failed) (Page* self, GdkDragContext* context, GtkDragResult drag_result);
	gboolean (*on_left_click) (Page* self, GdkEventButton* event);
	gboolean (*on_middle_click) (Page* self, GdkEventButton* event);
	gboolean (*on_right_click) (Page* self, GdkEventButton* event);
	gboolean (*on_left_released) (Page* self, GdkEventButton* event);
	gboolean (*on_middle_released) (Page* self, GdkEventButton* event);
	gboolean (*on_right_released) (Page* self, GdkEventButton* event);
	gboolean (*on_ctrl_pressed) (Page* self, GdkEventKey* event);
	gboolean (*on_ctrl_released) (Page* self, GdkEventKey* event);
	gboolean (*on_alt_pressed) (Page* self, GdkEventKey* event);
	gboolean (*on_alt_released) (Page* self, GdkEventKey* event);
	gboolean (*on_shift_pressed) (Page* self, GdkEventKey* event);
	gboolean (*on_shift_released) (Page* self, GdkEventKey* event);
	gboolean (*on_super_pressed) (Page* self, GdkEventKey* event);
	gboolean (*on_super_released) (Page* self, GdkEventKey* event);
	gboolean (*on_app_key_pressed) (Page* self, GdkEventKey* event);
	gboolean (*on_app_key_released) (Page* self, GdkEventKey* event);
	void (*on_move) (Page* self, GdkRectangle* rect);
	void (*on_move_start) (Page* self, GdkRectangle* rect);
	void (*on_move_finished) (Page* self, GdkRectangle* rect);
	void (*on_resize) (Page* self, GdkRectangle* rect);
	void (*on_resize_start) (Page* self, GdkRectangle* rect);
	void (*on_resize_finished) (Page* self, GdkRectangle* rect);
	gboolean (*on_configure) (Page* self, GdkEventConfigure* event, GdkRectangle* rect);
	gboolean (*on_motion) (Page* self, GdkEventMotion* event, gint x, gint y, GdkModifierType mask);
	gboolean (*on_leave_notify_event) (Page* self);
	gboolean (*on_mousewheel_up) (Page* self, GdkEventScroll* event);
	gboolean (*on_mousewheel_down) (Page* self, GdkEventScroll* event);
	gboolean (*on_mousewheel_left) (Page* self, GdkEventScroll* event);
	gboolean (*on_mousewheel_right) (Page* self, GdkEventScroll* event);
	gboolean (*on_context_keypress) (Page* self);
	gboolean (*on_context_buttonpress) (Page* self, GdkEventButton* event);
	gboolean (*on_context_invoked) (Page* self);
	void (*set_page_cursor) (Page* self, GdkCursorType cursor_type);
};

typedef enum  {
	SINGLE_PHOTO_PAGE_UPDATE_REASON_NEW_PIXBUF,
	SINGLE_PHOTO_PAGE_UPDATE_REASON_QUALITY_IMPROVEMENT,
	SINGLE_PHOTO_PAGE_UPDATE_REASON_RESIZED_CANVAS
} SinglePhotoPageUpdateReason;

struct _SinglePhotoPage {
	Page parent_instance;
	SinglePhotoPagePrivate * priv;
	GtkDrawingArea* canvas;
	GtkViewport* viewport;
};

struct _SinglePhotoPageClass {
	PageClass parent_class;
	gboolean (*is_zoom_supported) (SinglePhotoPage* self);
	void (*cancel_zoom) (SinglePhotoPage* self);
	void (*save_zoom_state) (SinglePhotoPage* self);
	void (*restore_zoom_state) (SinglePhotoPage* self);
	ZoomBuffer* (*get_zoom_buffer) (SinglePhotoPage* self);
	void (*new_surface) (SinglePhotoPage* self, cairo_t* ctx, Dimensions* ctx_dim);
	void (*updated_pixbuf) (SinglePhotoPage* self, GdkPixbuf* pixbuf, SinglePhotoPageUpdateReason reason, Dimensions* old_dim);
	void (*paint) (SinglePhotoPage* self, cairo_t* ctx, Dimensions* ctx_dim);
	void (*on_previous_photo) (SinglePhotoPage* self);
	void (*on_next_photo) (SinglePhotoPage* self);
};

struct _EditingHostPage {
	SinglePhotoPage parent_instance;
	EditingHostPagePrivate * priv;
};

struct _EditingHostPageClass {
	SinglePhotoPageClass parent_class;
	gboolean (*on_zoom_slider_key_press) (EditingHostPage* self, GdkEventKey* event);
	void (*on_increase_size) (EditingHostPage* self);
	void (*on_decrease_size) (EditingHostPage* self);
	void (*photo_changing) (EditingHostPage* self, Photo* new_photo);
	DataView* (*create_photo_view) (EditingHostPage* self, DataSource* source);
	void (*update_ui) (EditingHostPage* self, gboolean missing);
	void (*notify_photo_backing_missing) (EditingHostPage* self, Photo* photo, gboolean missing);
	gboolean (*confirm_replace_photo) (EditingHostPage* self, Photo* old_photo, Photo* new_photo);
	gboolean (*on_double_click) (EditingHostPage* self, GdkEventButton* event);
	GdkPixbuf* (*get_bottom_left_trinket) (EditingHostPage* self, gint scale);
	GdkPixbuf* (*get_top_left_trinket) (EditingHostPage* self, gint scale);
	GdkPixbuf* (*get_top_right_trinket) (EditingHostPage* self, gint scale);
	GdkPixbuf* (*get_bottom_right_trinket) (EditingHostPage* self, gint scale);
};

typedef enum  {
	RAW_DEVELOPER_SHOTWELL = 0,
	RAW_DEVELOPER_CAMERA,
	RAW_DEVELOPER_EMBEDDED
} RawDeveloper;

struct _LibraryPhotoPage {
	EditingHostPage parent_instance;
	LibraryPhotoPagePrivate * priv;
};

struct _LibraryPhotoPageClass {
	EditingHostPageClass parent_class;
	void (*developer_changed) (LibraryPhotoPage* self, RawDeveloper rd);
};

struct _LibraryWindowFullscreenPhotoPage {
	LibraryPhotoPage parent_instance;
	LibraryWindowFullscreenPhotoPagePrivate * priv;
};

struct _LibraryWindowFullscreenPhotoPageClass {
	LibraryPhotoPageClass parent_class;
};

struct _LibraryWindowFullscreenPhotoPagePrivate {
	CollectionPage* collection;
	Photo* start;
	ViewCollection* view;
};


static gpointer library_window_parent_class = NULL;
static GeeHashSet* library_window_initial_camera_uris;
static GeeHashSet* library_window_initial_camera_uris = NULL;
extern AppWindow* app_window_instance;
extern LibraryPhotoSourceCollection* library_photo_global;
extern VideoSourceCollection* video_global;
static gpointer library_window_fullscreen_photo_page_parent_class = NULL;

GType page_window_get_type (void) G_GNUC_CONST;
GType page_get_type (void) G_GNUC_CONST;
GType app_window_get_type (void) G_GNUC_CONST;
GType dimensions_get_type (void) G_GNUC_CONST;
Dimensions* dimensions_dup (const Dimensions* self);
void dimensions_free (Dimensions* self);
GType library_window_get_type (void) G_GNUC_CONST;
gpointer one_shot_scheduler_ref (gpointer instance);
void one_shot_scheduler_unref (gpointer instance);
GParamSpec* param_spec_one_shot_scheduler (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_one_shot_scheduler (GValue* value, gpointer v_object);
void value_take_one_shot_scheduler (GValue* value, gpointer v_object);
gpointer value_get_one_shot_scheduler (const GValue* value);
GType one_shot_scheduler_get_type (void) G_GNUC_CONST;
GType sidebar_tree_get_type (void) G_GNUC_CONST;
GType sidebar_branch_get_type (void) G_GNUC_CONST;
GType library_branch_get_type (void) G_GNUC_CONST;
GType tags_branch_get_type (void) G_GNUC_CONST;
GType folders_branch_get_type (void) G_GNUC_CONST;
GType events_branch_get_type (void) G_GNUC_CONST;
GType camera_branch_get_type (void) G_GNUC_CONST;
GType searches_branch_get_type (void) G_GNUC_CONST;
GType sidebar_entry_get_type (void) G_GNUC_CONST;
GType single_photo_page_get_type (void) G_GNUC_CONST;
GType editing_host_page_get_type (void) G_GNUC_CONST;
GType library_photo_page_get_type (void) G_GNUC_CONST;
gpointer search_filter_actions_ref (gpointer instance);
void search_filter_actions_unref (gpointer instance);
GParamSpec* param_spec_search_filter_actions (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_search_filter_actions (GValue* value, gpointer v_object);
void value_take_search_filter_actions (GValue* value, gpointer v_object);
gpointer value_get_search_filter_actions (const GValue* value);
GType search_filter_actions_get_type (void) G_GNUC_CONST;
GType search_filter_toolbar_get_type (void) G_GNUC_CONST;
GType properties_get_type (void) G_GNUC_CONST;
GType basic_properties_get_type (void) G_GNUC_CONST;
GType extended_properties_window_get_type (void) G_GNUC_CONST;
#define LIBRARY_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_LIBRARY_WINDOW, LibraryWindowPrivate))
enum  {
	LIBRARY_WINDOW_DUMMY_PROPERTY
};
GType sidebar_selectable_entry_get_type (void) G_GNUC_CONST;
GType sidebar_page_representative_get_type (void) G_GNUC_CONST;
static void library_window_on_page_created (LibraryWindow* self, SidebarPageRepresentative* entry, Page* page);
static void _library_window_on_page_created_sidebar_tree_page_created (SidebarTree* _sender, SidebarPageRepresentative* entry, Page* page, gpointer self);
static void library_window_on_destroying_page (LibraryWindow* self, SidebarPageRepresentative* entry, Page* page);
static void _library_window_on_destroying_page_sidebar_tree_destroying_page (SidebarTree* _sender, SidebarPageRepresentative* entry, Page* page, gpointer self);
static void library_window_on_sidebar_entry_selected (LibraryWindow* self, SidebarSelectableEntry* selectable);
static void _library_window_on_sidebar_entry_selected_sidebar_tree_entry_selected (SidebarTree* _sender, SidebarSelectableEntry* selectable, gpointer self);
static void library_window_on_sidebar_selected_entry_removed (LibraryWindow* self, SidebarSelectableEntry* selectable);
static void _library_window_on_sidebar_selected_entry_removed_sidebar_tree_selected_entry_removed (SidebarTree* _sender, SidebarSelectableEntry* removed, gpointer self);
static void library_window_unsubscribe_from_basic_information (LibraryWindow* self, Page* page);
Page* page_window_get_current_page (PageWindow* self);
static void library_window_hide_extended_properties (LibraryWindow* self);
static void _library_window_hide_extended_properties_gtk_widget_hide (GtkWidget* _sender, gpointer self);
static void library_window_show_extended_properties (LibraryWindow* self);
static void _library_window_show_extended_properties_gtk_widget_show (GtkWidget* _sender, gpointer self);
gpointer data_collection_ref (gpointer instance);
void data_collection_unref (gpointer instance);
GParamSpec* param_spec_data_collection (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_data_collection (GValue* value, gpointer v_object);
void value_take_data_collection (GValue* value, gpointer v_object);
gpointer value_get_data_collection (const GValue* value);
GType data_collection_get_type (void) G_GNUC_CONST;
GType source_collection_get_type (void) G_GNUC_CONST;
GType database_source_collection_get_type (void) G_GNUC_CONST;
GType media_source_collection_get_type (void) G_GNUC_CONST;
gpointer media_collection_registry_ref (gpointer instance);
void media_collection_registry_unref (gpointer instance);
GParamSpec* param_spec_media_collection_registry (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_media_collection_registry (GValue* value, gpointer v_object);
void value_take_media_collection_registry (GValue* value, gpointer v_object);
gpointer value_get_media_collection_registry (const GValue* value);
GType media_collection_registry_get_type (void) G_GNUC_CONST;
MediaCollectionRegistry* media_collection_registry_get_instance (void);
GeeCollection* media_collection_registry_get_all (MediaCollectionRegistry* self);
static void library_window_on_trashcan_contents_altered (LibraryWindow* self);
GType data_object_get_type (void) G_GNUC_CONST;
GType data_source_get_type (void) G_GNUC_CONST;
GType thumbnail_source_get_type (void) G_GNUC_CONST;
GType media_source_get_type (void) G_GNUC_CONST;
static void _library_window_on_trashcan_contents_altered_media_source_collection_trashcan_contents_altered (MediaSourceCollection* _sender, GeeCollection* added, GeeCollection* removed, gpointer self);
static void library_window_on_media_altered (LibraryWindow* self);
gpointer alteration_ref (gpointer instance);
void alteration_unref (gpointer instance);
GParamSpec* param_spec_alteration (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_alteration (GValue* value, gpointer v_object);
void value_take_alteration (GValue* value, gpointer v_object);
gpointer value_get_alteration (const GValue* value);
GType alteration_get_type (void) G_GNUC_CONST;
static void _library_window_on_media_altered_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self);
GType metadata_writer_get_type (void) G_GNUC_CONST;
MetadataWriter* metadata_writer_get_instance (void);
static void library_window_on_metadata_writer_progress (LibraryWindow* self, guint completed, guint total);
static void _library_window_on_metadata_writer_progress_metadata_writer_progress (MetadataWriter* _sender, guint completed, guint total, gpointer self);
GType directory_monitor_get_type (void) G_GNUC_CONST;
GType library_monitor_get_type (void) G_GNUC_CONST;
gpointer library_monitor_pool_ref (gpointer instance);
void library_monitor_pool_unref (gpointer instance);
GParamSpec* param_spec_library_monitor_pool (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_library_monitor_pool (GValue* value, gpointer v_object);
void value_take_library_monitor_pool (GValue* value, gpointer v_object);
gpointer value_get_library_monitor_pool (const GValue* value);
GType library_monitor_pool_get_type (void) G_GNUC_CONST;
LibraryMonitorPool* library_monitor_pool_get_instance (void);
LibraryMonitor* library_monitor_pool_get_monitor (LibraryMonitorPool* self);
static void library_window_on_library_monitor_destroyed (LibraryWindow* self, LibraryMonitor* monitor);
static void library_window_on_library_monitor_installed (LibraryWindow* self, LibraryMonitor* monitor);
static void _library_window_on_library_monitor_installed_library_monitor_pool_monitor_installed (LibraryMonitorPool* _sender, LibraryMonitor* monitor, gpointer self);
static void _library_window_on_library_monitor_destroyed_library_monitor_pool_monitor_destroyed (LibraryMonitorPool* _sender, LibraryMonitor* monitor, gpointer self);
gpointer camera_table_ref (gpointer instance);
void camera_table_unref (gpointer instance);
GParamSpec* param_spec_camera_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_camera_table (GValue* value, gpointer v_object);
void value_take_camera_table (GValue* value, gpointer v_object);
gpointer value_get_camera_table (const GValue* value);
GType camera_table_get_type (void) G_GNUC_CONST;
CameraTable* camera_table_get_instance (void);
gpointer discovered_camera_ref (gpointer instance);
void discovered_camera_unref (gpointer instance);
GParamSpec* param_spec_discovered_camera (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_discovered_camera (GValue* value, gpointer v_object);
void value_take_discovered_camera (GValue* value, gpointer v_object);
gpointer value_get_discovered_camera (const GValue* value);
GType discovered_camera_get_type (void) G_GNUC_CONST;
static void library_window_on_camera_added (LibraryWindow* self, DiscoveredCamera* camera);
static void _library_window_on_camera_added_camera_table_camera_added (CameraTable* _sender, DiscoveredCamera* camera, gpointer self);
static GType library_window_sidebar_root_position_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
GType library_window_target_type_get_type (void) G_GNUC_CONST;
LibraryBranch* library_branch_new (void);
LibraryBranch* library_branch_construct (GType object_type);
TagsBranch* tags_branch_new (void);
TagsBranch* tags_branch_construct (GType object_type);
FoldersBranch* folders_branch_new (void);
FoldersBranch* folders_branch_construct (GType object_type);
EventsBranch* events_branch_new (void);
EventsBranch* events_branch_construct (GType object_type);
CameraBranch* camera_branch_new (void);
CameraBranch* camera_branch_construct (GType object_type);
SearchesBranch* searches_branch_new (void);
SearchesBranch* searches_branch_construct (GType object_type);
SearchFilterActions* search_filter_actions_new (void);
SearchFilterActions* search_filter_actions_construct (GType object_type);
BasicProperties* basic_properties_new (void);
BasicProperties* basic_properties_construct (GType object_type);
#define LIBRARY_WINDOW_SIDEBAR_MIN_WIDTH 120
#define LIBRARY_WINDOW_SORT_EVENTS_ORDER_ASCENDING "ascending"
#define LIBRARY_WINDOW_SORT_EVENTS_ORDER_DESCENDING "descending"
#define LIBRARY_WINDOW_BACKGROUND_PROGRESS_PULSE_MSEC 250
#define LIBRARY_WINDOW_MIN_PROGRESS_BAR_FILES 20
#define LIBRARY_WINDOW_STARTUP_SCAN_PROGRESS_PRIORITY 35
#define LIBRARY_WINDOW_REALTIME_UPDATE_PROGRESS_PRIORITY 40
#define LIBRARY_WINDOW_REALTIME_IMPORT_PROGRESS_PRIORITY 50
#define LIBRARY_WINDOW_METADATA_WRITER_PROGRESS_PRIORITY 30
#define LIBRARY_WINDOW_TAG_PATH_MIME_TYPE "shotwell/tag-path"
#define LIBRARY_WINDOW_MEDIA_LIST_MIME_TYPE "shotwell/media-id-atom"
static void library_window_on_file_import (LibraryWindow* self);
static void _library_window_on_file_import_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_external_library_import (LibraryWindow* self);
static void _library_window_on_external_library_import_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_preferences (LibraryWindow* self);
static void _library_window_on_preferences_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_empty_trash (LibraryWindow* self);
static void _library_window_on_empty_trash_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_jump_to_event (LibraryWindow* self);
static void _library_window_on_jump_to_event_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_find (LibraryWindow* self);
static void _library_window_on_find_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_new_search (LibraryWindow* self);
static void _library_window_on_new_search_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_action_toggle (LibraryWindow* self, GAction* action, GVariant* value);
static void _library_window_on_action_toggle_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_display_basic_properties (LibraryWindow* self, GSimpleAction* action, GVariant* value);
static void _library_window_on_display_basic_properties_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
static void library_window_on_display_extended_properties (LibraryWindow* self, GSimpleAction* action, GVariant* value);
static void _library_window_on_display_extended_properties_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
static void library_window_on_display_searchbar (LibraryWindow* self, GSimpleAction* action, GVariant* value);
static void _library_window_on_display_searchbar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
static void library_window_on_display_sidebar (LibraryWindow* self, GSimpleAction* action, GVariant* variant);
static void _library_window_on_display_sidebar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
static void library_window_on_display_toolbar (LibraryWindow* self, GSimpleAction* action, GVariant* variant);
static void _library_window_on_display_toolbar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
static void library_window_on_action_radio (LibraryWindow* self, GAction* action, GVariant* value);
static void _library_window_on_action_radio_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self);
static void library_window_on_events_sort_changed (LibraryWindow* self, GSimpleAction* action, GVariant* value);
static void _library_window_on_events_sort_changed_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self);
LibraryWindow* library_window_new (ProgressMonitor progress_monitor, void* progress_monitor_target);
LibraryWindow* library_window_construct (GType object_type, ProgressMonitor progress_monitor, void* progress_monitor_target);
AppWindow* app_window_construct (GType object_type);
static void library_window_external_drop_handler (LibraryWindow* self, GdkDragContext* context, SidebarEntry* entry, GtkSelectionData* data, guint info, guint time);
static void _library_window_external_drop_handler_sidebar_tree_external_drop_handler (GdkDragContext* context, SidebarEntry* entry, GtkSelectionData* data, guint info, guint time, gpointer self);
SidebarTree* sidebar_tree_new (GtkTargetEntry* target_entries, int target_entries_length1, GdkDragAction actions, SidebarTreeExternalDropHandler drop_handler, void* drop_handler_target);
SidebarTree* sidebar_tree_construct (GType object_type, GtkTargetEntry* target_entries, int target_entries_length1, GdkDragAction actions, SidebarTreeExternalDropHandler drop_handler, void* drop_handler_target);
void sidebar_tree_graft (SidebarTree* self, SidebarBranch* branch, gint position);
ExtendedPropertiesWindow* extended_properties_window_new (GtkWindow* owner);
ExtendedPropertiesWindow* extended_properties_window_construct (GType object_type, GtkWindow* owner);
static void library_window_on_update_properties_now (LibraryWindow* self);
static void _library_window_on_update_properties_now_one_shot_callback (gpointer self);
OneShotScheduler* one_shot_scheduler_new (const gchar* name, OneShotCallback callback, void* callback_target);
OneShotScheduler* one_shot_scheduler_construct (GType object_type, const gchar* name, OneShotCallback callback, void* callback_target);
SearchFilterToolbar* search_filter_toolbar_new (SearchFilterActions* actions);
SearchFilterToolbar* search_filter_toolbar_construct (GType object_type, SearchFilterActions* actions);
static void library_window_create_layout (LibraryWindow* self, Page* start_page);
GType sidebar_simple_page_entry_get_type (void) G_GNUC_CONST;
GType library_photos_entry_get_type (void) G_GNUC_CONST;
LibraryPhotosEntry* library_branch_get_photos_entry (LibraryBranch* self);
Page* sidebar_page_representative_get_page (SidebarPageRepresentative* self);
static void library_window_load_configuration (LibraryWindow* self);
void application_set_accels_for_action (const gchar* action, gchar** accel, int accel_length1);
GFile* directory_monitor_get_root (DirectoryMonitor* self);
static void library_window_on_library_monitor_discovery_started (LibraryWindow* self);
static void _library_window_on_library_monitor_discovery_started_directory_monitor_discovery_started (DirectoryMonitor* _sender, gpointer self);
static void library_window_on_library_monitor_discovery_completed (LibraryWindow* self);
static void _library_window_on_library_monitor_discovery_completed_directory_monitor_discovery_completed (DirectoryMonitor* _sender, gpointer self);
static void _library_window_on_library_monitor_discovery_completed_directory_monitor_closed (DirectoryMonitor* _sender, gpointer self);
static void library_window_on_library_monitor_auto_update_progress (LibraryWindow* self, gint completed_files, gint total_files);
static void _library_window_on_library_monitor_auto_update_progress_library_monitor_auto_update_progress (LibraryMonitor* _sender, gint completed_files, gint total_files, gpointer self);
static void library_window_on_library_monitor_auto_import_preparing (LibraryWindow* self);
static void _library_window_on_library_monitor_auto_import_preparing_library_monitor_auto_import_preparing (LibraryMonitor* _sender, gpointer self);
static void library_window_on_library_monitor_auto_import_progress (LibraryWindow* self, guint64 completed_bytes, guint64 total_bytes);
static void _library_window_on_library_monitor_auto_import_progress_library_monitor_auto_import_progress (LibraryMonitor* _sender, guint64 completed_bytes, guint64 total_bytes, gpointer self);
static void library_window_real_add_actions (AppWindow* base);
void app_window_add_actions (AppWindow* self);
GActionEntry* search_filter_actions_get_actions (SearchFilterActions* self, int* result_length1);
GType configuration_facade_get_type (void) G_GNUC_CONST;
GType config_facade_get_type (void) G_GNUC_CONST;
ConfigFacade* config_facade_get_instance (void);
gboolean configuration_facade_get_display_search_bar (ConfigurationFacade* self);
static GVariant* _variant_new1 (gboolean value);
static gboolean library_window_is_sidebar_visible (LibraryWindow* self);
static GVariant* _variant_new2 (gboolean value);
static gboolean library_window_is_toolbar_visible (LibraryWindow* self);
static GVariant* _variant_new3 (gboolean value);
static void library_window_real_switched_pages (PageWindow* base, Page* old_page, Page* new_page);
void page_window_switched_pages (PageWindow* self, Page* old_page, Page* new_page);
GType view_collection_get_type (void) G_GNUC_CONST;
ViewCollection* page_get_view (Page* self);
gpointer view_filter_ref (gpointer instance);
void view_filter_unref (gpointer instance);
GParamSpec* param_spec_view_filter (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_view_filter (GValue* value, gpointer v_object);
void value_take_view_filter (GValue* value, gpointer v_object);
gpointer value_get_view_filter (const GValue* value);
GType view_filter_get_type (void) G_GNUC_CONST;
static void library_window_on_view_filter_installed (LibraryWindow* self, ViewFilter* filter);
static void _library_window_on_view_filter_installed_view_collection_view_filter_installed (ViewCollection* _sender, ViewFilter* filer, gpointer self);
static void library_window_on_view_filter_removed (LibraryWindow* self, ViewFilter* filter);
static void _library_window_on_view_filter_removed_view_collection_view_filter_removed (ViewCollection* _sender, ViewFilter* filer, gpointer self);
void search_filter_actions_monitor_page_contents (SearchFilterActions* self, Page* old_page, Page* new_page);
static void library_window_on_view_filter_refreshed (LibraryWindow* self);
static void _library_window_on_view_filter_refreshed_view_filter_refresh (ViewFilter* _sender, gpointer self);
gboolean view_collection_are_items_filtered_out (ViewCollection* self);
static GVariant* _variant_new4 (gboolean value);
static void library_window_real_show_all (GtkWidget* base);
GAction* page_get_common_action (Page* self, const gchar* name, gboolean log_warning);
GType checkerboard_page_get_type (void) G_GNUC_CONST;
static void library_window_init_view_filter (LibraryWindow* self, CheckerboardPage* page);
static void library_window_toggle_search_bar (LibraryWindow* self, gboolean show, CheckerboardPage* page);
static gboolean library_window_should_show_search_bar (LibraryWindow* self);
static void library_window_set_sidebar_visible (LibraryWindow* self, gboolean visible);
LibraryWindow* library_window_get_app (void);
gboolean library_window_is_mount_uri_supported (const gchar* uri);
static gchar* library_window_real_get_app_role (AppWindow* base);
#define RESOURCES_APP_LIBRARY_ROLE _ ("Photo Manager")
GType tag_get_type (void) G_GNUC_CONST;
void library_window_rename_tag_in_sidebar (LibraryWindow* self, Tag* tag);
GType tags_sidebar_entry_get_type (void) G_GNUC_CONST;
TagsSidebarEntry* tags_branch_get_entry_for_tag (TagsBranch* self, Tag* tag);
gboolean sidebar_tree_rename_entry_in_place (SidebarTree* self, SidebarEntry* entry);
GType event_source_get_type (void) G_GNUC_CONST;
GType event_get_type (void) G_GNUC_CONST;
void library_window_rename_event_in_sidebar (LibraryWindow* self, Event* event);
GType events_event_entry_get_type (void) G_GNUC_CONST;
EventsEventEntry* events_branch_get_entry_for_event (EventsBranch* self, Event* event);
GType saved_search_get_type (void) G_GNUC_CONST;
void library_window_rename_search_in_sidebar (LibraryWindow* self, SavedSearch* search);
GType searches_sidebar_entry_get_type (void) G_GNUC_CONST;
SearchesSidebarEntry* searches_branch_get_entry_for_saved_search (SearchesBranch* self, SavedSearch* search);
static void library_window_real_on_quit (AppWindow* base);
void configuration_facade_set_library_window_state (ConfigurationFacade* self, gboolean maximize, Dimensions* dimensions);
void configuration_facade_set_sidebar_position (ConfigurationFacade* self, gint position);
void app_window_on_quit (AppWindow* self);
GType media_page_get_type (void) G_GNUC_CONST;
GType collection_page_get_type (void) G_GNUC_CONST;
GType photo_source_get_type (void) G_GNUC_CONST;
GType photo_get_type (void) G_GNUC_CONST;
static Photo* library_window_get_start_fullscreen_photo (LibraryWindow* self, CollectionPage* page);
gint view_collection_get_selected_count (ViewCollection* self);
GeeList* view_collection_get_selected_sources_of_type (ViewCollection* self, GType t);
GType library_photo_get_type (void) G_GNUC_CONST;
GeeList* view_collection_get_sources_of_type (ViewCollection* self, GType t);
static gboolean library_window_get_fullscreen_photo (LibraryWindow* self, Page* page, CollectionPage** collection, Photo** start, ViewCollection** view_collection);
GType events_directory_page_get_type (void) G_GNUC_CONST;
gint data_collection_get_count (DataCollection* self);
DataObject* data_collection_get_at (DataCollection* self, gint index);
GType data_view_get_type (void) G_GNUC_CONST;
DataSource* data_view_get_source (DataView* self);
GType event_page_get_type (void) G_GNUC_CONST;
CollectionPage* library_photo_page_get_controller_page (LibraryPhotoPage* self);
gboolean editing_host_page_has_photo (EditingHostPage* self);
Photo* editing_host_page_get_photo (EditingHostPage* self);
static void library_window_real_on_fullscreen (AppWindow* base);
static GType library_window_fullscreen_photo_page_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static LibraryWindowFullscreenPhotoPage* library_window_fullscreen_photo_page_new (CollectionPage* collection, Photo* start, ViewCollection* view);
static LibraryWindowFullscreenPhotoPage* library_window_fullscreen_photo_page_construct (GType object_type, CollectionPage* collection, Photo* start, ViewCollection* view);
void app_window_go_fullscreen (AppWindow* self, Page* page);
#define RESOURCES_CANCEL_LABEL _ ("_Cancel")
#define RESOURCES_OK_LABEL _ ("_OK")
gboolean app_dirs_is_in_import_dir (GFile* file);
GtkResponseType copy_files_dialog (void);
static void library_window_dispatch_import_jobs (LibraryWindow* self, GSList* uris, const gchar* job_name, gboolean copy_to_library, gboolean recurse);
static void _g_free0_ (gpointer var);
static void _g_slist_free__g_free0_ (GSList* self);
GType data_imports_ui_data_imports_dialog_get_type (void) G_GNUC_CONST;
DataImportsUIDataImportsDialog* data_imports_ui_data_imports_dialog_get_or_create_instance (void);
static void library_window_real_update_common_action_availability (AppWindow* base, Page* old_page, Page* new_page);
void app_window_update_common_action_availability (AppWindow* self, Page* old_page, Page* new_page);
void app_window_set_common_action_sensitive (AppWindow* self, const gchar* name, gboolean sensitive);
static void library_window_real_update_common_actions (AppWindow* base, Page* page, gint selected_count, gint count);
static gboolean library_window_can_empty_trash (LibraryWindow* self);
void app_window_set_common_action_visible (AppWindow* self, const gchar* name, gboolean visible);
static gboolean library_window_can_jump_to_event (LibraryWindow* self);
void app_window_update_common_actions (AppWindow* self, Page* page, gint selected_count, gint count);
GType library_photo_source_collection_get_type (void) G_GNUC_CONST;
gint media_source_collection_get_trashcan_count (MediaSourceCollection* self);
GType video_source_collection_get_type (void) G_GNUC_CONST;
GeeCollection* media_source_collection_get_trashcan_contents (MediaSourceCollection* self);
void remove_from_app (GeeCollection* sources, const gchar* dialog_title, const gchar* progress_dialog_text);
gpointer command_manager_ref (gpointer instance);
void command_manager_unref (gpointer instance);
GParamSpec* param_spec_command_manager (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_command_manager (GValue* value, gpointer v_object);
void value_take_command_manager (GValue* value, gpointer v_object);
gpointer value_get_command_manager (const GValue* value);
GType command_manager_get_type (void) G_GNUC_CONST;
CommandManager* app_window_get_command_manager (void);
void command_manager_reset (CommandManager* self);
SavedSearchDialog* saved_search_dialog_new (void);
SavedSearchDialog* saved_search_dialog_construct (GType object_type);
gpointer saved_search_dialog_ref (gpointer instance);
void saved_search_dialog_unref (gpointer instance);
GParamSpec* param_spec_saved_search_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_saved_search_dialog (GValue* value, gpointer v_object);
void value_take_saved_search_dialog (GValue* value, gpointer v_object);
gpointer value_get_saved_search_dialog (const GValue* value);
GType saved_search_dialog_get_type (void) G_GNUC_CONST;
void saved_search_dialog_show (SavedSearchDialog* self);
DataSource* view_collection_get_selected_source_at (ViewCollection* self, gint index);
Event* media_source_get_event (MediaSource* self);
void library_window_switch_to_event (LibraryWindow* self, Event* event);
static GVariant* _variant_new5 (gboolean value);
void search_filter_toolbar_take_focus (SearchFilterToolbar* self);
static void library_window_on_clear_search (LibraryWindow* self);
void search_filter_actions_reset (SearchFilterActions* self);
gint library_window_get_events_sort (LibraryWindow* self);
void configuration_facade_set_events_sort_ascending (ConfigurationFacade* self, gboolean sort);
void preferences_dialog_show_preferences (void);
void properties_update_properties (Properties* self, Page* page);
void configuration_facade_set_display_basic_properties (ConfigurationFacade* self, gboolean display);
static gboolean _variant_get6 (GVariant* value);
static GVariant* _variant_new7 (gboolean value);
void extended_properties_window_update_properties (ExtendedPropertiesWindow* self, Page* page);
void configuration_facade_set_display_search_bar (ConfigurationFacade* self, gboolean display);
void library_window_show_search_bar (LibraryWindow* self, gboolean display);
static GVariant* _variant_new8 (gboolean value);
void configuration_facade_set_display_sidebar (ConfigurationFacade* self, gboolean display);
gboolean configuration_facade_get_display_sidebar (ConfigurationFacade* self);
static void library_window_set_toolbar_visible (LibraryWindow* self, gboolean visible);
GtkToolbar* page_get_toolbar (Page* self);
void configuration_facade_set_display_toolbar (ConfigurationFacade* self, gboolean display);
gboolean configuration_facade_get_display_toolbar (ConfigurationFacade* self);
static void library_window_sync_extended_properties (LibraryWindow* self, gboolean show);
static GVariant* _variant_new9 (gboolean value);
void configuration_facade_set_display_extended_properties (ConfigurationFacade* self, gboolean display);
GType batch_import_get_type (void) G_GNUC_CONST;
void library_window_enqueue_batch_import (LibraryWindow* self, BatchImport* batch_import, gboolean allow_user_cancel);
GType library_hideable_page_entry_get_type (void) G_GNUC_CONST;
GType library_import_queue_sidebar_entry_get_type (void) G_GNUC_CONST;
LibraryImportQueueSidebarEntry* library_branch_get_import_queue_entry (LibraryBranch* self);
void library_import_queue_sidebar_entry_enqueue_and_schedule (LibraryImportQueueSidebarEntry* self, BatchImport* batch_import, gboolean allow_user_cancel);
gpointer import_manifest_ref (gpointer instance);
void import_manifest_unref (gpointer instance);
GParamSpec* param_spec_import_manifest (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_import_manifest (GValue* value, gpointer v_object);
void value_take_import_manifest (GValue* value, gpointer v_object);
gpointer value_get_import_manifest (const GValue* value);
GType import_manifest_get_type (void) G_GNUC_CONST;
static void library_window_import_reporter (LibraryWindow* self, ImportManifest* manifest);
gpointer import_ui_question_params_ref (gpointer instance);
void import_ui_question_params_unref (gpointer instance);
GParamSpec* import_ui_param_spec_question_params (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void import_ui_value_set_question_params (GValue* value, gpointer v_object);
void import_ui_value_take_question_params (GValue* value, gpointer v_object);
gpointer import_ui_value_get_question_params (const GValue* value);
GType import_ui_question_params_get_type (void) G_GNUC_CONST;
gboolean import_ui_report_manifest (ImportManifest* manifest, gboolean show_dest_id, ImportUIQuestionParams* question);
GFile* app_dirs_get_import_dir (void);
GtkResponseType app_window_affirm_cancel_question (const gchar* message, const gchar* affirmative, const gchar* title, GtkWindow* parent);
AppWindow* app_window_get_instance (void);
gpointer batch_import_job_ref (gpointer instance);
void batch_import_job_unref (gpointer instance);
GParamSpec* param_spec_batch_import_job (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_batch_import_job (GValue* value, gpointer v_object);
void value_take_batch_import_job (GValue* value, gpointer v_object);
gpointer value_get_batch_import_job (const GValue* value);
GType batch_import_job_get_type (void) G_GNUC_CONST;
GType file_import_job_get_type (void) G_GNUC_CONST;
void app_window_error_message (const gchar* message, GtkWindow* parent);
FileImportJob* file_import_job_new (GFile* file_or_dir, gboolean copy_to_library, gboolean recurse);
FileImportJob* file_import_job_construct (GType object_type, GFile* file_or_dir, gboolean copy_to_library, gboolean recurse);
gpointer batch_import_roll_ref (gpointer instance);
void batch_import_roll_unref (gpointer instance);
GParamSpec* param_spec_batch_import_roll (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_batch_import_roll (GValue* value, gpointer v_object);
void value_take_batch_import_roll (GValue* value, gpointer v_object);
gpointer value_get_batch_import_roll (const GValue* value);
GType batch_import_roll_get_type (void) G_GNUC_CONST;
static void _library_window_import_reporter_batch_import_import_reporter (ImportManifest* manifest, BatchImportRoll* import_roll, gpointer self);
BatchImport* batch_import_new (GeeIterable* jobs, const gchar* name, BatchImportImportReporter reporter, void* reporter_target, GeeArrayList* prefailed, GeeArrayList* pre_already_imported, GCancellable* cancellable, BatchImportRoll* import_roll, ImportManifest* skip_manifest);
BatchImport* batch_import_construct (GType object_type, GeeIterable* jobs, const gchar* name, BatchImportImportReporter reporter, void* reporter_target, GeeArrayList* prefailed, GeeArrayList* pre_already_imported, GCancellable* cancellable, BatchImportRoll* import_roll, ImportManifest* skip_manifest);
void library_window_switch_to_import_queue_page (LibraryWindow* self);
static GdkDragAction library_window_get_drag_action (LibraryWindow* self);
static gboolean library_window_real_drag_motion (GtkWidget* base, GdkDragContext* context, gint x, gint y, guint time);
static void library_window_real_drag_data_received (GtkWidget* base, GdkDragContext* context, gint x, gint y, GtkSelectionData* selection_data, guint info, guint time);
void library_window_switch_to_library_page (LibraryWindow* self);
void library_window_switch_to_page (LibraryWindow* self, Page* page);
void library_window_switch_to_tag (LibraryWindow* self, Tag* tag);
void library_window_switch_to_saved_search (LibraryWindow* self, SavedSearch* search);
void library_window_switch_to_photo_page (LibraryWindow* self, CollectionPage* controller, Photo* current);
DataView* view_collection_get_view_for_source (ViewCollection* self, DataSource* source);
LibraryPhotoPage* library_photo_page_new (void);
LibraryPhotoPage* library_photo_page_construct (GType object_type);
void library_window_add_to_stack (LibraryWindow* self, Page* page);
void spin_event_loop (void);
void library_photo_page_display_for_collection (LibraryPhotoPage* self, CollectionPage* return_page, Photo* photo, ViewCollection* view);
GType camera_sidebar_entry_get_type (void) G_GNUC_CONST;
CameraSidebarEntry* camera_branch_get_entry_for_camera (CameraBranch* self, DiscoveredCamera* camera);
GType import_page_get_type (void) G_GNUC_CONST;
gboolean import_page_unmount_camera (ImportPage* self, GMount* mount);
static void library_window_remove_from_stack (LibraryWindow* self, Page* page);
gboolean configuration_facade_get_display_basic_properties (ConfigurationFacade* self);
static GVariant* _variant_new10 (gboolean value);
gboolean configuration_facade_get_display_extended_properties (ConfigurationFacade* self);
static GVariant* _variant_new11 (gboolean value);
static GVariant* _variant_new12 (gboolean value);
gboolean configuration_facade_get_events_sort_ascending (ConfigurationFacade* self);
static GVariant* _variant_new13 (const gchar* value);
static void library_window_start_pulse_background_progress_bar (LibraryWindow* self, const gchar* label, gint priority);
static void library_window_stop_pulse_background_progress_bar (LibraryWindow* self, gint priority, gboolean clear);
static void library_window_show_background_progress_bar (LibraryWindow* self);
static gboolean library_window_on_pulse_background_progress_bar (LibraryWindow* self);
static gboolean _library_window_on_pulse_background_progress_bar_gsource_func (gpointer self);
static void library_window_clear_background_progress_bar (LibraryWindow* self, gint priority);
static void library_window_update_background_progress_bar (LibraryWindow* self, const gchar* label, gint priority, gdouble count, gdouble total);
static void library_window_hide_background_progress_bar (LibraryWindow* self);
gint configuration_facade_get_sidebar_position (ConfigurationFacade* self);
gint library_window_get_PAGE_MIN_WIDTH (void);
static void library_window_real_set_current_page (PageWindow* base, Page* page);
void library_window_set_page_switching_enabled (LibraryWindow* self, gboolean should_enable);
void application_set_menubar (GMenuModel* model);
void page_switching_from (Page* self);
void sidebar_tree_enable_editing (SidebarTree* self);
void page_window_set_current_page (PageWindow* self, Page* page);
void sidebar_tree_disable_editing (SidebarTree* self);
GType sidebar_expandable_entry_get_type (void) G_GNUC_CONST;
gboolean sidebar_expandable_entry_expand_on_select (SidebarExpandableEntry* self);
gboolean sidebar_tree_expand_to_entry (SidebarTree* self, SidebarEntry* entry);
gboolean sidebar_tree_place_cursor (SidebarTree* self, SidebarEntry* entry, gboolean mask_signal);
static void library_window_on_update_properties (LibraryWindow* self);
static void library_window_subscribe_for_basic_information (LibraryWindow* self, Page* page);
void page_switched_to (Page* self);
GMenuModel* page_get_menubar (Page* self);
void page_ready (Page* self);
GType search_view_filter_get_type (void) G_GNUC_CONST;
void search_filter_toolbar_set_view_filter (SearchFilterToolbar* self, SearchViewFilter* search_filter);
SearchViewFilter* checkerboard_page_get_search_view_filter (CheckerboardPage* self);
void view_collection_install_view_filter (ViewCollection* self, ViewFilter* f);
DisabledViewFilter* disabled_view_filter_new (void);
DisabledViewFilter* disabled_view_filter_construct (GType object_type);
GType disabled_view_filter_get_type (void) G_GNUC_CONST;
GType library_last_import_sidebar_entry_get_type (void) G_GNUC_CONST;
LibraryLastImportSidebarEntry* library_branch_get_last_imported_entry (LibraryBranch* self);
gboolean library_hideable_page_entry_get_visible (LibraryHideablePageEntry* self);
gboolean sidebar_branch_get_show_branch (SidebarBranch* self);
GType events_directory_entry_get_type (void) G_GNUC_CONST;
GType events_master_directory_entry_get_type (void) G_GNUC_CONST;
EventsMasterDirectoryEntry* events_branch_get_master_entry (EventsBranch* self);
static void _library_window_on_update_properties_view_collection_items_state_changed (ViewCollection* _sender, GeeIterable* changed, gpointer self);
static void _library_window_on_update_properties_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self);
static void _library_window_on_update_properties_data_collection_contents_altered (DataCollection* _sender, GeeIterable* added, GeeIterable* removed, gpointer self);
static void _library_window_on_update_properties_view_collection_items_visibility_changed (ViewCollection* _sender, GeeCollection* changed, gpointer self);
void one_shot_scheduler_at_idle (OneShotScheduler* self);
void library_window_mounted_camera_shell_notification (LibraryWindow* self, const gchar* uri, gboolean at_startup);
gchar* camera_table_get_port_uri (const gchar* port);
gboolean is_string_empty (const gchar* s);
static gboolean library_window_real_key_press_event (GtkWidget* base, GdkEventKey* event);
gboolean sidebar_tree_is_keypress_interpreted (SidebarTree* self, GdkEventKey* event);
gint thumbnail_get_MAX_SCALE (void);
#define CHECKERBOARD_LAYOUT_COLUMN_GUTTER_PADDING 24
GType fullscreen_window_get_type (void) G_GNUC_CONST;
gpointer injection_group_ref (gpointer instance);
void injection_group_unref (gpointer instance);
GParamSpec* param_spec_injection_group (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_injection_group (GValue* value, gpointer v_object);
void value_take_injection_group (GValue* value, gpointer v_object);
gpointer value_get_injection_group (const GValue* value);
GType injection_group_get_type (void) G_GNUC_CONST;
GType zoom_buffer_get_type (void) G_GNUC_CONST;
GType single_photo_page_update_reason_get_type (void) G_GNUC_CONST;
GType raw_developer_get_type (void) G_GNUC_CONST;
#define LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPagePrivate))
enum  {
	LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE_DUMMY_PROPERTY
};
static void library_window_fullscreen_photo_page_real_switched_to (Page* base);
static void library_window_fullscreen_photo_page_real_switching_from (Page* base);
static void library_window_fullscreen_photo_page_real_init_collect_ui_filenames (Page* base, GeeList* ui_filenames);
static void library_window_fullscreen_photo_page_finalize (GObject* obj);
static void library_window_finalize (GObject* obj);
static void _vala_library_window_get_property (GObject * object, guint property_id, 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 gint _vala_array_length (gpointer array);

static const gchar* LIBRARY_WINDOW_SUPPORTED_MOUNT_SCHEMES[3] = {"gphoto2:", "disk:", "file:"};
const GtkTargetEntry LIBRARY_WINDOW_DND_TARGET_ENTRIES[3] = {{"text/uri-list", (guint) GTK_TARGET_OTHER_APP, (guint) LIBRARY_WINDOW_TARGET_TYPE_URI_LIST}, {LIBRARY_WINDOW_MEDIA_LIST_MIME_TYPE, (guint) GTK_TARGET_SAME_APP, (guint) LIBRARY_WINDOW_TARGET_TYPE_MEDIA_LIST}, {LIBRARY_WINDOW_TAG_PATH_MIME_TYPE, (guint) GTK_TARGET_SAME_WIDGET, (guint) LIBRARY_WINDOW_TARGET_TYPE_TAG_PATH}};
static const GActionEntry LIBRARY_WINDOW_common_actions[13] = {{"CommonFileImport", _library_window_on_file_import_gsimple_action_activate_callback}, {"ExternalLibraryImport", _library_window_on_external_library_import_gsimple_action_activate_callback}, {"CommonPreferences", _library_window_on_preferences_gsimple_action_activate_callback}, {"CommonEmptyTrash", _library_window_on_empty_trash_gsimple_action_activate_callback}, {"CommonJumpToEvent", _library_window_on_jump_to_event_gsimple_action_activate_callback}, {"CommonFind", _library_window_on_find_gsimple_action_activate_callback}, {"CommonNewSearch", _library_window_on_new_search_gsimple_action_activate_callback}, {"CommonDisplayBasicProperties", _library_window_on_action_toggle_gsimple_action_activate_callback, NULL, "false", _library_window_on_display_basic_properties_gsimple_action_change_state_callback}, {"CommonDisplayExtendedProperties", _library_window_on_action_toggle_gsimple_action_activate_callback, NULL, "false", _library_window_on_display_extended_properties_gsimple_action_change_state_callback}, {"CommonDisplaySearchbar", NULL, NULL, "false", _library_window_on_display_searchbar_gsimple_action_change_state_callback}, {"CommonDisplaySidebar", _library_window_on_action_toggle_gsimple_action_activate_callback, NULL, "true", _library_window_on_display_sidebar_gsimple_action_change_state_callback}, {"CommonDisplayToolbar", NULL, NULL, "true", _library_window_on_display_toolbar_gsimple_action_change_state_callback}, {"CommonSortEvents", _library_window_on_action_radio_gsimple_action_activate_callback, "s", "'ascending'", _library_window_on_events_sort_changed_gsimple_action_change_state_callback}};

static void _library_window_on_page_created_sidebar_tree_page_created (SidebarTree* _sender, SidebarPageRepresentative* entry, Page* page, gpointer self) {
#line 223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_page_created ((LibraryWindow*) self, entry, page);
#line 1751 "LibraryWindow.c"
}


static void _library_window_on_destroying_page_sidebar_tree_destroying_page (SidebarTree* _sender, SidebarPageRepresentative* entry, Page* page, gpointer self) {
#line 224 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_destroying_page ((LibraryWindow*) self, entry, page);
#line 1758 "LibraryWindow.c"
}


static void _library_window_on_sidebar_entry_selected_sidebar_tree_entry_selected (SidebarTree* _sender, SidebarSelectableEntry* selectable, gpointer self) {
#line 225 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_sidebar_entry_selected ((LibraryWindow*) self, selectable);
#line 1765 "LibraryWindow.c"
}


static void _library_window_on_sidebar_selected_entry_removed_sidebar_tree_selected_entry_removed (SidebarTree* _sender, SidebarSelectableEntry* removed, gpointer self) {
#line 226 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_sidebar_selected_entry_removed ((LibraryWindow*) self, removed);
#line 1772 "LibraryWindow.c"
}


static void _library_window_hide_extended_properties_gtk_widget_hide (GtkWidget* _sender, gpointer self) {
#line 230 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_hide_extended_properties ((LibraryWindow*) self);
#line 1779 "LibraryWindow.c"
}


static void _library_window_show_extended_properties_gtk_widget_show (GtkWidget* _sender, gpointer self) {
#line 231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_show_extended_properties ((LibraryWindow*) self);
#line 1786 "LibraryWindow.c"
}


static void _library_window_on_trashcan_contents_altered_media_source_collection_trashcan_contents_altered (MediaSourceCollection* _sender, GeeCollection* added, GeeCollection* removed, gpointer self) {
#line 234 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_trashcan_contents_altered ((LibraryWindow*) self);
#line 1793 "LibraryWindow.c"
}


static void _library_window_on_media_altered_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self) {
#line 235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_media_altered ((LibraryWindow*) self);
#line 1800 "LibraryWindow.c"
}


static void _library_window_on_metadata_writer_progress_metadata_writer_progress (MetadataWriter* _sender, guint completed, guint total, gpointer self) {
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_metadata_writer_progress ((LibraryWindow*) self, completed, total);
#line 1807 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_installed_library_monitor_pool_monitor_installed (LibraryMonitorPool* _sender, LibraryMonitor* monitor, gpointer self) {
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_installed ((LibraryWindow*) self, monitor);
#line 1814 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_destroyed_library_monitor_pool_monitor_destroyed (LibraryMonitorPool* _sender, LibraryMonitor* monitor, gpointer self) {
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_destroyed ((LibraryWindow*) self, monitor);
#line 1821 "LibraryWindow.c"
}


static void _library_window_on_camera_added_camera_table_camera_added (CameraTable* _sender, DiscoveredCamera* camera, gpointer self) {
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_camera_added ((LibraryWindow*) self, camera);
#line 1828 "LibraryWindow.c"
}


static GType library_window_sidebar_root_position_get_type (void) {
	static volatile gsize library_window_sidebar_root_position_type_id__volatile = 0;
	if (g_once_init_enter (&library_window_sidebar_root_position_type_id__volatile)) {
		static const GEnumValue values[] = {{LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_LIBRARY, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_LIBRARY", "library"}, {LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_CAMERAS, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_CAMERAS", "cameras"}, {LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_SAVED_SEARCH, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_SAVED_SEARCH", "saved-search"}, {LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_EVENTS, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_EVENTS", "events"}, {LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_FOLDERS, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_FOLDERS", "folders"}, {LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_TAGS, "LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_TAGS", "tags"}, {0, NULL, NULL}};
		GType library_window_sidebar_root_position_type_id;
		library_window_sidebar_root_position_type_id = g_enum_register_static ("LibraryWindowSidebarRootPosition", values);
		g_once_init_leave (&library_window_sidebar_root_position_type_id__volatile, library_window_sidebar_root_position_type_id);
	}
	return library_window_sidebar_root_position_type_id__volatile;
}


GType library_window_target_type_get_type (void) {
	static volatile gsize library_window_target_type_type_id__volatile = 0;
	if (g_once_init_enter (&library_window_target_type_type_id__volatile)) {
		static const GEnumValue values[] = {{LIBRARY_WINDOW_TARGET_TYPE_URI_LIST, "LIBRARY_WINDOW_TARGET_TYPE_URI_LIST", "uri-list"}, {LIBRARY_WINDOW_TARGET_TYPE_MEDIA_LIST, "LIBRARY_WINDOW_TARGET_TYPE_MEDIA_LIST", "media-list"}, {LIBRARY_WINDOW_TARGET_TYPE_TAG_PATH, "LIBRARY_WINDOW_TARGET_TYPE_TAG_PATH", "tag-path"}, {0, NULL, NULL}};
		GType library_window_target_type_type_id;
		library_window_target_type_type_id = g_enum_register_static ("LibraryWindowTargetType", values);
		g_once_init_leave (&library_window_target_type_type_id__volatile, library_window_target_type_type_id);
	}
	return library_window_target_type_type_id__volatile;
}


static void _library_window_on_file_import_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_file_import ((LibraryWindow*) self);
#line 1859 "LibraryWindow.c"
}


static void _library_window_on_external_library_import_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_external_library_import ((LibraryWindow*) self);
#line 1866 "LibraryWindow.c"
}


static void _library_window_on_preferences_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_preferences ((LibraryWindow*) self);
#line 1873 "LibraryWindow.c"
}


static void _library_window_on_empty_trash_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_empty_trash ((LibraryWindow*) self);
#line 1880 "LibraryWindow.c"
}


static void _library_window_on_jump_to_event_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_jump_to_event ((LibraryWindow*) self);
#line 1887 "LibraryWindow.c"
}


static void _library_window_on_find_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_find ((LibraryWindow*) self);
#line 1894 "LibraryWindow.c"
}


static void _library_window_on_new_search_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_new_search ((LibraryWindow*) self);
#line 1901 "LibraryWindow.c"
}


static void _library_window_on_action_toggle_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_action_toggle ((LibraryWindow*) self, action, parameter);
#line 1908 "LibraryWindow.c"
}


static void _library_window_on_display_basic_properties_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_display_basic_properties ((LibraryWindow*) self, action, value);
#line 1915 "LibraryWindow.c"
}


static void _library_window_on_display_extended_properties_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_display_extended_properties ((LibraryWindow*) self, action, value);
#line 1922 "LibraryWindow.c"
}


static void _library_window_on_display_searchbar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_display_searchbar ((LibraryWindow*) self, action, value);
#line 1929 "LibraryWindow.c"
}


static void _library_window_on_display_sidebar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_display_sidebar ((LibraryWindow*) self, action, value);
#line 1936 "LibraryWindow.c"
}


static void _library_window_on_display_toolbar_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_display_toolbar ((LibraryWindow*) self, action, value);
#line 1943 "LibraryWindow.c"
}


static void _library_window_on_action_radio_gsimple_action_activate_callback (GSimpleAction* action, GVariant* parameter, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_action_radio ((LibraryWindow*) self, action, parameter);
#line 1950 "LibraryWindow.c"
}


static void _library_window_on_events_sort_changed_gsimple_action_change_state_callback (GSimpleAction* action, GVariant* value, gpointer self) {
#line 272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_events_sort_changed ((LibraryWindow*) self, action, value);
#line 1957 "LibraryWindow.c"
}


static void _library_window_external_drop_handler_sidebar_tree_external_drop_handler (GdkDragContext* context, SidebarEntry* entry, GtkSelectionData* data, guint info, guint time, gpointer self) {
#line 155 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_external_drop_handler ((LibraryWindow*) self, context, entry, data, info, time);
#line 1964 "LibraryWindow.c"
}


static void _library_window_on_update_properties_now_one_shot_callback (gpointer self) {
#line 175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties_now ((LibraryWindow*) self);
#line 1971 "LibraryWindow.c"
}


LibraryWindow* library_window_construct (GType object_type, ProgressMonitor progress_monitor, void* progress_monitor_target) {
	LibraryWindow * self = NULL;
	SidebarTree* _tmp0_ = NULL;
	SidebarTree* _tmp1_ = NULL;
	SidebarTree* _tmp2_ = NULL;
	SidebarTree* _tmp3_ = NULL;
	SidebarTree* _tmp4_ = NULL;
	SidebarTree* _tmp5_ = NULL;
	LibraryBranch* _tmp6_ = NULL;
	SidebarTree* _tmp7_ = NULL;
	TagsBranch* _tmp8_ = NULL;
	SidebarTree* _tmp9_ = NULL;
	FoldersBranch* _tmp10_ = NULL;
	SidebarTree* _tmp11_ = NULL;
	EventsBranch* _tmp12_ = NULL;
	SidebarTree* _tmp13_ = NULL;
	CameraBranch* _tmp14_ = NULL;
	SidebarTree* _tmp15_ = NULL;
	SearchesBranch* _tmp16_ = NULL;
	ExtendedPropertiesWindow* _tmp17_ = NULL;
	ExtendedPropertiesWindow* _tmp18_ = NULL;
	ExtendedPropertiesWindow* _tmp19_ = NULL;
	OneShotScheduler* _tmp20_ = NULL;
	SearchFilterActions* _tmp21_ = NULL;
	SearchFilterToolbar* _tmp22_ = NULL;
	LibraryBranch* _tmp23_ = NULL;
	LibraryPhotosEntry* _tmp24_ = NULL;
	LibraryPhotosEntry* _tmp25_ = NULL;
	Page* _tmp26_ = NULL;
	Page* _tmp27_ = NULL;
	GtkTargetEntry* main_window_dnd_targets = NULL;
	GtkTargetEntry _tmp40_ = {0};
	GtkTargetEntry _tmp41_ = {0};
	GtkTargetEntry* _tmp42_ = NULL;
	gint main_window_dnd_targets_length1 = 0;
	gint _main_window_dnd_targets_size_ = 0;
	GtkTargetEntry* _tmp43_ = NULL;
	gint _tmp43__length1 = 0;
	MetadataWriter* _tmp44_ = NULL;
	MetadataWriter* _tmp45_ = NULL;
	LibraryMonitor* monitor = NULL;
	LibraryMonitorPool* _tmp46_ = NULL;
	LibraryMonitorPool* _tmp47_ = NULL;
	LibraryMonitor* _tmp48_ = NULL;
	LibraryMonitor* _tmp49_ = NULL;
	LibraryMonitor* _tmp50_ = NULL;
	LibraryMonitorPool* _tmp52_ = NULL;
	LibraryMonitorPool* _tmp53_ = NULL;
	LibraryMonitorPool* _tmp54_ = NULL;
	LibraryMonitorPool* _tmp55_ = NULL;
	CameraTable* _tmp56_ = NULL;
	CameraTable* _tmp57_ = NULL;
	GtkProgressBar* _tmp58_ = NULL;
#line 218 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	static const gchar* accels[] = {"<Primary>f", "F8", NULL};
#line 153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = (LibraryWindow*) app_window_construct (object_type);
#line 155 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = sidebar_tree_new (LIBRARY_WINDOW_DND_TARGET_ENTRIES, G_N_ELEMENTS (LIBRARY_WINDOW_DND_TARGET_ENTRIES), GDK_ACTION_ASK, _library_window_external_drop_handler_sidebar_tree_external_drop_handler, self);
#line 155 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp0_);
#line 155 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->sidebar_tree);
#line 155 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->sidebar_tree = _tmp0_;
#line 158 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->sidebar_tree;
#line 158 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp1_, "page-created", (GCallback) _library_window_on_page_created_sidebar_tree_page_created, self, 0);
#line 159 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->sidebar_tree;
#line 159 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp2_, "destroying-page", (GCallback) _library_window_on_destroying_page_sidebar_tree_destroying_page, self, 0);
#line 160 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->sidebar_tree;
#line 160 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp3_, "entry-selected", (GCallback) _library_window_on_sidebar_entry_selected_sidebar_tree_entry_selected, self, 0);
#line 161 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = self->priv->sidebar_tree;
#line 161 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp4_, "selected-entry-removed", (GCallback) _library_window_on_sidebar_selected_entry_removed_sidebar_tree_selected_entry_removed, self, 0);
#line 163 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = self->priv->sidebar_tree;
#line 163 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->library_branch;
#line 163 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp5_, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_LIBRARY);
#line 164 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = self->priv->sidebar_tree;
#line 164 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = self->priv->tags_branch;
#line 164 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp7_, G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_TAGS);
#line 165 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = self->priv->sidebar_tree;
#line 165 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = self->priv->folders_branch;
#line 165 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp9_, G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_FOLDERS);
#line 166 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = self->priv->sidebar_tree;
#line 166 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = self->priv->events_branch;
#line 166 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp11_, G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_EVENTS);
#line 167 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = self->priv->sidebar_tree;
#line 167 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = self->priv->camera_branch;
#line 167 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp13_, G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_CAMERAS);
#line 168 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = self->priv->sidebar_tree;
#line 168 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = self->priv->saved_search_branch;
#line 168 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sidebar_tree_graft (_tmp15_, G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, SIDEBAR_TYPE_BRANCH, SidebarBranch), (gint) LIBRARY_WINDOW_SIDEBAR_ROOT_POSITION_SAVED_SEARCH);
#line 171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = extended_properties_window_new (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_window_get_type (), GtkWindow));
#line 171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp17_);
#line 171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->extended_properties);
#line 171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->extended_properties = _tmp17_;
#line 172 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = self->priv->extended_properties;
#line 172 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, gtk_widget_get_type (), GtkWidget), "hide", (GCallback) _library_window_hide_extended_properties_gtk_widget_hide, self, 0);
#line 173 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = self->priv->extended_properties;
#line 173 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp19_, gtk_widget_get_type (), GtkWidget), "show", (GCallback) _library_window_show_extended_properties_gtk_widget_show, self, 0);
#line 175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp20_ = one_shot_scheduler_new ("LibraryWindow properties", _library_window_on_update_properties_now_one_shot_callback, self);
#line 175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_one_shot_scheduler_unref0 (self->priv->properties_scheduler);
#line 175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->properties_scheduler = _tmp20_;
#line 179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp21_ = self->priv->search_actions;
#line 179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = search_filter_toolbar_new (_tmp21_);
#line 179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp22_);
#line 179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->search_toolbar);
#line 179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->search_toolbar = _tmp22_;
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp23_ = self->priv->library_branch;
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp24_ = library_branch_get_photos_entry (_tmp23_);
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp25_ = _tmp24_;
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp26_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp27_ = _tmp26_;
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_create_layout (self, _tmp27_);
#line 182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp27_);
#line 185 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_load_configuration (self);
#line 2140 "LibraryWindow.c"
	{
		GeeIterator* _media_sources_it = NULL;
		MediaCollectionRegistry* _tmp28_ = NULL;
		MediaCollectionRegistry* _tmp29_ = NULL;
		GeeCollection* _tmp30_ = NULL;
		GeeCollection* _tmp31_ = NULL;
		GeeIterator* _tmp32_ = NULL;
		GeeIterator* _tmp33_ = NULL;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp28_ = media_collection_registry_get_instance ();
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp29_ = _tmp28_;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp30_ = media_collection_registry_get_all (_tmp29_);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp31_ = _tmp30_;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp32_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, GEE_TYPE_ITERABLE, GeeIterable));
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp33_ = _tmp32_;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp31_);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_media_collection_registry_unref0 (_tmp29_);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_media_sources_it = _tmp33_;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		while (TRUE) {
#line 2169 "LibraryWindow.c"
			GeeIterator* _tmp34_ = NULL;
			gboolean _tmp35_ = FALSE;
			MediaSourceCollection* media_sources = NULL;
			GeeIterator* _tmp36_ = NULL;
			gpointer _tmp37_ = NULL;
			MediaSourceCollection* _tmp38_ = NULL;
			MediaSourceCollection* _tmp39_ = NULL;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp34_ = _media_sources_it;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp35_ = gee_iterator_next (_tmp34_);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (!_tmp35_) {
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				break;
#line 2185 "LibraryWindow.c"
			}
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp36_ = _media_sources_it;
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp37_ = gee_iterator_get (_tmp36_);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			media_sources = (MediaSourceCollection*) _tmp37_;
#line 188 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp38_ = media_sources;
#line 188 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_connect_object (_tmp38_, "trashcan-contents-altered", (GCallback) _library_window_on_trashcan_contents_altered_media_source_collection_trashcan_contents_altered, self, 0);
#line 189 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp39_ = media_sources;
#line 189 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp39_, TYPE_DATA_COLLECTION, DataCollection), "items-altered", (GCallback) _library_window_on_media_altered_data_collection_items_altered, self, 0);
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (media_sources);
#line 2203 "LibraryWindow.c"
		}
#line 187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_media_sources_it);
#line 2207 "LibraryWindow.c"
	}
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp40_ = LIBRARY_WINDOW_DND_TARGET_ENTRIES[LIBRARY_WINDOW_TARGET_TYPE_URI_LIST];
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp41_ = LIBRARY_WINDOW_DND_TARGET_ENTRIES[LIBRARY_WINDOW_TARGET_TYPE_MEDIA_LIST];
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp42_ = g_new0 (GtkTargetEntry, 2);
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp42_[0] = _tmp40_;
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp42_[1] = _tmp41_;
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	main_window_dnd_targets = _tmp42_;
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	main_window_dnd_targets_length1 = 2;
#line 194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_main_window_dnd_targets_size_ = main_window_dnd_targets_length1;
#line 200 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp43_ = main_window_dnd_targets;
#line 200 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp43__length1 = main_window_dnd_targets_length1;
#line 200 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_drag_dest_set (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget), GTK_DEST_DEFAULT_ALL, _tmp43_, _tmp43__length1, (GDK_ACTION_COPY | GDK_ACTION_LINK) | GDK_ACTION_ASK);
#line 203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp44_ = metadata_writer_get_instance ();
#line 203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp45_ = _tmp44_;
#line 203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp45_, "progress", (GCallback) _library_window_on_metadata_writer_progress_metadata_writer_progress, self, 0);
#line 203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp45_);
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp46_ = library_monitor_pool_get_instance ();
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp47_ = _tmp46_;
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp48_ = library_monitor_pool_get_monitor (_tmp47_);
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp49_ = _tmp48_;
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp47_);
#line 205 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	monitor = _tmp49_;
#line 206 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp50_ = monitor;
#line 206 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp50_ != NULL) {
#line 2255 "LibraryWindow.c"
		LibraryMonitor* _tmp51_ = NULL;
#line 207 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp51_ = monitor;
#line 207 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_on_library_monitor_installed (self, _tmp51_);
#line 2261 "LibraryWindow.c"
	}
#line 209 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp52_ = library_monitor_pool_get_instance ();
#line 209 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp53_ = _tmp52_;
#line 209 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp53_, "monitor-installed", (GCallback) _library_window_on_library_monitor_installed_library_monitor_pool_monitor_installed, self, 0);
#line 209 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp53_);
#line 210 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp54_ = library_monitor_pool_get_instance ();
#line 210 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp55_ = _tmp54_;
#line 210 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp55_, "monitor-destroyed", (GCallback) _library_window_on_library_monitor_destroyed_library_monitor_pool_monitor_destroyed, self, 0);
#line 210 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp55_);
#line 212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp56_ = camera_table_get_instance ();
#line 212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp57_ = _tmp56_;
#line 212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp57_, "camera-added", (GCallback) _library_window_on_camera_added_camera_table_camera_added, self, 0);
#line 212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_camera_table_unref0 (_tmp57_);
#line 214 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp58_ = self->priv->background_progress_bar;
#line 214 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_show_text (_tmp58_, TRUE);
#line 219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	application_set_accels_for_action ("win.CommonDisplaySearchbar", accels, G_N_ELEMENTS (accels));
#line 153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (monitor);
#line 153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	main_window_dnd_targets = (g_free (main_window_dnd_targets), NULL);
#line 153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return self;
#line 2299 "LibraryWindow.c"
}


LibraryWindow* library_window_new (ProgressMonitor progress_monitor, void* progress_monitor_target) {
#line 153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return library_window_construct (TYPE_LIBRARY_WINDOW, progress_monitor, progress_monitor_target);
#line 2306 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_discovery_started_directory_monitor_discovery_started (DirectoryMonitor* _sender, gpointer self) {
#line 253 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_discovery_started ((LibraryWindow*) self);
#line 2313 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_discovery_completed_directory_monitor_discovery_completed (DirectoryMonitor* _sender, gpointer self) {
#line 254 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_discovery_completed ((LibraryWindow*) self);
#line 2320 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_discovery_completed_directory_monitor_closed (DirectoryMonitor* _sender, gpointer self) {
#line 255 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_discovery_completed ((LibraryWindow*) self);
#line 2327 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_auto_update_progress_library_monitor_auto_update_progress (LibraryMonitor* _sender, gint completed_files, gint total_files, gpointer self) {
#line 256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_auto_update_progress ((LibraryWindow*) self, completed_files, total_files);
#line 2334 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_auto_import_preparing_library_monitor_auto_import_preparing (LibraryMonitor* _sender, gpointer self) {
#line 257 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_auto_import_preparing ((LibraryWindow*) self);
#line 2341 "LibraryWindow.c"
}


static void _library_window_on_library_monitor_auto_import_progress_library_monitor_auto_import_progress (LibraryMonitor* _sender, guint64 completed_bytes, guint64 total_bytes, gpointer self) {
#line 258 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_library_monitor_auto_import_progress ((LibraryWindow*) self, completed_bytes, total_bytes);
#line 2348 "LibraryWindow.c"
}


static void library_window_on_library_monitor_installed (LibraryWindow* self, LibraryMonitor* monitor) {
	LibraryMonitor* _tmp0_ = NULL;
	GFile* _tmp1_ = NULL;
	GFile* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_ = NULL;
	LibraryMonitor* _tmp5_ = NULL;
	LibraryMonitor* _tmp6_ = NULL;
	LibraryMonitor* _tmp7_ = NULL;
	LibraryMonitor* _tmp8_ = NULL;
	LibraryMonitor* _tmp9_ = NULL;
	LibraryMonitor* _tmp10_ = NULL;
#line 250 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 250 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_MONITOR (monitor));
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = monitor;
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = directory_monitor_get_root (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor));
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = g_file_get_path (_tmp2_);
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_debug ("LibraryWindow.vala:251: on_library_monitor_installed: %s", _tmp4_);
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (_tmp4_);
#line 251 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 253 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = monitor;
#line 253 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), "discovery-started", (GCallback) _library_window_on_library_monitor_discovery_started_directory_monitor_discovery_started, self, 0);
#line 254 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = monitor;
#line 254 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), "discovery-completed", (GCallback) _library_window_on_library_monitor_discovery_completed_directory_monitor_discovery_completed, self, 0);
#line 255 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = monitor;
#line 255 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), "closed", (GCallback) _library_window_on_library_monitor_discovery_completed_directory_monitor_closed, self, 0);
#line 256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = monitor;
#line 256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp8_, "auto-update-progress", (GCallback) _library_window_on_library_monitor_auto_update_progress_library_monitor_auto_update_progress, self, 0);
#line 257 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = monitor;
#line 257 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp9_, "auto-import-preparing", (GCallback) _library_window_on_library_monitor_auto_import_preparing_library_monitor_auto_import_preparing, self, 0);
#line 258 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = monitor;
#line 258 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp10_, "auto-import-progress", (GCallback) _library_window_on_library_monitor_auto_import_progress_library_monitor_auto_import_progress, self, 0);
#line 2408 "LibraryWindow.c"
}


static void library_window_on_library_monitor_destroyed (LibraryWindow* self, LibraryMonitor* monitor) {
	LibraryMonitor* _tmp0_ = NULL;
	GFile* _tmp1_ = NULL;
	GFile* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_ = NULL;
	LibraryMonitor* _tmp5_ = NULL;
	guint _tmp6_ = 0U;
	LibraryMonitor* _tmp7_ = NULL;
	guint _tmp8_ = 0U;
	LibraryMonitor* _tmp9_ = NULL;
	guint _tmp10_ = 0U;
	LibraryMonitor* _tmp11_ = NULL;
	guint _tmp12_ = 0U;
	LibraryMonitor* _tmp13_ = NULL;
	guint _tmp14_ = 0U;
	LibraryMonitor* _tmp15_ = NULL;
	guint _tmp16_ = 0U;
#line 261 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 261 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_MONITOR (monitor));
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = monitor;
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = directory_monitor_get_root (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor));
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = g_file_get_path (_tmp2_);
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_debug ("LibraryWindow.vala:262: on_library_monitor_destroyed: %s", _tmp4_);
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (_tmp4_);
#line 262 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = monitor;
#line 264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("discovery-started", TYPE_DIRECTORY_MONITOR, &_tmp6_, NULL, FALSE);
#line 264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp6_, 0, NULL, (GCallback) _library_window_on_library_monitor_discovery_started_directory_monitor_discovery_started, self);
#line 265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = monitor;
#line 265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("discovery-completed", TYPE_DIRECTORY_MONITOR, &_tmp8_, NULL, FALSE);
#line 265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp8_, 0, NULL, (GCallback) _library_window_on_library_monitor_discovery_completed_directory_monitor_discovery_completed, self);
#line 266 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = monitor;
#line 266 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("closed", TYPE_DIRECTORY_MONITOR, &_tmp10_, NULL, FALSE);
#line 266 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_DIRECTORY_MONITOR, DirectoryMonitor), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp10_, 0, NULL, (GCallback) _library_window_on_library_monitor_discovery_completed_directory_monitor_closed, self);
#line 267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = monitor;
#line 267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("auto-update-progress", TYPE_LIBRARY_MONITOR, &_tmp12_, NULL, FALSE);
#line 267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp11_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp12_, 0, NULL, (GCallback) _library_window_on_library_monitor_auto_update_progress_library_monitor_auto_update_progress, self);
#line 268 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = monitor;
#line 268 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("auto-import-preparing", TYPE_LIBRARY_MONITOR, &_tmp14_, NULL, FALSE);
#line 268 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp13_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp14_, 0, NULL, (GCallback) _library_window_on_library_monitor_auto_import_preparing_library_monitor_auto_import_preparing, self);
#line 269 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = monitor;
#line 269 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("auto-import-progress", TYPE_LIBRARY_MONITOR, &_tmp16_, NULL, FALSE);
#line 269 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp15_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp16_, 0, NULL, (GCallback) _library_window_on_library_monitor_auto_import_progress_library_monitor_auto_import_progress, self);
#line 2486 "LibraryWindow.c"
}


static GVariant* _variant_new1 (gboolean value) {
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 2493 "LibraryWindow.c"
}


static GVariant* _variant_new2 (gboolean value) {
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 2500 "LibraryWindow.c"
}


static GVariant* _variant_new3 (gboolean value) {
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 2507 "LibraryWindow.c"
}


static void library_window_real_add_actions (AppWindow* base) {
	LibraryWindow * self;
	SearchFilterActions* _tmp0_ = NULL;
	gint _tmp1_ = 0;
	GActionEntry* _tmp2_ = NULL;
	SearchFilterActions* _tmp3_ = NULL;
	GAction* _tmp4_ = NULL;
	ConfigFacade* _tmp5_ = NULL;
	ConfigFacade* _tmp6_ = NULL;
	gboolean _tmp7_ = FALSE;
	GVariant* _tmp8_ = NULL;
	GAction* _tmp9_ = NULL;
	gboolean _tmp10_ = FALSE;
	GVariant* _tmp11_ = NULL;
	GAction* _tmp12_ = NULL;
	gboolean _tmp13_ = FALSE;
	GVariant* _tmp14_ = NULL;
#line 293 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 294 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	APP_WINDOW_CLASS (library_window_parent_class)->add_actions (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow));
#line 295 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_map_add_action_entries (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), LIBRARY_WINDOW_common_actions, G_N_ELEMENTS (LIBRARY_WINDOW_common_actions), self);
#line 296 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->search_actions;
#line 296 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = search_filter_actions_get_actions (_tmp0_, &_tmp1_);
#line 296 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->search_actions;
#line 296 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_map_add_action_entries (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), _tmp2_, _tmp1_, _tmp3_);
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplaySearchbar");
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = config_facade_get_instance ();
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = _tmp5_;
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = configuration_facade_get_display_search_bar (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = _variant_new1 (_tmp7_);
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp4_, _tmp8_);
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp8_);
#line 298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp6_);
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplaySidebar");
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = library_window_is_sidebar_visible (self);
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = _variant_new2 (_tmp10_);
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp9_, _tmp11_);
#line 299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp11_);
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplayToolbar");
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = library_window_is_toolbar_visible (self);
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = _variant_new3 (_tmp13_);
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp12_, _tmp14_);
#line 300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp14_);
#line 2578 "LibraryWindow.c"
}


static void _library_window_on_view_filter_installed_view_collection_view_filter_installed (ViewCollection* _sender, ViewFilter* filer, gpointer self) {
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_view_filter_installed ((LibraryWindow*) self, filer);
#line 2585 "LibraryWindow.c"
}


static void _library_window_on_view_filter_removed_view_collection_view_filter_removed (ViewCollection* _sender, ViewFilter* filer, gpointer self) {
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_view_filter_removed ((LibraryWindow*) self, filer);
#line 2592 "LibraryWindow.c"
}


static void library_window_real_switched_pages (PageWindow* base, Page* old_page, Page* new_page) {
	LibraryWindow * self;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	Page* _tmp2_ = NULL;
	Page* _tmp11_ = NULL;
	SearchFilterActions* _tmp18_ = NULL;
	Page* _tmp19_ = NULL;
	Page* _tmp20_ = NULL;
#line 303 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 303 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((old_page == NULL) || IS_PAGE (old_page));
#line 303 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((new_page == NULL) || IS_PAGE (new_page));
#line 304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = old_page;
#line 304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = new_page;
#line 304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	PAGE_WINDOW_CLASS (library_window_parent_class)->switched_pages (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), TYPE_PAGE_WINDOW, PageWindow), _tmp0_, _tmp1_);
#line 307 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = old_page;
#line 307 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_ != NULL) {
#line 2621 "LibraryWindow.c"
		Page* _tmp3_ = NULL;
		ViewCollection* _tmp4_ = NULL;
		ViewCollection* _tmp5_ = NULL;
		guint _tmp6_ = 0U;
		Page* _tmp7_ = NULL;
		ViewCollection* _tmp8_ = NULL;
		ViewCollection* _tmp9_ = NULL;
		guint _tmp10_ = 0U;
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = old_page;
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = page_get_view (_tmp3_);
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = _tmp4_;
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_parse_name ("view-filter-installed", TYPE_VIEW_COLLECTION, &_tmp6_, NULL, FALSE);
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_handlers_disconnect_matched (_tmp5_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp6_, 0, NULL, (GCallback) _library_window_on_view_filter_installed_view_collection_view_filter_installed, self);
#line 308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_tmp5_);
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = old_page;
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = page_get_view (_tmp7_);
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = _tmp8_;
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_parse_name ("view-filter-removed", TYPE_VIEW_COLLECTION, &_tmp10_, NULL, FALSE);
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_handlers_disconnect_matched (_tmp9_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp10_, 0, NULL, (GCallback) _library_window_on_view_filter_removed_view_collection_view_filter_removed, self);
#line 309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_tmp9_);
#line 2654 "LibraryWindow.c"
	}
#line 312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = new_page;
#line 312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp11_ != NULL) {
#line 2660 "LibraryWindow.c"
		Page* _tmp12_ = NULL;
		ViewCollection* _tmp13_ = NULL;
		ViewCollection* _tmp14_ = NULL;
		Page* _tmp15_ = NULL;
		ViewCollection* _tmp16_ = NULL;
		ViewCollection* _tmp17_ = NULL;
#line 313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = new_page;
#line 313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = page_get_view (_tmp12_);
#line 313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = _tmp13_;
#line 313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_connect_object (_tmp14_, "view-filter-installed", (GCallback) _library_window_on_view_filter_installed_view_collection_view_filter_installed, self, 0);
#line 313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_tmp14_);
#line 314 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = new_page;
#line 314 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = page_get_view (_tmp15_);
#line 314 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = _tmp16_;
#line 314 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_connect_object (_tmp17_, "view-filter-removed", (GCallback) _library_window_on_view_filter_removed_view_collection_view_filter_removed, self, 0);
#line 314 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_tmp17_);
#line 2687 "LibraryWindow.c"
	}
#line 317 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = self->priv->search_actions;
#line 317 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = old_page;
#line 317 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp20_ = new_page;
#line 317 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	search_filter_actions_monitor_page_contents (_tmp18_, _tmp19_, _tmp20_);
#line 2697 "LibraryWindow.c"
}


static void _library_window_on_view_filter_refreshed_view_filter_refresh (ViewFilter* _sender, gpointer self) {
#line 321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_view_filter_refreshed ((LibraryWindow*) self);
#line 2704 "LibraryWindow.c"
}


static void library_window_on_view_filter_installed (LibraryWindow* self, ViewFilter* filter) {
	ViewFilter* _tmp0_ = NULL;
#line 320 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 320 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_VIEW_FILTER (filter));
#line 321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = filter;
#line 321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (_tmp0_, "refresh", (GCallback) _library_window_on_view_filter_refreshed_view_filter_refresh, self, 0);
#line 2718 "LibraryWindow.c"
}


static void library_window_on_view_filter_removed (LibraryWindow* self, ViewFilter* filter) {
	ViewFilter* _tmp0_ = NULL;
	guint _tmp1_ = 0U;
#line 324 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 324 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_VIEW_FILTER (filter));
#line 325 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = filter;
#line 325 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("refresh", TYPE_VIEW_FILTER, &_tmp1_, NULL, FALSE);
#line 325 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp0_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _library_window_on_view_filter_refreshed_view_filter_refresh, self);
#line 2735 "LibraryWindow.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 335 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return self ? g_object_ref (self) : NULL;
#line 2742 "LibraryWindow.c"
}


static GVariant* _variant_new4 (gboolean value) {
#line 338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 2749 "LibraryWindow.c"
}


static void library_window_on_view_filter_refreshed (LibraryWindow* self) {
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	ViewCollection* _tmp2_ = NULL;
	ViewCollection* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
	gboolean _tmp5_ = FALSE;
	GAction* action = NULL;
	GAction* _tmp6_ = NULL;
	GAction* _tmp7_ = NULL;
	GAction* _tmp8_ = NULL;
#line 328 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_get_view (_tmp1_);
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view_collection_are_items_filtered_out (_tmp3_);
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = !_tmp4_;
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (_tmp3_);
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 331 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp5_) {
#line 332 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 2786 "LibraryWindow.c"
	}
#line 335 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplaySearchbar");
#line 335 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _g_object_ref0 (_tmp6_);
#line 335 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	action = _tmp7_;
#line 337 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = action;
#line 337 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp8_ != NULL) {
#line 2798 "LibraryWindow.c"
		GAction* _tmp9_ = NULL;
		GVariant* _tmp10_ = NULL;
#line 338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = action;
#line 338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = _variant_new4 (TRUE);
#line 338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_action_change_state (_tmp9_, _tmp10_);
#line 338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_variant_unref0 (_tmp10_);
#line 2809 "LibraryWindow.c"
	}
#line 328 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (action);
#line 2813 "LibraryWindow.c"
}


static void library_window_real_show_all (GtkWidget* base) {
	LibraryWindow * self;
	GAction* basic_properties_action = NULL;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	GAction* _tmp2_ = NULL;
	GAction* _tmp3_ = NULL;
	GAction* _tmp4_ = NULL;
	GAction* _tmp5_ = NULL;
	GVariant* _tmp6_ = NULL;
	GVariant* _tmp7_ = NULL;
	gboolean _tmp8_ = FALSE;
	gboolean _tmp9_ = FALSE;
	CheckerboardPage* current_page = NULL;
	Page* _tmp11_ = NULL;
	CheckerboardPage* _tmp12_ = NULL;
	CheckerboardPage* _tmp13_ = NULL;
	gboolean _tmp15_ = FALSE;
	CheckerboardPage* _tmp16_ = NULL;
	gboolean _tmp17_ = FALSE;
#line 342 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 343 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	GTK_WIDGET_CLASS (library_window_parent_class)->show_all (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), gtk_widget_get_type (), GtkWidget));
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_get_common_action (_tmp1_, "CommonDisplayBasicProperties", TRUE);
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 345 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	basic_properties_action = _tmp3_;
#line 347 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = basic_properties_action;
#line 347 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp4_ != NULL, "basic_properties_action != null");
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = basic_properties_action;
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = g_action_get_state (_tmp5_);
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _tmp6_;
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = g_variant_get_boolean (_tmp7_);
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = !_tmp8_;
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp7_);
#line 349 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp9_) {
#line 2871 "LibraryWindow.c"
		GtkFrame* _tmp10_ = NULL;
#line 350 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = self->priv->bottom_frame;
#line 350 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_widget_get_type (), GtkWidget));
#line 2877 "LibraryWindow.c"
	}
#line 353 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 353 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp11_, TYPE_CHECKERBOARD_PAGE) ? ((CheckerboardPage*) _tmp11_) : NULL;
#line 353 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp12_ == NULL) {
#line 353 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp11_);
#line 2887 "LibraryWindow.c"
	}
#line 353 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	current_page = _tmp12_;
#line 354 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = current_page;
#line 354 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp13_ != NULL) {
#line 2895 "LibraryWindow.c"
		CheckerboardPage* _tmp14_ = NULL;
#line 355 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = current_page;
#line 355 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_init_view_filter (self, _tmp14_);
#line 2901 "LibraryWindow.c"
	}
#line 357 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = library_window_should_show_search_bar (self);
#line 357 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = current_page;
#line 357 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_toggle_search_bar (self, _tmp15_, _tmp16_);
#line 360 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = library_window_is_sidebar_visible (self);
#line 360 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_set_sidebar_visible (self, _tmp17_);
#line 342 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (current_page);
#line 342 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (basic_properties_action);
#line 2917 "LibraryWindow.c"
}


LibraryWindow* library_window_get_app (void) {
	LibraryWindow* result = NULL;
	AppWindow* _tmp0_ = NULL;
	AppWindow* _tmp1_ = NULL;
	LibraryWindow* _tmp2_ = NULL;
#line 364 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = app_window_instance;
#line 364 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_LIBRARY_WINDOW), "instance is LibraryWindow");
#line 366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = app_window_instance;
#line 366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_LIBRARY_WINDOW, LibraryWindow));
#line 366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp2_;
#line 366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 2938 "LibraryWindow.c"
}


gboolean library_window_is_mount_uri_supported (const gchar* uri) {
	gboolean result = FALSE;
#line 370 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (uri != NULL, FALSE);
#line 2946 "LibraryWindow.c"
	{
		const gchar** scheme_collection = NULL;
		gint scheme_collection_length1 = 0;
		gint _scheme_collection_size_ = 0;
		gint scheme_it = 0;
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		scheme_collection = LIBRARY_WINDOW_SUPPORTED_MOUNT_SCHEMES;
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		scheme_collection_length1 = G_N_ELEMENTS (LIBRARY_WINDOW_SUPPORTED_MOUNT_SCHEMES);
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		for (scheme_it = 0; scheme_it < G_N_ELEMENTS (LIBRARY_WINDOW_SUPPORTED_MOUNT_SCHEMES); scheme_it = scheme_it + 1) {
#line 2958 "LibraryWindow.c"
			gchar* _tmp0_ = NULL;
			gchar* scheme = NULL;
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp0_ = g_strdup (scheme_collection[scheme_it]);
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			scheme = _tmp0_;
#line 2965 "LibraryWindow.c"
			{
				const gchar* _tmp1_ = NULL;
				const gchar* _tmp2_ = NULL;
				gboolean _tmp3_ = FALSE;
#line 372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp1_ = uri;
#line 372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp2_ = scheme;
#line 372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp3_ = g_str_has_prefix (_tmp1_, _tmp2_);
#line 372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				if (_tmp3_) {
#line 373 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					result = TRUE;
#line 373 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_g_free0 (scheme);
#line 373 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					return result;
#line 2984 "LibraryWindow.c"
				}
#line 371 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_free0 (scheme);
#line 2988 "LibraryWindow.c"
			}
		}
	}
#line 376 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = FALSE;
#line 376 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 2996 "LibraryWindow.c"
}


static gchar* library_window_real_get_app_role (AppWindow* base) {
	LibraryWindow * self;
	gchar* result = NULL;
	gchar* _tmp0_ = NULL;
#line 379 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 380 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_strdup (RESOURCES_APP_LIBRARY_ROLE);
#line 380 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp0_;
#line 380 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 3012 "LibraryWindow.c"
}


void library_window_rename_tag_in_sidebar (LibraryWindow* self, Tag* tag) {
	TagsSidebarEntry* entry = NULL;
	TagsBranch* _tmp0_ = NULL;
	Tag* _tmp1_ = NULL;
	TagsSidebarEntry* _tmp2_ = NULL;
	TagsSidebarEntry* _tmp3_ = NULL;
#line 383 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 383 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_TAG (tag));
#line 384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->tags_branch;
#line 384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = tag;
#line 384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = tags_branch_get_entry_for_tag (_tmp0_, _tmp1_);
#line 384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 385 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 385 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 3038 "LibraryWindow.c"
		SidebarTree* _tmp4_ = NULL;
		TagsSidebarEntry* _tmp5_ = NULL;
#line 386 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->sidebar_tree;
#line 386 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = entry;
#line 386 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		sidebar_tree_rename_entry_in_place (_tmp4_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
#line 3047 "LibraryWindow.c"
	} else {
#line 388 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:388: No tag entry found for rename");
#line 3051 "LibraryWindow.c"
	}
#line 383 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 3055 "LibraryWindow.c"
}


void library_window_rename_event_in_sidebar (LibraryWindow* self, Event* event) {
	EventsEventEntry* entry = NULL;
	EventsBranch* _tmp0_ = NULL;
	Event* _tmp1_ = NULL;
	EventsEventEntry* _tmp2_ = NULL;
	EventsEventEntry* _tmp3_ = NULL;
#line 391 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 391 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_EVENT (event));
#line 392 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->events_branch;
#line 392 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = event;
#line 392 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = events_branch_get_entry_for_event (_tmp0_, _tmp1_);
#line 392 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 393 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 393 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 3081 "LibraryWindow.c"
		SidebarTree* _tmp4_ = NULL;
		EventsEventEntry* _tmp5_ = NULL;
#line 394 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->sidebar_tree;
#line 394 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = entry;
#line 394 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		sidebar_tree_rename_entry_in_place (_tmp4_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
#line 3090 "LibraryWindow.c"
	} else {
#line 396 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:396: No event entry found for rename");
#line 3094 "LibraryWindow.c"
	}
#line 391 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 3098 "LibraryWindow.c"
}


void library_window_rename_search_in_sidebar (LibraryWindow* self, SavedSearch* search) {
	SearchesSidebarEntry* entry = NULL;
	SearchesBranch* _tmp0_ = NULL;
	SavedSearch* _tmp1_ = NULL;
	SearchesSidebarEntry* _tmp2_ = NULL;
	SearchesSidebarEntry* _tmp3_ = NULL;
#line 399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_SAVED_SEARCH (search));
#line 400 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->saved_search_branch;
#line 400 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = search;
#line 400 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = searches_branch_get_entry_for_saved_search (_tmp0_, _tmp1_);
#line 400 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 3124 "LibraryWindow.c"
		SidebarTree* _tmp4_ = NULL;
		SearchesSidebarEntry* _tmp5_ = NULL;
#line 402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->sidebar_tree;
#line 402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = entry;
#line 402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		sidebar_tree_rename_entry_in_place (_tmp4_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
#line 3133 "LibraryWindow.c"
	} else {
#line 404 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:404: No search entry found for rename");
#line 3137 "LibraryWindow.c"
	}
#line 399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 3141 "LibraryWindow.c"
}


static void library_window_real_on_quit (AppWindow* base) {
	LibraryWindow * self;
	ConfigFacade* _tmp0_ = NULL;
	ConfigFacade* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	Dimensions _tmp3_ = {0};
	ConfigFacade* _tmp4_ = NULL;
	ConfigFacade* _tmp5_ = NULL;
	GtkPaned* _tmp6_ = NULL;
	gint _tmp7_ = 0;
	gint _tmp8_ = 0;
#line 407 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = config_facade_get_instance ();
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow)->maximized;
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow)->dimensions;
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_library_window_state (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp2_, &_tmp3_);
#line 408 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = config_facade_get_instance ();
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _tmp4_;
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->client_paned;
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = gtk_paned_get_position (_tmp6_);
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = _tmp7_;
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_sidebar_position (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp8_);
#line 410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp5_);
#line 412 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	APP_WINDOW_CLASS (library_window_parent_class)->on_quit (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow));
#line 3186 "LibraryWindow.c"
}


static Photo* library_window_get_start_fullscreen_photo (LibraryWindow* self, CollectionPage* page) {
	Photo* result = NULL;
	ViewCollection* view = NULL;
	CollectionPage* _tmp0_ = NULL;
	ViewCollection* _tmp1_ = NULL;
	GeeList* _tmp2_ = NULL;
	ViewCollection* _tmp3_ = NULL;
	gint _tmp4_ = 0;
	GeeList* sources = NULL;
	GeeList* _tmp9_ = NULL;
	Photo* _tmp10_ = NULL;
	gboolean _tmp11_ = FALSE;
	GeeList* _tmp12_ = NULL;
#line 415 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), NULL);
#line 415 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_COLLECTION_PAGE (page), NULL);
#line 416 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 416 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_PAGE, Page));
#line 416 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp1_;
#line 420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = view;
#line 420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view_collection_get_selected_count (_tmp3_);
#line 420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_ > 0) {
#line 3219 "LibraryWindow.c"
		ViewCollection* _tmp5_ = NULL;
		GeeList* _tmp6_ = NULL;
#line 421 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = view;
#line 421 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = view_collection_get_selected_sources_of_type (_tmp5_, TYPE_LIBRARY_PHOTO);
#line 421 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp2_);
#line 421 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = _tmp6_;
#line 3230 "LibraryWindow.c"
	} else {
		ViewCollection* _tmp7_ = NULL;
		GeeList* _tmp8_ = NULL;
#line 422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = view;
#line 422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = view_collection_get_sources_of_type (_tmp7_, TYPE_LIBRARY_PHOTO);
#line 422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp2_);
#line 422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = _tmp8_;
#line 3242 "LibraryWindow.c"
	}
#line 420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = _g_object_ref0 (_tmp2_);
#line 420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sources = _tmp9_;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = sources;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp12_ != NULL) {
#line 3252 "LibraryWindow.c"
		GeeList* _tmp13_ = NULL;
		gint _tmp14_ = 0;
		gint _tmp15_ = 0;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = sources;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, GEE_TYPE_COLLECTION, GeeCollection));
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = _tmp14_;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = _tmp15_ != 0;
#line 3264 "LibraryWindow.c"
	} else {
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = FALSE;
#line 3268 "LibraryWindow.c"
	}
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp11_) {
#line 3272 "LibraryWindow.c"
		GeeList* _tmp16_ = NULL;
		gpointer _tmp17_ = NULL;
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = sources;
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = gee_list_get (_tmp16_, 0);
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp10_);
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = G_TYPE_CHECK_INSTANCE_CAST ((DataSource*) _tmp17_, TYPE_PHOTO, Photo);
#line 3283 "LibraryWindow.c"
	} else {
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp10_);
#line 425 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = NULL;
#line 3289 "LibraryWindow.c"
	}
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp10_;
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (sources);
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 3301 "LibraryWindow.c"
}


static gboolean library_window_get_fullscreen_photo (LibraryWindow* self, Page* page, CollectionPage** collection, Photo** start, ViewCollection** view_collection) {
	CollectionPage* _vala_collection = NULL;
	Photo* _vala_start = NULL;
	ViewCollection* _vala_view_collection = NULL;
	gboolean result = FALSE;
	Page* _tmp0_ = NULL;
	Page* _tmp8_ = NULL;
	Page* _tmp30_ = NULL;
#line 428 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 428 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_PAGE (page), FALSE);
#line 430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_vala_collection);
#line 430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_collection = NULL;
#line 431 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_vala_start);
#line 431 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_start = NULL;
#line 432 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (_vala_view_collection);
#line 432 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_view_collection = NULL;
#line 435 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 435 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_COLLECTION_PAGE)) {
#line 3333 "LibraryWindow.c"
		Page* _tmp1_ = NULL;
		CollectionPage* _tmp2_ = NULL;
		Photo* photo = NULL;
		CollectionPage* _tmp3_ = NULL;
		Photo* _tmp4_ = NULL;
		Photo* _tmp5_ = NULL;
		Photo* _tmp6_ = NULL;
		Photo* _tmp7_ = NULL;
#line 436 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = page;
#line 436 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_COLLECTION_PAGE, CollectionPage));
#line 436 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_collection);
#line 436 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_collection = _tmp2_;
#line 437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = _vala_collection;
#line 437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = library_window_get_start_fullscreen_photo (self, _tmp3_);
#line 437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		photo = _tmp4_;
#line 438 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = photo;
#line 438 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp5_ == NULL) {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (photo);
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3368 "LibraryWindow.c"
			} else {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3372 "LibraryWindow.c"
			}
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3378 "LibraryWindow.c"
			} else {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3382 "LibraryWindow.c"
			}
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3388 "LibraryWindow.c"
			} else {
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3392 "LibraryWindow.c"
			}
#line 439 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3396 "LibraryWindow.c"
		}
#line 441 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = photo;
#line 441 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = _g_object_ref0 (_tmp6_);
#line 441 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_start);
#line 441 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_start = _tmp7_;
#line 442 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_vala_view_collection);
#line 442 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_view_collection = NULL;
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (photo);
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (collection) {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*collection = _vala_collection;
#line 3418 "LibraryWindow.c"
		} else {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_collection);
#line 3422 "LibraryWindow.c"
		}
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (start) {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*start = _vala_start;
#line 3428 "LibraryWindow.c"
		} else {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_start);
#line 3432 "LibraryWindow.c"
		}
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (view_collection) {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*view_collection = _vala_view_collection;
#line 3438 "LibraryWindow.c"
		} else {
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (_vala_view_collection);
#line 3442 "LibraryWindow.c"
		}
#line 444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 3446 "LibraryWindow.c"
	}
#line 447 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = page;
#line 447 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp8_, TYPE_EVENTS_DIRECTORY_PAGE)) {
#line 3452 "LibraryWindow.c"
		ViewCollection* view = NULL;
		Page* _tmp9_ = NULL;
		ViewCollection* _tmp10_ = NULL;
		ViewCollection* _tmp11_ = NULL;
		gint _tmp12_ = 0;
		Event* event = NULL;
		ViewCollection* _tmp13_ = NULL;
		DataObject* _tmp14_ = NULL;
		DataView* _tmp15_ = NULL;
		DataSource* _tmp16_ = NULL;
		Event* _tmp17_ = NULL;
		Event* _tmp18_ = NULL;
		EventsEventEntry* entry = NULL;
		EventsBranch* _tmp19_ = NULL;
		Event* _tmp20_ = NULL;
		EventsEventEntry* _tmp21_ = NULL;
		EventsEventEntry* _tmp22_ = NULL;
		EventsEventEntry* _tmp23_ = NULL;
		Page* _tmp24_ = NULL;
		Photo* photo = NULL;
		CollectionPage* _tmp25_ = NULL;
		Photo* _tmp26_ = NULL;
		Photo* _tmp27_ = NULL;
		Photo* _tmp28_ = NULL;
		Photo* _tmp29_ = NULL;
#line 448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = page;
#line 448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = page_get_view (_tmp9_);
#line 448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		view = _tmp10_;
#line 449 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = view;
#line 449 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_DATA_COLLECTION, DataCollection));
#line 449 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp12_ == 0) {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (view);
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3498 "LibraryWindow.c"
			} else {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3502 "LibraryWindow.c"
			}
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3508 "LibraryWindow.c"
			} else {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3512 "LibraryWindow.c"
			}
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3518 "LibraryWindow.c"
			} else {
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3522 "LibraryWindow.c"
			}
#line 450 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3526 "LibraryWindow.c"
		}
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = view;
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = data_collection_get_at (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, TYPE_DATA_COLLECTION, DataCollection), 0);
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, TYPE_DATA_VIEW, DataView);
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = data_view_get_source (_tmp15_);
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, TYPE_EVENT, Event);
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp15_);
#line 452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		event = _tmp17_;
#line 453 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = event;
#line 453 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp18_ == NULL) {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (event);
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (view);
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3556 "LibraryWindow.c"
			} else {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3560 "LibraryWindow.c"
			}
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3566 "LibraryWindow.c"
			} else {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3570 "LibraryWindow.c"
			}
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3576 "LibraryWindow.c"
			} else {
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3580 "LibraryWindow.c"
			}
#line 454 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3584 "LibraryWindow.c"
		}
#line 456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = self->priv->events_branch;
#line 456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = event;
#line 456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp21_ = events_branch_get_entry_for_event (_tmp19_, _tmp20_);
#line 456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		entry = _tmp21_;
#line 457 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp22_ = entry;
#line 457 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp22_ == NULL) {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (entry);
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (event);
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (view);
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3610 "LibraryWindow.c"
			} else {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3614 "LibraryWindow.c"
			}
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3620 "LibraryWindow.c"
			} else {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3624 "LibraryWindow.c"
			}
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3630 "LibraryWindow.c"
			} else {
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3634 "LibraryWindow.c"
			}
#line 458 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3638 "LibraryWindow.c"
		}
#line 460 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp23_ = entry;
#line 460 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp24_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 460 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_collection);
#line 460 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_collection = G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (_tmp24_, TYPE_EVENT_PAGE, EventPage), TYPE_COLLECTION_PAGE, CollectionPage);
#line 461 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp25_ = _vala_collection;
#line 461 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp26_ = library_window_get_start_fullscreen_photo (self, _tmp25_);
#line 461 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		photo = _tmp26_;
#line 462 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp27_ = photo;
#line 462 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp27_ == NULL) {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (photo);
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (entry);
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (event);
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (view);
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3672 "LibraryWindow.c"
			} else {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3676 "LibraryWindow.c"
			}
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3682 "LibraryWindow.c"
			} else {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3686 "LibraryWindow.c"
			}
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3692 "LibraryWindow.c"
			} else {
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3696 "LibraryWindow.c"
			}
#line 463 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3700 "LibraryWindow.c"
		}
#line 465 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp28_ = photo;
#line 465 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp29_ = _g_object_ref0 (_tmp28_);
#line 465 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_start);
#line 465 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_start = _tmp29_;
#line 466 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_vala_view_collection);
#line 466 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_view_collection = NULL;
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (photo);
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (entry);
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (event);
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (view);
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (collection) {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*collection = _vala_collection;
#line 3728 "LibraryWindow.c"
		} else {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_collection);
#line 3732 "LibraryWindow.c"
		}
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (start) {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*start = _vala_start;
#line 3738 "LibraryWindow.c"
		} else {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_start);
#line 3742 "LibraryWindow.c"
		}
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (view_collection) {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*view_collection = _vala_view_collection;
#line 3748 "LibraryWindow.c"
		} else {
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (_vala_view_collection);
#line 3752 "LibraryWindow.c"
		}
#line 468 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 3756 "LibraryWindow.c"
	}
#line 471 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp30_ = page;
#line 471 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp30_, TYPE_LIBRARY_PHOTO_PAGE)) {
#line 3762 "LibraryWindow.c"
		LibraryPhotoPage* photo_page = NULL;
		Page* _tmp31_ = NULL;
		LibraryPhotoPage* _tmp32_ = NULL;
		CollectionPage* controller = NULL;
		LibraryPhotoPage* _tmp33_ = NULL;
		CollectionPage* _tmp34_ = NULL;
		CollectionPage* _tmp35_ = NULL;
		LibraryPhotoPage* _tmp36_ = NULL;
		gboolean _tmp37_ = FALSE;
		CollectionPage* _tmp38_ = NULL;
		CollectionPage* _tmp39_ = NULL;
		LibraryPhotoPage* _tmp40_ = NULL;
		Photo* _tmp41_ = NULL;
		LibraryPhotoPage* _tmp42_ = NULL;
		ViewCollection* _tmp43_ = NULL;
#line 472 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp31_ = page;
#line 472 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp32_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPage));
#line 472 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		photo_page = _tmp32_;
#line 474 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp33_ = photo_page;
#line 474 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp34_ = library_photo_page_get_controller_page (_tmp33_);
#line 474 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		controller = _tmp34_;
#line 475 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp35_ = controller;
#line 475 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp35_ == NULL) {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (controller);
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (photo_page);
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3804 "LibraryWindow.c"
			} else {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3808 "LibraryWindow.c"
			}
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3814 "LibraryWindow.c"
			} else {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3818 "LibraryWindow.c"
			}
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3824 "LibraryWindow.c"
			} else {
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3828 "LibraryWindow.c"
			}
#line 476 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3832 "LibraryWindow.c"
		}
#line 478 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp36_ = photo_page;
#line 478 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp37_ = editing_host_page_has_photo (G_TYPE_CHECK_INSTANCE_CAST (_tmp36_, TYPE_EDITING_HOST_PAGE, EditingHostPage));
#line 478 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (!_tmp37_) {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = FALSE;
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (controller);
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (photo_page);
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (collection) {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*collection = _vala_collection;
#line 3850 "LibraryWindow.c"
			} else {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_collection);
#line 3854 "LibraryWindow.c"
			}
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (start) {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*start = _vala_start;
#line 3860 "LibraryWindow.c"
			} else {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_vala_start);
#line 3864 "LibraryWindow.c"
			}
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (view_collection) {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				*view_collection = _vala_view_collection;
#line 3870 "LibraryWindow.c"
			} else {
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (_vala_view_collection);
#line 3874 "LibraryWindow.c"
			}
#line 479 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 3878 "LibraryWindow.c"
		}
#line 481 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp38_ = controller;
#line 481 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp39_ = _g_object_ref0 (_tmp38_);
#line 481 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_collection);
#line 481 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_collection = _tmp39_;
#line 482 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp40_ = photo_page;
#line 482 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp41_ = editing_host_page_get_photo (G_TYPE_CHECK_INSTANCE_CAST (_tmp40_, TYPE_EDITING_HOST_PAGE, EditingHostPage));
#line 482 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_start);
#line 482 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_start = _tmp41_;
#line 483 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp42_ = photo_page;
#line 483 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp43_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp42_, TYPE_PAGE, Page));
#line 483 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_vala_view_collection);
#line 483 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_view_collection = _tmp43_;
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (controller);
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (photo_page);
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (collection) {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*collection = _vala_collection;
#line 3914 "LibraryWindow.c"
		} else {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_collection);
#line 3918 "LibraryWindow.c"
		}
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (start) {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*start = _vala_start;
#line 3924 "LibraryWindow.c"
		} else {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (_vala_start);
#line 3928 "LibraryWindow.c"
		}
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (view_collection) {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			*view_collection = _vala_view_collection;
#line 3934 "LibraryWindow.c"
		} else {
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (_vala_view_collection);
#line 3938 "LibraryWindow.c"
		}
#line 485 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 3942 "LibraryWindow.c"
	}
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = FALSE;
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (collection) {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		*collection = _vala_collection;
#line 3950 "LibraryWindow.c"
	} else {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_collection);
#line 3954 "LibraryWindow.c"
	}
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (start) {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		*start = _vala_start;
#line 3960 "LibraryWindow.c"
	} else {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_vala_start);
#line 3964 "LibraryWindow.c"
	}
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (view_collection) {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		*view_collection = _vala_view_collection;
#line 3970 "LibraryWindow.c"
	} else {
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_vala_view_collection);
#line 3974 "LibraryWindow.c"
	}
#line 488 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 3978 "LibraryWindow.c"
}


static void library_window_real_on_fullscreen (AppWindow* base) {
	LibraryWindow * self;
	Page* current_page = NULL;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	CollectionPage* collection = NULL;
	Photo* start = NULL;
	ViewCollection* view = NULL;
	Page* _tmp2_ = NULL;
	CollectionPage* _tmp3_ = NULL;
	Photo* _tmp4_ = NULL;
	ViewCollection* _tmp5_ = NULL;
	gboolean _tmp6_ = FALSE;
	LibraryWindowFullscreenPhotoPage* fs_photo = NULL;
	CollectionPage* _tmp7_ = NULL;
	Photo* _tmp8_ = NULL;
	ViewCollection* _tmp9_ = NULL;
	LibraryWindowFullscreenPhotoPage* _tmp10_ = NULL;
	LibraryWindowFullscreenPhotoPage* _tmp11_ = NULL;
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 492 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 492 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	current_page = _tmp0_;
#line 493 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = current_page;
#line 493 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp1_ == NULL) {
#line 494 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (current_page);
#line 494 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 4015 "LibraryWindow.c"
	}
#line 498 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = NULL;
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = current_page;
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = library_window_get_fullscreen_photo (self, _tmp2_, &_tmp3_, &_tmp4_, &_tmp5_);
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (collection);
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	collection = _tmp3_;
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (start);
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	start = _tmp4_;
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp5_;
#line 499 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (!_tmp6_) {
#line 500 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (view);
#line 500 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (start);
#line 500 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (collection);
#line 500 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (current_page);
#line 500 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 4047 "LibraryWindow.c"
	}
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = collection;
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = start;
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = view;
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = library_window_fullscreen_photo_page_new (_tmp7_, _tmp8_, _tmp9_);
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp10_);
#line 502 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	fs_photo = _tmp10_;
#line 504 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = fs_photo;
#line 504 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_go_fullscreen (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_PAGE, Page));
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (fs_photo);
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (start);
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (collection);
#line 491 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (current_page);
#line 4075 "LibraryWindow.c"
}


static void _g_free0_ (gpointer var) {
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	var = (g_free (var), NULL);
#line 4082 "LibraryWindow.c"
}


static void _g_slist_free__g_free0_ (GSList* self) {
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_slist_foreach (self, (GFunc) _g_free0_, NULL);
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_slist_free (self);
#line 4091 "LibraryWindow.c"
}


static void library_window_on_file_import (LibraryWindow* self) {
	GtkFileChooserDialog* import_dialog = NULL;
	const gchar* _tmp0_ = NULL;
	GtkFileChooserDialog* _tmp1_ = NULL;
	GtkFileChooserDialog* _tmp2_ = NULL;
	GtkFileChooserDialog* _tmp3_ = NULL;
	GtkFileChooserDialog* _tmp4_ = NULL;
	const gchar* _tmp5_ = NULL;
	GtkCheckButton* recursive = NULL;
	const gchar* _tmp6_ = NULL;
	GtkCheckButton* _tmp7_ = NULL;
	GtkCheckButton* _tmp8_ = NULL;
	gboolean _tmp9_ = FALSE;
	GtkFileChooserDialog* _tmp10_ = NULL;
	GtkCheckButton* _tmp11_ = NULL;
	gint response = 0;
	GtkFileChooserDialog* _tmp12_ = NULL;
	gint _tmp13_ = 0;
	gint _tmp14_ = 0;
	GtkFileChooserDialog* _tmp32_ = NULL;
	gchar* _tmp33_ = NULL;
	GtkCheckButton* _tmp34_ = NULL;
	gboolean _tmp35_ = FALSE;
	gboolean _tmp36_ = FALSE;
	GtkFileChooserDialog* _tmp37_ = NULL;
#line 507 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 508 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = _ ("Import From Folder");
#line 508 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = (GtkFileChooserDialog*) gtk_file_chooser_dialog_new (_tmp0_, NULL, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, RESOURCES_CANCEL_LABEL, GTK_RESPONSE_CANCEL, RESOURCES_OK_LABEL, GTK_RESPONSE_OK, NULL);
#line 508 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp1_);
#line 508 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	import_dialog = _tmp1_;
#line 511 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = import_dialog;
#line 511 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_file_chooser_set_local_only (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser), FALSE);
#line 512 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = import_dialog;
#line 512 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_file_chooser_set_select_multiple (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser), TRUE);
#line 513 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = import_dialog;
#line 513 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = self->priv->import_dir;
#line 513 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_file_chooser_set_current_folder (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser), _tmp5_);
#line 515 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = _ ("Recurse Into Subfolders");
#line 515 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp6_);
#line 515 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp7_);
#line 515 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	recursive = _tmp7_;
#line 516 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = recursive;
#line 516 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = self->priv->import_recursive;
#line 516 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_toggle_button_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_toggle_button_get_type (), GtkToggleButton), _tmp9_);
#line 517 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = import_dialog;
#line 517 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = recursive;
#line 517 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_file_chooser_set_extra_widget (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser), G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_widget_get_type (), GtkWidget));
#line 519 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = import_dialog;
#line 519 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = gtk_dialog_run (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_dialog_get_type (), GtkDialog));
#line 519 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	response = _tmp13_;
#line 521 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = response;
#line 521 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp14_ == ((gint) GTK_RESPONSE_OK)) {
#line 4174 "LibraryWindow.c"
		GtkResponseType _tmp15_ = 0;
		GtkFileChooserDialog* _tmp16_ = NULL;
		gchar* _tmp17_ = NULL;
		gchar* _tmp18_ = NULL;
		GFile* _tmp19_ = NULL;
		GFile* _tmp20_ = NULL;
		gboolean _tmp21_ = FALSE;
		gboolean _tmp22_ = FALSE;
		GtkResponseType copy_files_response = 0;
		GtkResponseType _tmp24_ = 0;
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = import_dialog;
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = gtk_file_chooser_get_uri (G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser));
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = _tmp17_;
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = g_file_new_for_uri (_tmp18_);
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = _tmp19_;
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp21_ = app_dirs_is_in_import_dir (_tmp20_);
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp22_ = _tmp21_;
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp20_);
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_free0 (_tmp18_);
#line 524 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp22_) {
#line 525 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp15_ = GTK_RESPONSE_REJECT;
#line 4207 "LibraryWindow.c"
		} else {
			GtkResponseType _tmp23_ = 0;
#line 525 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp23_ = copy_files_dialog ();
#line 525 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp15_ = _tmp23_;
#line 4214 "LibraryWindow.c"
		}
#line 523 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		copy_files_response = _tmp15_;
#line 527 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp24_ = copy_files_response;
#line 527 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp24_ != GTK_RESPONSE_CANCEL) {
#line 4222 "LibraryWindow.c"
			GtkFileChooserDialog* _tmp25_ = NULL;
			GSList* _tmp26_ = NULL;
			GSList* _tmp27_ = NULL;
			GtkResponseType _tmp28_ = 0;
			GtkCheckButton* _tmp29_ = NULL;
			gboolean _tmp30_ = FALSE;
			gboolean _tmp31_ = FALSE;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp25_ = import_dialog;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp26_ = gtk_file_chooser_get_uris (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser));
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp27_ = _tmp26_;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp28_ = copy_files_response;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp29_ = recursive;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp30_ = gtk_toggle_button_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, gtk_toggle_button_get_type (), GtkToggleButton));
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp31_ = _tmp30_;
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			library_window_dispatch_import_jobs (self, _tmp27_, "folders", _tmp28_ == GTK_RESPONSE_ACCEPT, _tmp31_);
#line 528 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			__g_slist_free__g_free0_0 (_tmp27_);
#line 4248 "LibraryWindow.c"
		}
	}
#line 533 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp32_ = import_dialog;
#line 533 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp33_ = gtk_file_chooser_get_current_folder (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, GTK_TYPE_FILE_CHOOSER, GtkFileChooser));
#line 533 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (self->priv->import_dir);
#line 533 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->import_dir = _tmp33_;
#line 534 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = recursive;
#line 534 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp35_ = gtk_toggle_button_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, gtk_toggle_button_get_type (), GtkToggleButton));
#line 534 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp36_ = _tmp35_;
#line 534 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->import_recursive = _tmp36_;
#line 535 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp37_ = import_dialog;
#line 535 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_destroy (G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, gtk_widget_get_type (), GtkWidget));
#line 507 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (recursive);
#line 507 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (import_dialog);
#line 4275 "LibraryWindow.c"
}


static void library_window_on_external_library_import (LibraryWindow* self) {
	GtkDialog* import_dialog = NULL;
	DataImportsUIDataImportsDialog* _tmp0_ = NULL;
#line 538 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 539 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = data_imports_ui_data_imports_dialog_get_or_create_instance ();
#line 539 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	import_dialog = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_dialog_get_type (), GtkDialog);
#line 541 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_dialog_run (import_dialog);
#line 538 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (import_dialog);
#line 4292 "LibraryWindow.c"
}


static void library_window_real_update_common_action_availability (AppWindow* base, Page* old_page, Page* new_page) {
	LibraryWindow * self;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	gboolean is_checkerboard = FALSE;
	Page* _tmp2_ = NULL;
#line 544 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 544 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((old_page == NULL) || IS_PAGE (old_page));
#line 544 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((new_page == NULL) || IS_PAGE (new_page));
#line 545 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = old_page;
#line 545 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = new_page;
#line 545 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	APP_WINDOW_CLASS (library_window_parent_class)->update_common_action_availability (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), _tmp0_, _tmp1_);
#line 547 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = new_page;
#line 547 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	is_checkerboard = G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, TYPE_CHECKERBOARD_PAGE);
#line 549 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonDisplaySearchbar", is_checkerboard);
#line 550 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonFind", is_checkerboard);
#line 4322 "LibraryWindow.c"
}


static void library_window_real_update_common_actions (AppWindow* base, Page* page, gint selected_count, gint count) {
	LibraryWindow * self;
	CollectionPage* collection = NULL;
	Photo* start = NULL;
	gboolean can_fullscreen = FALSE;
	Page* _tmp0_ = NULL;
	CollectionPage* _tmp1_ = NULL;
	Photo* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	gboolean _tmp4_ = FALSE;
	gboolean _tmp5_ = FALSE;
	Page* _tmp6_ = NULL;
	gint _tmp7_ = 0;
	gint _tmp8_ = 0;
#line 553 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 553 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = library_window_get_fullscreen_photo (self, _tmp0_, &_tmp1_, &_tmp2_, NULL);
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (collection);
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	collection = _tmp1_;
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (start);
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	start = _tmp2_;
#line 559 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	can_fullscreen = _tmp3_;
#line 561 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = library_window_can_empty_trash (self);
#line 561 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonEmptyTrash", _tmp4_);
#line 562 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_visible (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonJumpToEvent", TRUE);
#line 563 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = library_window_can_jump_to_event (self);
#line 563 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonJumpToEvent", _tmp5_);
#line 564 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonFullscreen", can_fullscreen);
#line 566 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = page;
#line 566 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = selected_count;
#line 566 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = count;
#line 566 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	APP_WINDOW_CLASS (library_window_parent_class)->update_common_actions (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), _tmp6_, _tmp7_, _tmp8_);
#line 553 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (start);
#line 553 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (collection);
#line 4382 "LibraryWindow.c"
}


static void library_window_on_trashcan_contents_altered (LibraryWindow* self) {
	gboolean _tmp0_ = FALSE;
#line 569 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 570 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = library_window_can_empty_trash (self);
#line 570 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonEmptyTrash", _tmp0_);
#line 4394 "LibraryWindow.c"
}


static gboolean library_window_can_empty_trash (LibraryWindow* self) {
	gboolean result = FALSE;
	gboolean _tmp0_ = FALSE;
	LibraryPhotoSourceCollection* _tmp1_ = NULL;
	gint _tmp2_ = 0;
#line 573 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_photo_global;
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = media_source_collection_get_trashcan_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection));
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_ > 0) {
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = TRUE;
#line 4413 "LibraryWindow.c"
	} else {
		VideoSourceCollection* _tmp3_ = NULL;
		gint _tmp4_ = 0;
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = video_global;
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = media_source_collection_get_trashcan_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection));
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = _tmp4_ > 0;
#line 4423 "LibraryWindow.c"
	}
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp0_;
#line 574 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 4429 "LibraryWindow.c"
}


static void library_window_on_empty_trash (LibraryWindow* self) {
	GeeArrayList* to_remove = NULL;
	GeeArrayList* _tmp0_ = NULL;
	LibraryPhotoSourceCollection* _tmp1_ = NULL;
	GeeCollection* _tmp2_ = NULL;
	GeeCollection* _tmp3_ = NULL;
	VideoSourceCollection* _tmp4_ = NULL;
	GeeCollection* _tmp5_ = NULL;
	GeeCollection* _tmp6_ = NULL;
	const gchar* _tmp7_ = NULL;
	const gchar* _tmp8_ = NULL;
	CommandManager* _tmp9_ = NULL;
	CommandManager* _tmp10_ = NULL;
#line 577 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 578 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = gee_array_list_new (TYPE_MEDIA_SOURCE, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
#line 578 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	to_remove = _tmp0_;
#line 579 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_photo_global;
#line 579 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = media_source_collection_get_trashcan_contents (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection));
#line 579 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 579 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gee_array_list_add_all (to_remove, _tmp3_);
#line 579 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp3_);
#line 580 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = video_global;
#line 580 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = media_source_collection_get_trashcan_contents (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection));
#line 580 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = _tmp5_;
#line 580 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gee_array_list_add_all (to_remove, _tmp6_);
#line 580 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp6_);
#line 582 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _ ("Empty Trash");
#line 582 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = _ ("Emptying Trash…");
#line 582 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	remove_from_app (G_TYPE_CHECK_INSTANCE_CAST (to_remove, GEE_TYPE_COLLECTION, GeeCollection), _tmp7_, _tmp8_);
#line 584 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = app_window_get_command_manager ();
#line 584 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = _tmp9_;
#line 584 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	command_manager_reset (_tmp10_);
#line 584 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_command_manager_unref0 (_tmp10_);
#line 577 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (to_remove);
#line 4488 "LibraryWindow.c"
}


static void library_window_on_new_search (LibraryWindow* self) {
	SavedSearchDialog* _tmp0_ = NULL;
	SavedSearchDialog* _tmp1_ = NULL;
#line 587 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 588 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = saved_search_dialog_new ();
#line 588 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 588 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	saved_search_dialog_show (_tmp1_);
#line 588 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_saved_search_dialog_unref0 (_tmp1_);
#line 4505 "LibraryWindow.c"
}


static gboolean library_window_can_jump_to_event (LibraryWindow* self) {
	gboolean result = FALSE;
	ViewCollection* view = NULL;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	ViewCollection* _tmp2_ = NULL;
	ViewCollection* _tmp3_ = NULL;
	ViewCollection* _tmp4_ = NULL;
	gint _tmp5_ = 0;
#line 591 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_get_view (_tmp1_);
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 592 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp3_;
#line 593 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view;
#line 593 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = view_collection_get_selected_count (_tmp4_);
#line 593 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp5_ == 1) {
#line 4538 "LibraryWindow.c"
		DataSource* selected_source = NULL;
		ViewCollection* _tmp6_ = NULL;
		DataSource* _tmp7_ = NULL;
		DataSource* _tmp8_ = NULL;
#line 594 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = view;
#line 594 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = view_collection_get_selected_source_at (_tmp6_, 0);
#line 594 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		selected_source = _tmp7_;
#line 595 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = selected_source;
#line 595 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp8_, TYPE_EVENT)) {
#line 596 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = TRUE;
#line 596 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_g_object_unref0 (selected_source);
#line 596 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (view);
#line 596 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 4561 "LibraryWindow.c"
		} else {
			DataSource* _tmp9_ = NULL;
#line 597 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp9_ = selected_source;
#line 597 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, TYPE_MEDIA_SOURCE)) {
#line 4568 "LibraryWindow.c"
				ViewCollection* _tmp10_ = NULL;
				DataSource* _tmp11_ = NULL;
				MediaSource* _tmp12_ = NULL;
				Event* _tmp13_ = NULL;
				Event* _tmp14_ = NULL;
				gboolean _tmp15_ = FALSE;
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp10_ = view;
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp11_ = view_collection_get_selected_source_at (_tmp10_, 0);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp12_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_MEDIA_SOURCE, MediaSource);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp13_ = media_source_get_event (_tmp12_);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp14_ = _tmp13_;
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp15_ = _tmp14_ != NULL;
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_tmp14_);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (_tmp12_);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				result = _tmp15_;
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (selected_source);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (view);
#line 598 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				return result;
#line 4599 "LibraryWindow.c"
			} else {
#line 600 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				result = FALSE;
#line 600 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (selected_source);
#line 600 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_data_collection_unref0 (view);
#line 600 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				return result;
#line 4609 "LibraryWindow.c"
			}
		}
#line 593 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (selected_source);
#line 4614 "LibraryWindow.c"
	} else {
#line 602 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = FALSE;
#line 602 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (view);
#line 602 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 4622 "LibraryWindow.c"
	}
#line 591 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 4626 "LibraryWindow.c"
}


static void library_window_on_jump_to_event (LibraryWindow* self) {
	ViewCollection* view = NULL;
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	ViewCollection* _tmp2_ = NULL;
	ViewCollection* _tmp3_ = NULL;
	ViewCollection* _tmp4_ = NULL;
	gint _tmp5_ = 0;
	MediaSource* media = NULL;
	ViewCollection* _tmp6_ = NULL;
	DataSource* _tmp7_ = NULL;
	MediaSource* _tmp8_ = NULL;
	MediaSource* _tmp9_ = NULL;
	MediaSource* _tmp10_ = NULL;
	Event* _tmp11_ = NULL;
	Event* _tmp12_ = NULL;
	gboolean _tmp13_ = FALSE;
#line 606 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_get_view (_tmp1_);
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 607 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp3_;
#line 609 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view;
#line 609 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = view_collection_get_selected_count (_tmp4_);
#line 609 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp5_ != 1) {
#line 610 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (view);
#line 610 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 4671 "LibraryWindow.c"
	}
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = view;
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = view_collection_get_selected_source_at (_tmp6_, 0);
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp7_, TYPE_MEDIA_SOURCE) ? ((MediaSource*) _tmp7_) : NULL;
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp8_ == NULL) {
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp7_);
#line 4683 "LibraryWindow.c"
	}
#line 612 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	media = _tmp8_;
#line 613 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = media;
#line 613 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp9_ == NULL) {
#line 614 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (media);
#line 614 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (view);
#line 614 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 4697 "LibraryWindow.c"
	}
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = media;
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = media_source_get_event (_tmp10_);
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = _tmp11_;
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = _tmp12_ != NULL;
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp12_);
#line 616 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp13_) {
#line 4711 "LibraryWindow.c"
		MediaSource* _tmp14_ = NULL;
		Event* _tmp15_ = NULL;
		Event* _tmp16_ = NULL;
#line 617 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = media;
#line 617 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = media_source_get_event (_tmp14_);
#line 617 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = _tmp15_;
#line 617 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_event (self, _tmp16_);
#line 617 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp16_);
#line 4725 "LibraryWindow.c"
	}
#line 606 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (media);
#line 606 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 4731 "LibraryWindow.c"
}


static GVariant* _variant_new5 (gboolean value) {
#line 622 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 4738 "LibraryWindow.c"
}


static void library_window_on_find (LibraryWindow* self) {
	GAction* action = NULL;
	GAction* _tmp0_ = NULL;
	GAction* _tmp1_ = NULL;
	GVariant* _tmp2_ = NULL;
	SearchFilterToolbar* _tmp3_ = NULL;
#line 620 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 621 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplaySearchbar");
#line 621 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 621 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	action = _tmp1_;
#line 622 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _variant_new5 (TRUE);
#line 622 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (action, _tmp2_);
#line 622 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp2_);
#line 625 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->search_toolbar;
#line 625 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	search_filter_toolbar_take_focus (_tmp3_);
#line 620 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (action);
#line 4768 "LibraryWindow.c"
}


static void library_window_on_media_altered (LibraryWindow* self) {
	gboolean _tmp0_ = FALSE;
#line 628 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 629 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = library_window_can_jump_to_event (self);
#line 629 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	app_window_set_common_action_sensitive (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), "CommonJumpToEvent", _tmp0_);
#line 4780 "LibraryWindow.c"
}


static void library_window_on_clear_search (LibraryWindow* self) {
	gboolean _tmp0_ = FALSE;
#line 632 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 633 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->is_search_toolbar_visible;
#line 633 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_) {
#line 4792 "LibraryWindow.c"
		SearchFilterActions* _tmp1_ = NULL;
#line 634 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = self->priv->search_actions;
#line 634 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		search_filter_actions_reset (_tmp1_);
#line 4798 "LibraryWindow.c"
	}
}


gint library_window_get_events_sort (LibraryWindow* self) {
	gint result = 0;
	GSimpleAction* action = NULL;
	GAction* _tmp0_ = NULL;
	GSimpleAction* _tmp1_ = NULL;
	gint _tmp2_ = 0;
	GSimpleAction* _tmp3_ = NULL;
#line 637 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), 0);
#line 638 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonSortEvents");
#line 638 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, g_simple_action_get_type ()) ? ((GSimpleAction*) _tmp0_) : NULL);
#line 638 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	action = _tmp1_;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = action;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 4822 "LibraryWindow.c"
		gint _tmp4_ = 0;
		GSimpleAction* _tmp5_ = NULL;
		GVariant* _tmp6_ = NULL;
		GVariant* _tmp7_ = NULL;
		GVariant* _tmp8_ = NULL;
		const gchar* _tmp9_ = NULL;
		gboolean _tmp10_ = FALSE;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = action;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = g_action_get_state (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, g_action_get_type (), GAction));
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = _tmp6_;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = _tmp7_;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = g_variant_get_string (_tmp8_, NULL);
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = g_strcmp0 (_tmp9_, LIBRARY_WINDOW_SORT_EVENTS_ORDER_ASCENDING) == 0;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_variant_unref0 (_tmp8_);
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp10_) {
#line 641 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp4_ = 0;
#line 4848 "LibraryWindow.c"
		} else {
#line 641 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp4_ = 1;
#line 4852 "LibraryWindow.c"
		}
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = _tmp4_;
#line 4856 "LibraryWindow.c"
	} else {
#line 642 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = 1;
#line 4860 "LibraryWindow.c"
	}
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp2_;
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (action);
#line 640 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 4868 "LibraryWindow.c"
}


static void library_window_on_events_sort_changed (LibraryWindow* self, GSimpleAction* action, GVariant* value) {
	ConfigFacade* _tmp0_ = NULL;
	ConfigFacade* _tmp1_ = NULL;
	GVariant* _tmp2_ = NULL;
	const gchar* _tmp3_ = NULL;
	GSimpleAction* _tmp4_ = NULL;
	GVariant* _tmp5_ = NULL;
#line 645 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 645 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = config_facade_get_instance ();
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = value;
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = g_variant_get_string (_tmp2_, NULL);
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_events_sort_ascending (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), g_strcmp0 (_tmp3_, LIBRARY_WINDOW_SORT_EVENTS_ORDER_ASCENDING) == 0);
#line 647 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 650 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = action;
#line 650 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = value;
#line 650 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp4_, _tmp5_);
#line 4901 "LibraryWindow.c"
}


static void library_window_on_preferences (LibraryWindow* self) {
#line 653 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 654 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	preferences_dialog_show_preferences ();
#line 4910 "LibraryWindow.c"
}


static void library_window_on_display_basic_properties (LibraryWindow* self, GSimpleAction* action, GVariant* value) {
	gboolean display = FALSE;
	GVariant* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
	ConfigFacade* _tmp10_ = NULL;
	ConfigFacade* _tmp11_ = NULL;
	gboolean _tmp12_ = FALSE;
	GSimpleAction* _tmp13_ = NULL;
	GVariant* _tmp14_ = NULL;
#line 657 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 657 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 658 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = value;
#line 658 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_variant_get_boolean (_tmp0_);
#line 658 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	display = _tmp1_;
#line 660 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = display;
#line 660 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 4938 "LibraryWindow.c"
		BasicProperties* _tmp3_ = NULL;
		Page* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
		GtkFrame* _tmp6_ = NULL;
#line 661 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = self->priv->basic_properties;
#line 661 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 661 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = _tmp4_;
#line 661 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		properties_update_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_PROPERTIES, Properties), _tmp5_);
#line 661 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp5_);
#line 662 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = self->priv->bottom_frame;
#line 662 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, gtk_widget_get_type (), GtkWidget));
#line 4957 "LibraryWindow.c"
	} else {
		GtkPaned* _tmp7_ = NULL;
		GtkWidget* _tmp8_ = NULL;
#line 664 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = self->priv->sidebar_paned;
#line 664 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = gtk_paned_get_child2 (_tmp7_);
#line 664 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp8_ != NULL) {
#line 4967 "LibraryWindow.c"
			GtkFrame* _tmp9_ = NULL;
#line 665 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp9_ = self->priv->bottom_frame;
#line 665 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_widget_get_type (), GtkWidget));
#line 4973 "LibraryWindow.c"
		}
	}
#line 670 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = config_facade_get_instance ();
#line 670 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = _tmp10_;
#line 670 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = display;
#line 670 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_display_basic_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp12_);
#line 670 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp11_);
#line 671 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = action;
#line 671 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = value;
#line 671 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp13_, _tmp14_);
#line 4992 "LibraryWindow.c"
}


static gboolean _variant_get6 (GVariant* value) {
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_get_boolean (value);
#line 4999 "LibraryWindow.c"
}


static GVariant* _variant_new7 (gboolean value) {
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 5006 "LibraryWindow.c"
}


static void library_window_on_action_toggle (LibraryWindow* self, GAction* action, GVariant* value) {
	GVariant* new_state = NULL;
	GAction* _tmp0_ = NULL;
	GVariant* _tmp1_ = NULL;
	GVariant* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	GVariant* _tmp4_ = NULL;
	GVariant* _tmp5_ = NULL;
	GAction* _tmp6_ = NULL;
#line 674 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 674 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_ACTION (action));
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = action;
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_action_get_state (_tmp0_);
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _variant_get6 (_tmp2_);
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _variant_new7 (!_tmp3_);
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _tmp4_;
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp2_);
#line 675 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	new_state = _tmp5_;
#line 676 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = action;
#line 676 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp6_, new_state);
#line 674 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (new_state);
#line 5045 "LibraryWindow.c"
}


static void library_window_on_action_radio (LibraryWindow* self, GAction* action, GVariant* value) {
	GAction* _tmp0_ = NULL;
	GVariant* _tmp1_ = NULL;
#line 679 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 679 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_ACTION (action));
#line 680 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = action;
#line 680 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = value;
#line 680 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp0_, _tmp1_);
#line 5062 "LibraryWindow.c"
}


static void library_window_on_display_extended_properties (LibraryWindow* self, GSimpleAction* action, GVariant* value) {
	gboolean display = FALSE;
	GVariant* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
	GSimpleAction* _tmp8_ = NULL;
	GVariant* _tmp9_ = NULL;
#line 683 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 683 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 684 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = value;
#line 684 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_variant_get_boolean (_tmp0_);
#line 684 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	display = _tmp1_;
#line 686 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = display;
#line 686 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 5087 "LibraryWindow.c"
		ExtendedPropertiesWindow* _tmp3_ = NULL;
		Page* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
		ExtendedPropertiesWindow* _tmp6_ = NULL;
#line 687 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = self->priv->extended_properties;
#line 687 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 687 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = _tmp4_;
#line 687 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		extended_properties_window_update_properties (_tmp3_, _tmp5_);
#line 687 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp5_);
#line 688 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = self->priv->extended_properties;
#line 688 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, gtk_widget_get_type (), GtkWidget));
#line 5106 "LibraryWindow.c"
	} else {
		ExtendedPropertiesWindow* _tmp7_ = NULL;
#line 690 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = self->priv->extended_properties;
#line 690 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_widget_get_type (), GtkWidget));
#line 5113 "LibraryWindow.c"
	}
#line 693 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = action;
#line 693 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = value;
#line 693 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp8_, _tmp9_);
#line 5121 "LibraryWindow.c"
}


static GVariant* _variant_new8 (gboolean value) {
#line 701 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 5128 "LibraryWindow.c"
}


static void library_window_on_display_searchbar (LibraryWindow* self, GSimpleAction* action, GVariant* value) {
	gboolean is_shown = FALSE;
	GVariant* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	ConfigFacade* _tmp2_ = NULL;
	ConfigFacade* _tmp3_ = NULL;
	GSimpleAction* _tmp4_ = NULL;
	GVariant* _tmp5_ = NULL;
#line 696 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 696 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 697 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = value;
#line 697 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_variant_get_boolean (_tmp0_);
#line 697 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	is_shown = _tmp1_;
#line 699 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = config_facade_get_instance ();
#line 699 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 699 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_display_search_bar (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), is_shown);
#line 699 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp3_);
#line 700 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_show_search_bar (self, is_shown);
#line 701 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = action;
#line 701 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _variant_new8 (is_shown);
#line 701 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp4_, _tmp5_);
#line 701 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp5_);
#line 5168 "LibraryWindow.c"
}


void library_window_show_search_bar (LibraryWindow* self, gboolean display) {
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_ = FALSE;
	gboolean _tmp4_ = FALSE;
	Page* _tmp5_ = NULL;
	CheckerboardPage* _tmp6_ = NULL;
	CheckerboardPage* _tmp7_ = NULL;
	gboolean _tmp8_ = FALSE;
#line 704 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 705 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 705 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 705 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = !G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, TYPE_CHECKERBOARD_PAGE);
#line 705 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 705 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 706 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 5196 "LibraryWindow.c"
	}
#line 708 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = display;
#line 708 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->is_search_toolbar_visible = _tmp3_;
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = library_window_should_show_search_bar (self);
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, TYPE_CHECKERBOARD_PAGE) ? ((CheckerboardPage*) _tmp5_) : NULL;
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp6_ == NULL) {
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp5_);
#line 5212 "LibraryWindow.c"
	}
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _tmp6_;
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_toggle_search_bar (self, _tmp4_, _tmp7_);
#line 709 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp7_);
#line 710 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = display;
#line 710 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (!_tmp8_) {
#line 5224 "LibraryWindow.c"
		SearchFilterActions* _tmp9_ = NULL;
#line 711 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = self->priv->search_actions;
#line 711 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		search_filter_actions_reset (_tmp9_);
#line 5230 "LibraryWindow.c"
	}
}


static void library_window_on_display_sidebar (LibraryWindow* self, GSimpleAction* action, GVariant* variant) {
	GVariant* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	GSimpleAction* _tmp2_ = NULL;
	GVariant* _tmp3_ = NULL;
#line 714 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 714 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 715 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = variant;
#line 715 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_variant_get_boolean (_tmp0_);
#line 715 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_set_sidebar_visible (self, _tmp1_);
#line 717 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = action;
#line 717 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = variant;
#line 717 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp2_, _tmp3_);
#line 5256 "LibraryWindow.c"
}


static void library_window_set_sidebar_visible (LibraryWindow* self, gboolean visible) {
	GtkPaned* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	ConfigFacade* _tmp2_ = NULL;
	ConfigFacade* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
#line 720 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 721 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->sidebar_paned;
#line 721 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = visible;
#line 721 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget), _tmp1_);
#line 722 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = config_facade_get_instance ();
#line 722 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 722 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = visible;
#line 722 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_display_sidebar (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp4_);
#line 722 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp3_);
#line 5284 "LibraryWindow.c"
}


static gboolean library_window_is_sidebar_visible (LibraryWindow* self) {
	gboolean result = FALSE;
	ConfigFacade* _tmp0_ = NULL;
	ConfigFacade* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_ = FALSE;
#line 725 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = config_facade_get_instance ();
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = configuration_facade_get_display_sidebar (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp3_;
#line 726 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 5310 "LibraryWindow.c"
}


static void library_window_on_display_toolbar (LibraryWindow* self, GSimpleAction* action, GVariant* variant) {
	GVariant* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	GSimpleAction* _tmp2_ = NULL;
	GVariant* _tmp3_ = NULL;
#line 729 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 729 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (G_IS_SIMPLE_ACTION (action));
#line 730 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = variant;
#line 730 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_variant_get_boolean (_tmp0_);
#line 730 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_set_toolbar_visible (self, _tmp1_);
#line 732 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = action;
#line 732 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = variant;
#line 732 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_simple_action_set_state (_tmp2_, _tmp3_);
#line 5335 "LibraryWindow.c"
}


static void library_window_set_toolbar_visible (LibraryWindow* self, gboolean visible) {
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	GtkToolbar* toolbar = NULL;
	Page* _tmp3_ = NULL;
	Page* _tmp4_ = NULL;
	GtkToolbar* _tmp5_ = NULL;
	GtkToolbar* _tmp6_ = NULL;
	GtkToolbar* _tmp7_ = NULL;
	ConfigFacade* _tmp10_ = NULL;
	ConfigFacade* _tmp11_ = NULL;
	gboolean _tmp12_ = FALSE;
#line 735 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 736 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 736 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 736 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_ == NULL;
#line 736 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 736 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 737 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 5366 "LibraryWindow.c"
	}
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = page_get_toolbar (_tmp4_);
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = _tmp5_;
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp4_);
#line 740 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	toolbar = _tmp6_;
#line 741 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = toolbar;
#line 741 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp7_ != NULL) {
#line 5384 "LibraryWindow.c"
		GtkRevealer* _tmp8_ = NULL;
		gboolean _tmp9_ = FALSE;
#line 742 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = self->priv->toolbar_revealer;
#line 742 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = visible;
#line 742 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_revealer_set_reveal_child (_tmp8_, _tmp9_);
#line 5393 "LibraryWindow.c"
	}
#line 744 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = config_facade_get_instance ();
#line 744 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = _tmp10_;
#line 744 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = visible;
#line 744 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_display_toolbar (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp12_);
#line 744 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp11_);
#line 735 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (toolbar);
#line 5407 "LibraryWindow.c"
}


static gboolean library_window_is_toolbar_visible (LibraryWindow* self) {
	gboolean result = FALSE;
	ConfigFacade* _tmp0_ = NULL;
	ConfigFacade* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_ = FALSE;
#line 747 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = config_facade_get_instance ();
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = configuration_facade_get_display_toolbar (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp1_);
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp3_;
#line 748 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 5433 "LibraryWindow.c"
}


static void library_window_show_extended_properties (LibraryWindow* self) {
#line 751 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 752 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_sync_extended_properties (self, TRUE);
#line 5442 "LibraryWindow.c"
}


static void library_window_hide_extended_properties (LibraryWindow* self) {
#line 755 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 756 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_sync_extended_properties (self, FALSE);
#line 5451 "LibraryWindow.c"
}


static GVariant* _variant_new9 (gboolean value) {
#line 761 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 5458 "LibraryWindow.c"
}


static void library_window_sync_extended_properties (LibraryWindow* self, gboolean show) {
	GAction* action = NULL;
	GAction* _tmp0_ = NULL;
	GAction* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	GVariant* _tmp3_ = NULL;
	ConfigFacade* _tmp4_ = NULL;
	ConfigFacade* _tmp5_ = NULL;
	gboolean _tmp6_ = FALSE;
#line 759 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 760 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplayExtendedProperties");
#line 760 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 760 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	action = _tmp1_;
#line 761 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = show;
#line 761 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _variant_new9 (_tmp2_);
#line 761 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (action, _tmp3_);
#line 761 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp3_);
#line 764 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = config_facade_get_instance ();
#line 764 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _tmp4_;
#line 764 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = show;
#line 764 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	configuration_facade_set_display_extended_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp6_);
#line 764 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp5_);
#line 759 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (action);
#line 5499 "LibraryWindow.c"
}


void library_window_enqueue_batch_import (LibraryWindow* self, BatchImport* batch_import, gboolean allow_user_cancel) {
	LibraryBranch* _tmp0_ = NULL;
	LibraryImportQueueSidebarEntry* _tmp1_ = NULL;
	LibraryImportQueueSidebarEntry* _tmp2_ = NULL;
	BatchImport* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
#line 767 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 767 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_BATCH_IMPORT (batch_import));
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->library_branch;
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_branch_get_import_queue_entry (_tmp0_);
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = batch_import;
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = allow_user_cancel;
#line 768 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_import_queue_sidebar_entry_enqueue_and_schedule (_tmp2_, _tmp3_, _tmp4_);
#line 5525 "LibraryWindow.c"
}


static void library_window_import_reporter (LibraryWindow* self, ImportManifest* manifest) {
	ImportManifest* _tmp0_ = NULL;
#line 771 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 771 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_IMPORT_MANIFEST (manifest));
#line 772 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = manifest;
#line 772 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	import_ui_report_manifest (_tmp0_, TRUE, NULL);
#line 5539 "LibraryWindow.c"
}


static void _library_window_import_reporter_batch_import_import_reporter (ImportManifest* manifest, BatchImportRoll* import_roll, gpointer self) {
#line 803 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_import_reporter ((LibraryWindow*) self, manifest);
#line 5546 "LibraryWindow.c"
}


static void library_window_dispatch_import_jobs (LibraryWindow* self, GSList* uris, const gchar* job_name, gboolean copy_to_library, gboolean recurse) {
	gboolean _tmp0_ = FALSE;
	GFile* _tmp1_ = NULL;
	GFile* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_ = NULL;
	const gchar* _tmp5_ = NULL;
	gboolean _tmp6_ = FALSE;
	GeeArrayList* jobs = NULL;
	GeeArrayList* _tmp18_ = NULL;
	GSList* _tmp19_ = NULL;
	GeeArrayList* _tmp34_ = NULL;
	gint _tmp35_ = 0;
	gint _tmp36_ = 0;
#line 775 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 775 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (job_name != NULL);
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = app_dirs_get_import_dir ();
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = g_file_get_path (_tmp2_);
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = g_get_home_dir ();
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = g_strcmp0 (_tmp4_, _tmp5_) == 0;
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (_tmp4_);
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp6_) {
#line 5586 "LibraryWindow.c"
		gboolean _tmp7_ = FALSE;
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = self->priv->notify_library_is_home_dir;
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = _tmp7_;
#line 5592 "LibraryWindow.c"
	} else {
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = FALSE;
#line 5596 "LibraryWindow.c"
	}
#line 776 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_) {
#line 5600 "LibraryWindow.c"
		GtkResponseType response = 0;
		const gchar* _tmp8_ = NULL;
		gchar* _tmp9_ = NULL;
		gchar* _tmp10_ = NULL;
		const gchar* _tmp11_ = NULL;
		const gchar* _tmp12_ = NULL;
		AppWindow* _tmp13_ = NULL;
		AppWindow* _tmp14_ = NULL;
		GtkResponseType _tmp15_ = 0;
		GtkResponseType _tmp16_ = 0;
		GtkResponseType _tmp17_ = 0;
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = _ ("Shotwell is configured to import photos to your home directory.\n" "We recommend changing this in <span weight=\"bold\">Edit %s Preference" \
"s</span>.\n" "Do you want to continue importing photos?");
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = g_strdup_printf (_tmp8_, "▸");
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = _tmp9_;
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = _ ("_Import");
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = _ ("Library Location");
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = app_window_get_instance ();
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = _tmp13_;
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = app_window_affirm_cancel_question (_tmp10_, _tmp11_, _tmp12_, G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, gtk_window_get_type (), GtkWindow));
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = _tmp15_;
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp14_);
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_free0 (_tmp10_);
#line 777 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		response = _tmp16_;
#line 783 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = response;
#line 783 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp17_ == GTK_RESPONSE_CANCEL) {
#line 784 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return;
#line 5642 "LibraryWindow.c"
		}
#line 786 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		self->priv->notify_library_is_home_dir = FALSE;
#line 5646 "LibraryWindow.c"
	}
#line 789 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = gee_array_list_new (TYPE_FILE_IMPORT_JOB, (GBoxedCopyFunc) batch_import_job_ref, (GDestroyNotify) batch_import_job_unref, NULL, NULL, NULL);
#line 789 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	jobs = _tmp18_;
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = uris;
#line 5654 "LibraryWindow.c"
	{
		GSList* uri_collection = NULL;
		GSList* uri_it = NULL;
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		uri_collection = _tmp19_;
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		for (uri_it = uri_collection; uri_it != NULL; uri_it = uri_it->next) {
#line 5662 "LibraryWindow.c"
			gchar* _tmp20_ = NULL;
			gchar* uri = NULL;
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp20_ = g_strdup ((const gchar*) uri_it->data);
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			uri = _tmp20_;
#line 5669 "LibraryWindow.c"
			{
				GFile* file_or_dir = NULL;
				const gchar* _tmp21_ = NULL;
				GFile* _tmp22_ = NULL;
				GFile* _tmp23_ = NULL;
				gchar* _tmp24_ = NULL;
				gchar* _tmp25_ = NULL;
				gboolean _tmp26_ = FALSE;
				GeeArrayList* _tmp28_ = NULL;
				GFile* _tmp29_ = NULL;
				gboolean _tmp30_ = FALSE;
				gboolean _tmp31_ = FALSE;
				FileImportJob* _tmp32_ = NULL;
				FileImportJob* _tmp33_ = NULL;
#line 791 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp21_ = uri;
#line 791 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp22_ = g_file_new_for_uri (_tmp21_);
#line 791 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				file_or_dir = _tmp22_;
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp23_ = file_or_dir;
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp24_ = g_file_get_path (_tmp23_);
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp25_ = _tmp24_;
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp26_ = _tmp25_ == NULL;
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_free0 (_tmp25_);
#line 792 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				if (_tmp26_) {
#line 5702 "LibraryWindow.c"
					const gchar* _tmp27_ = NULL;
#line 794 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp27_ = _ ("Photos cannot be imported from this directory.");
#line 794 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					app_window_error_message (_tmp27_, NULL);
#line 796 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_g_object_unref0 (file_or_dir);
#line 796 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_g_free0 (uri);
#line 796 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					continue;
#line 5714 "LibraryWindow.c"
				}
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp28_ = jobs;
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp29_ = file_or_dir;
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp30_ = copy_to_library;
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp31_ = recurse;
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp32_ = file_import_job_new (_tmp29_, _tmp30_, _tmp31_);
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp33_ = _tmp32_;
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp28_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp33_);
#line 799 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_batch_import_job_unref0 (_tmp33_);
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_object_unref0 (file_or_dir);
#line 790 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_free0 (uri);
#line 5736 "LibraryWindow.c"
			}
		}
	}
#line 802 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = jobs;
#line 802 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp35_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection));
#line 802 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp36_ = _tmp35_;
#line 802 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp36_ > 0) {
#line 5748 "LibraryWindow.c"
		BatchImport* batch_import = NULL;
		GeeArrayList* _tmp37_ = NULL;
		const gchar* _tmp38_ = NULL;
		BatchImport* _tmp39_ = NULL;
		BatchImport* _tmp40_ = NULL;
#line 803 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp37_ = jobs;
#line 803 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp38_ = job_name;
#line 803 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp39_ = batch_import_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, GEE_TYPE_ITERABLE, GeeIterable), _tmp38_, _library_window_import_reporter_batch_import_import_reporter, self, NULL, NULL, NULL, NULL, NULL);
#line 803 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		batch_import = _tmp39_;
#line 804 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp40_ = batch_import;
#line 804 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_enqueue_batch_import (self, _tmp40_, TRUE);
#line 805 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_import_queue_page (self);
#line 802 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (batch_import);
#line 5770 "LibraryWindow.c"
	}
#line 775 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (jobs);
#line 5774 "LibraryWindow.c"
}


static GdkDragAction library_window_get_drag_action (LibraryWindow* self) {
	GdkDragAction result = 0;
	GdkModifierType mask = 0;
	GdkWindow* _tmp0_ = NULL;
	GdkDisplay* _tmp1_ = NULL;
	GdkDeviceManager* _tmp2_ = NULL;
	GdkDevice* _tmp3_ = NULL;
	GdkModifierType _tmp4_ = 0;
	gboolean ctrl = FALSE;
	GdkModifierType _tmp5_ = 0;
	gboolean alt = FALSE;
	GdkModifierType _tmp6_ = 0;
	gboolean shift = FALSE;
	GdkModifierType _tmp7_ = 0;
	gboolean _tmp8_ = FALSE;
	gboolean _tmp9_ = FALSE;
	gboolean _tmp10_ = FALSE;
#line 809 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), 0);
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = gtk_widget_get_window (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget));
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = gdk_display_get_default ();
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = gdk_display_get_device_manager (_tmp1_);
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = gdk_device_manager_get_client_pointer (_tmp2_);
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gdk_window_get_device_position (_tmp0_, _tmp3_, NULL, NULL, &_tmp4_);
#line 812 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	mask = _tmp4_;
#line 815 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = mask;
#line 815 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	ctrl = (_tmp5_ & GDK_CONTROL_MASK) != 0;
#line 816 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = mask;
#line 816 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	alt = (_tmp6_ & GDK_MOD1_MASK) != 0;
#line 817 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = mask;
#line 817 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	shift = (_tmp7_ & GDK_SHIFT_MASK) != 0;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = ctrl;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp10_) {
#line 5825 "LibraryWindow.c"
		gboolean _tmp11_ = FALSE;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = alt;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = !_tmp11_;
#line 5831 "LibraryWindow.c"
	} else {
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = FALSE;
#line 5835 "LibraryWindow.c"
	}
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp9_) {
#line 5839 "LibraryWindow.c"
		gboolean _tmp12_ = FALSE;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = shift;
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = !_tmp12_;
#line 5845 "LibraryWindow.c"
	} else {
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = FALSE;
#line 5849 "LibraryWindow.c"
	}
#line 819 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp8_) {
#line 820 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = GDK_ACTION_COPY;
#line 820 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 5857 "LibraryWindow.c"
	} else {
		gboolean _tmp13_ = FALSE;
		gboolean _tmp14_ = FALSE;
		gboolean _tmp15_ = FALSE;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = ctrl;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (!_tmp15_) {
#line 5866 "LibraryWindow.c"
			gboolean _tmp16_ = FALSE;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp16_ = alt;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp14_ = _tmp16_;
#line 5872 "LibraryWindow.c"
		} else {
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp14_ = FALSE;
#line 5876 "LibraryWindow.c"
		}
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp14_) {
#line 5880 "LibraryWindow.c"
			gboolean _tmp17_ = FALSE;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp17_ = shift;
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp13_ = !_tmp17_;
#line 5886 "LibraryWindow.c"
		} else {
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp13_ = FALSE;
#line 5890 "LibraryWindow.c"
		}
#line 821 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp13_) {
#line 822 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			result = GDK_ACTION_ASK;
#line 822 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			return result;
#line 5898 "LibraryWindow.c"
		} else {
			gboolean _tmp18_ = FALSE;
			gboolean _tmp19_ = FALSE;
			gboolean _tmp20_ = FALSE;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp20_ = ctrl;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (_tmp20_) {
#line 5907 "LibraryWindow.c"
				gboolean _tmp21_ = FALSE;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp21_ = alt;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp19_ = !_tmp21_;
#line 5913 "LibraryWindow.c"
			} else {
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp19_ = FALSE;
#line 5917 "LibraryWindow.c"
			}
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (_tmp19_) {
#line 5921 "LibraryWindow.c"
				gboolean _tmp22_ = FALSE;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp22_ = shift;
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp18_ = _tmp22_;
#line 5927 "LibraryWindow.c"
			} else {
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp18_ = FALSE;
#line 5931 "LibraryWindow.c"
			}
#line 823 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (_tmp18_) {
#line 824 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				result = GDK_ACTION_LINK;
#line 824 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				return result;
#line 5939 "LibraryWindow.c"
			} else {
#line 826 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				result = GDK_ACTION_DEFAULT;
#line 826 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				return result;
#line 5945 "LibraryWindow.c"
			}
		}
	}
}


static gboolean library_window_real_drag_motion (GtkWidget* base, GdkDragContext* context, gint x, gint y, guint time) {
	LibraryWindow * self;
	gboolean result = FALSE;
	GdkAtom target = 0U;
	GdkDragContext* _tmp0_ = NULL;
	GtkTargetList* _tmp1_ = NULL;
	GdkAtom _tmp2_ = 0U;
	GdkAtom _tmp3_ = 0U;
	GdkAtom _tmp4_ = 0U;
	GdkDragContext* _tmp7_ = NULL;
	GtkWidget* _tmp8_ = NULL;
	GdkDragAction drag_action = 0;
	GdkDragAction _tmp11_ = 0;
	GdkDragAction _tmp12_ = 0;
	GdkDragContext* _tmp13_ = NULL;
	GdkDragAction _tmp14_ = 0;
	guint _tmp15_ = 0U;
#line 829 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 829 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (GDK_IS_DRAG_CONTEXT (context), FALSE);
#line 830 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = context;
#line 830 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = gtk_drag_dest_get_target_list (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget));
#line 830 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = gtk_drag_dest_find_target (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget), _tmp0_, _tmp1_);
#line 830 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	target = _tmp2_;
#line 831 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = target;
#line 831 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = GDK_NONE;
#line 831 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ == _tmp4_) {
#line 5987 "LibraryWindow.c"
		GdkDragContext* _tmp5_ = NULL;
		guint _tmp6_ = 0U;
#line 832 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:832: drag target is GDK_NONE");
#line 833 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = context;
#line 833 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = time;
#line 833 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gdk_drag_status (_tmp5_, 0, (guint32) _tmp6_);
#line 835 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 835 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 6002 "LibraryWindow.c"
	}
#line 839 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = context;
#line 839 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = gtk_drag_get_source_widget (_tmp7_);
#line 839 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp8_ != NULL) {
#line 6010 "LibraryWindow.c"
		GdkDragContext* _tmp9_ = NULL;
		guint _tmp10_ = 0U;
#line 840 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = context;
#line 840 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = time;
#line 840 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gdk_drag_status (_tmp9_, GDK_ACTION_PRIVATE, (guint32) _tmp10_);
#line 842 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 842 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 6023 "LibraryWindow.c"
	}
#line 846 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = library_window_get_drag_action (self);
#line 846 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	drag_action = _tmp11_;
#line 848 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = drag_action;
#line 848 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp12_ == GDK_ACTION_DEFAULT) {
#line 849 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		drag_action = GDK_ACTION_ASK;
#line 6035 "LibraryWindow.c"
	}
#line 851 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = context;
#line 851 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = drag_action;
#line 851 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = time;
#line 851 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gdk_drag_status (_tmp13_, _tmp14_, (guint32) _tmp15_);
#line 853 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = TRUE;
#line 853 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 6049 "LibraryWindow.c"
}


static void library_window_real_drag_data_received (GtkWidget* base, GdkDragContext* context, gint x, gint y, GtkSelectionData* selection_data, guint info, guint time) {
	LibraryWindow * self;
	GtkSelectionData* _tmp0_ = NULL;
	guchar* _tmp1_ = NULL;
	GdkDragContext* _tmp2_ = NULL;
	GtkWidget* _tmp3_ = NULL;
#line 856 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 856 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
#line 856 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (selection_data != NULL);
#line 858 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = selection_data;
#line 858 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = gtk_selection_data_get_data (_tmp0_);
#line 858 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (-1 < 0) {
#line 859 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:859: failed to retrieve SelectionData");
#line 6073 "LibraryWindow.c"
	}
#line 863 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = context;
#line 863 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = gtk_drag_get_source_widget (_tmp2_);
#line 863 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ == NULL) {
#line 6081 "LibraryWindow.c"
		GdkDragContext* _tmp4_ = NULL;
		GtkSelectionData* _tmp5_ = NULL;
		guint _tmp6_ = 0U;
		guint _tmp7_ = 0U;
#line 864 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = context;
#line 864 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = selection_data;
#line 864 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = info;
#line 864 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = time;
#line 864 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_external_drop_handler (self, _tmp4_, NULL, _tmp5_, _tmp6_, _tmp7_);
#line 6096 "LibraryWindow.c"
	} else {
		GdkDragContext* _tmp8_ = NULL;
		guint _tmp9_ = 0U;
#line 866 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = context;
#line 866 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = time;
#line 866 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_drag_finish (_tmp8_, FALSE, FALSE, (guint32) _tmp9_);
#line 6106 "LibraryWindow.c"
	}
}


static void library_window_external_drop_handler (LibraryWindow* self, GdkDragContext* context, SidebarEntry* entry, GtkSelectionData* data, guint info, guint time) {
	gchar** uris_array = NULL;
	GtkSelectionData* _tmp0_ = NULL;
	gchar** _tmp1_ = NULL;
	gchar** _tmp2_ = NULL;
	gint uris_array_length1 = 0;
	gint _uris_array_size_ = 0;
	GSList* uris = NULL;
	gchar** _tmp3_ = NULL;
	gint _tmp3__length1 = 0;
	GdkDragAction selected_action = 0;
	GdkDragContext* _tmp7_ = NULL;
	GdkDragAction _tmp8_ = 0;
	GdkDragAction _tmp9_ = 0;
	GSList* _tmp21_ = NULL;
	GdkDragAction _tmp22_ = 0;
	GdkDragContext* _tmp23_ = NULL;
	guint _tmp24_ = 0U;
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((entry == NULL) || SIDEBAR_IS_ENTRY (entry));
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (data != NULL);
#line 871 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = data;
#line 871 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_ = gtk_selection_data_get_uris (_tmp0_);
#line 871 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uris_array = _tmp2_;
#line 871 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uris_array_length1 = _vala_array_length (_tmp1_);
#line 871 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_uris_array_size_ = uris_array_length1;
#line 873 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uris = NULL;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = uris_array;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3__length1 = uris_array_length1;
#line 6153 "LibraryWindow.c"
	{
		gchar** uri_collection = NULL;
		gint uri_collection_length1 = 0;
		gint _uri_collection_size_ = 0;
		gint uri_it = 0;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		uri_collection = _tmp3_;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		uri_collection_length1 = _tmp3__length1;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		for (uri_it = 0; uri_it < _tmp3__length1; uri_it = uri_it + 1) {
#line 6165 "LibraryWindow.c"
			gchar* _tmp4_ = NULL;
			gchar* uri = NULL;
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp4_ = g_strdup (uri_collection[uri_it]);
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			uri = _tmp4_;
#line 6172 "LibraryWindow.c"
			{
				const gchar* _tmp5_ = NULL;
				gchar* _tmp6_ = NULL;
#line 875 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp5_ = uri;
#line 875 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp6_ = g_strdup (_tmp5_);
#line 875 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				uris = g_slist_append (uris, _tmp6_);
#line 874 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_g_free0 (uri);
#line 6184 "LibraryWindow.c"
			}
		}
	}
#line 877 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = context;
#line 877 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = gdk_drag_context_get_selected_action (_tmp7_);
#line 877 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	selected_action = _tmp8_;
#line 878 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = selected_action;
#line 878 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp9_ == GDK_ACTION_ASK) {
#line 6198 "LibraryWindow.c"
		GtkResponseType _result_ = 0;
		GSList* _tmp10_ = NULL;
		GtkResponseType _tmp18_ = 0;
#line 880 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_result_ = GTK_RESPONSE_REJECT;
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = uris;
#line 6206 "LibraryWindow.c"
		{
			GSList* uri_collection = NULL;
			GSList* uri_it = NULL;
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			uri_collection = _tmp10_;
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			for (uri_it = uri_collection; uri_it != NULL; uri_it = uri_it->next) {
#line 6214 "LibraryWindow.c"
				gchar* _tmp11_ = NULL;
				gchar* uri = NULL;
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp11_ = g_strdup ((const gchar*) uri_it->data);
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				uri = _tmp11_;
#line 6221 "LibraryWindow.c"
				{
					const gchar* _tmp12_ = NULL;
					GFile* _tmp13_ = NULL;
					GFile* _tmp14_ = NULL;
					gboolean _tmp15_ = FALSE;
					gboolean _tmp16_ = FALSE;
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp12_ = uri;
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp13_ = g_file_new_for_uri (_tmp12_);
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp14_ = _tmp13_;
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp15_ = app_dirs_is_in_import_dir (_tmp14_);
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_tmp16_ = !_tmp15_;
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_g_object_unref0 (_tmp14_);
#line 882 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					if (_tmp16_) {
#line 6242 "LibraryWindow.c"
						GtkResponseType _tmp17_ = 0;
#line 883 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
						_tmp17_ = copy_files_dialog ();
#line 883 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
						_result_ = _tmp17_;
#line 885 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
						_g_free0 (uri);
#line 885 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
						break;
#line 6252 "LibraryWindow.c"
					}
#line 881 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
					_g_free0 (uri);
#line 6256 "LibraryWindow.c"
				}
			}
		}
#line 889 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = _result_;
#line 889 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		switch (_tmp18_) {
#line 889 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			case GTK_RESPONSE_ACCEPT:
#line 6266 "LibraryWindow.c"
			{
#line 891 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				selected_action = GDK_ACTION_COPY;
#line 892 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				break;
#line 6272 "LibraryWindow.c"
			}
#line 889 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			case GTK_RESPONSE_REJECT:
#line 6276 "LibraryWindow.c"
			{
#line 895 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				selected_action = GDK_ACTION_LINK;
#line 896 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				break;
#line 6282 "LibraryWindow.c"
			}
			default:
			{
				GdkDragContext* _tmp19_ = NULL;
				guint _tmp20_ = 0U;
#line 900 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp19_ = context;
#line 900 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				_tmp20_ = time;
#line 900 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				gtk_drag_finish (_tmp19_, FALSE, FALSE, (guint32) _tmp20_);
#line 902 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				__g_slist_free__g_free0_0 (uris);
#line 902 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				uris_array = (_vala_array_free (uris_array, uris_array_length1, (GDestroyNotify) g_free), NULL);
#line 902 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				return;
#line 6300 "LibraryWindow.c"
			}
		}
	}
#line 906 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp21_ = uris;
#line 906 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = selected_action;
#line 906 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_dispatch_import_jobs (self, _tmp21_, "drag-and-drop", _tmp22_ == GDK_ACTION_COPY, TRUE);
#line 908 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp23_ = context;
#line 908 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp24_ = time;
#line 908 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_drag_finish (_tmp23_, TRUE, FALSE, (guint32) _tmp24_);
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	__g_slist_free__g_free0_0 (uris);
#line 869 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uris_array = (_vala_array_free (uris_array, uris_array_length1, (GDestroyNotify) g_free), NULL);
#line 6320 "LibraryWindow.c"
}


void library_window_switch_to_library_page (LibraryWindow* self) {
	LibraryBranch* _tmp0_ = NULL;
	LibraryPhotosEntry* _tmp1_ = NULL;
	LibraryPhotosEntry* _tmp2_ = NULL;
	Page* _tmp3_ = NULL;
	Page* _tmp4_ = NULL;
#line 911 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->library_branch;
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_branch_get_photos_entry (_tmp0_);
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, _tmp4_);
#line 912 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp4_);
#line 6346 "LibraryWindow.c"
}


void library_window_switch_to_event (LibraryWindow* self, Event* event) {
	EventsEventEntry* entry = NULL;
	EventsBranch* _tmp0_ = NULL;
	Event* _tmp1_ = NULL;
	EventsEventEntry* _tmp2_ = NULL;
	EventsEventEntry* _tmp3_ = NULL;
#line 915 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 915 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_EVENT (event));
#line 916 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->events_branch;
#line 916 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = event;
#line 916 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = events_branch_get_entry_for_event (_tmp0_, _tmp1_);
#line 916 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 917 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 917 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 6372 "LibraryWindow.c"
		EventsEventEntry* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
		Page* _tmp6_ = NULL;
#line 918 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = entry;
#line 918 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 918 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = _tmp5_;
#line 918 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp6_);
#line 918 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp6_);
#line 6386 "LibraryWindow.c"
	}
#line 915 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 6390 "LibraryWindow.c"
}


void library_window_switch_to_tag (LibraryWindow* self, Tag* tag) {
	TagsSidebarEntry* entry = NULL;
	TagsBranch* _tmp0_ = NULL;
	Tag* _tmp1_ = NULL;
	TagsSidebarEntry* _tmp2_ = NULL;
	TagsSidebarEntry* _tmp3_ = NULL;
#line 921 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 921 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_TAG (tag));
#line 922 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->tags_branch;
#line 922 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = tag;
#line 922 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = tags_branch_get_entry_for_tag (_tmp0_, _tmp1_);
#line 922 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 923 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 923 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 6416 "LibraryWindow.c"
		TagsSidebarEntry* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
		Page* _tmp6_ = NULL;
#line 924 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = entry;
#line 924 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 924 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = _tmp5_;
#line 924 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp6_);
#line 924 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp6_);
#line 6430 "LibraryWindow.c"
	}
#line 921 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 6434 "LibraryWindow.c"
}


void library_window_switch_to_saved_search (LibraryWindow* self, SavedSearch* search) {
	SearchesSidebarEntry* entry = NULL;
	SearchesBranch* _tmp0_ = NULL;
	SavedSearch* _tmp1_ = NULL;
	SearchesSidebarEntry* _tmp2_ = NULL;
	SearchesSidebarEntry* _tmp3_ = NULL;
#line 927 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 927 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_SAVED_SEARCH (search));
#line 928 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->saved_search_branch;
#line 928 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = search;
#line 928 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = searches_branch_get_entry_for_saved_search (_tmp0_, _tmp1_);
#line 928 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 929 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 929 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ != NULL) {
#line 6460 "LibraryWindow.c"
		SearchesSidebarEntry* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
		Page* _tmp6_ = NULL;
#line 930 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = entry;
#line 930 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 930 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = _tmp5_;
#line 930 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp6_);
#line 930 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp6_);
#line 6474 "LibraryWindow.c"
	}
#line 927 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 6478 "LibraryWindow.c"
}


void library_window_switch_to_photo_page (LibraryWindow* self, CollectionPage* controller, Photo* current) {
	CollectionPage* _tmp0_ = NULL;
	ViewCollection* _tmp1_ = NULL;
	ViewCollection* _tmp2_ = NULL;
	Photo* _tmp3_ = NULL;
	DataView* _tmp4_ = NULL;
	DataView* _tmp5_ = NULL;
	LibraryPhotoPage* _tmp6_ = NULL;
	LibraryPhotoPage* _tmp9_ = NULL;
	CollectionPage* _tmp10_ = NULL;
	Photo* _tmp11_ = NULL;
	LibraryPhotoPage* _tmp12_ = NULL;
#line 933 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 933 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_COLLECTION_PAGE (controller));
#line 933 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PHOTO (current));
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = controller;
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_PAGE, Page));
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = current;
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view_collection_get_view_for_source (_tmp2_, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_SOURCE, DataSource));
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _tmp4_;
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp5_ != NULL, "controller.get_view().get_view_for_source(current) != null");
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp5_);
#line 934 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (_tmp2_);
#line 935 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->photo_page;
#line 935 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp6_ == NULL) {
#line 6522 "LibraryWindow.c"
		LibraryPhotoPage* _tmp7_ = NULL;
		LibraryPhotoPage* _tmp8_ = NULL;
#line 936 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = library_photo_page_new ();
#line 936 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_object_ref_sink (_tmp7_);
#line 936 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (self->priv->photo_page);
#line 936 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		self->priv->photo_page = _tmp7_;
#line 937 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = self->priv->photo_page;
#line 937 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_add_to_stack (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_PAGE, Page));
#line 941 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		spin_event_loop ();
#line 6539 "LibraryWindow.c"
	}
#line 944 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = self->priv->photo_page;
#line 944 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = controller;
#line 944 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = current;
#line 944 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_photo_page_display_for_collection (_tmp9_, _tmp10_, _tmp11_, NULL);
#line 945 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = self->priv->photo_page;
#line 945 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_PAGE, Page));
#line 6553 "LibraryWindow.c"
}


void library_window_switch_to_import_queue_page (LibraryWindow* self) {
	LibraryBranch* _tmp0_ = NULL;
	LibraryImportQueueSidebarEntry* _tmp1_ = NULL;
	LibraryImportQueueSidebarEntry* _tmp2_ = NULL;
	Page* _tmp3_ = NULL;
	Page* _tmp4_ = NULL;
#line 948 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->library_branch;
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_branch_get_import_queue_entry (_tmp0_);
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, _tmp4_);
#line 949 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp4_);
#line 6579 "LibraryWindow.c"
}


static void library_window_on_camera_added (LibraryWindow* self, DiscoveredCamera* camera) {
	CameraSidebarEntry* entry = NULL;
	CameraBranch* _tmp0_ = NULL;
	DiscoveredCamera* _tmp1_ = NULL;
	CameraSidebarEntry* _tmp2_ = NULL;
	CameraSidebarEntry* _tmp3_ = NULL;
	ImportPage* page = NULL;
	CameraSidebarEntry* _tmp4_ = NULL;
	Page* _tmp5_ = NULL;
	GFile* uri_file = NULL;
	DiscoveredCamera* _tmp6_ = NULL;
	const gchar* _tmp7_ = NULL;
	GFile* _tmp8_ = NULL;
	GMount* mount = NULL;
	gboolean _tmp13_ = FALSE;
	GMount* _tmp14_ = NULL;
	GError * _inner_error_ = NULL;
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_DISCOVERED_CAMERA (camera));
#line 953 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->camera_branch;
#line 953 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = camera;
#line 953 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = camera_branch_get_entry_for_camera (_tmp0_, _tmp1_);
#line 953 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = _tmp2_;
#line 954 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = entry;
#line 954 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_ == NULL) {
#line 955 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (entry);
#line 955 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 6620 "LibraryWindow.c"
	}
#line 957 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = entry;
#line 957 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 957 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	page = G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_IMPORT_PAGE, ImportPage);
#line 958 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = camera;
#line 958 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _tmp6_->uri;
#line 958 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = g_file_new_for_uri (_tmp7_);
#line 958 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uri_file = _tmp8_;
#line 961 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	mount = NULL;
#line 6638 "LibraryWindow.c"
	{
		GMount* _tmp9_ = NULL;
		GFile* _tmp10_ = NULL;
		GMount* _tmp11_ = NULL;
		GMount* _tmp12_ = NULL;
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = uri_file;
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = g_file_find_enclosing_mount (_tmp10_, NULL, &_inner_error_);
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = _tmp11_;
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 6652 "LibraryWindow.c"
			goto __catch42_g_error;
		}
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = _tmp9_;
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = NULL;
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (mount);
#line 963 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		mount = _tmp12_;
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp9_);
#line 6665 "LibraryWindow.c"
	}
	goto __finally42;
	__catch42_g_error:
	{
		GError* err = NULL;
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		err = _inner_error_;
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_inner_error_ = NULL;
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_error_free0 (err);
#line 6677 "LibraryWindow.c"
	}
	__finally42:
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (mount);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (uri_file);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (page);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (entry);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_clear_error (&_inner_error_);
#line 962 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 6696 "LibraryWindow.c"
	}
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = mount;
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp14_ != NULL) {
#line 6702 "LibraryWindow.c"
		DiscoveredCamera* _tmp15_ = NULL;
		const gchar* _tmp16_ = NULL;
		gboolean _tmp17_ = FALSE;
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = camera;
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = _tmp15_->uri;
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = g_str_has_prefix (_tmp16_, "file://");
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = !_tmp17_;
#line 6714 "LibraryWindow.c"
	} else {
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = FALSE;
#line 6718 "LibraryWindow.c"
	}
#line 969 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp13_) {
#line 6722 "LibraryWindow.c"
		ImportPage* _tmp18_ = NULL;
		GMount* _tmp19_ = NULL;
		gboolean _tmp20_ = FALSE;
#line 970 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = page;
#line 970 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = mount;
#line 970 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = import_page_unmount_camera (_tmp18_, _tmp19_);
#line 970 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp20_) {
#line 6734 "LibraryWindow.c"
			ImportPage* _tmp21_ = NULL;
#line 971 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp21_ = page;
#line 971 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			library_window_switch_to_page (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, TYPE_PAGE, Page));
#line 6740 "LibraryWindow.c"
		} else {
#line 973 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			app_window_error_message ("Unable to unmount the camera at this time.", NULL);
#line 6744 "LibraryWindow.c"
		}
	} else {
		ImportPage* _tmp22_ = NULL;
#line 975 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp22_ = page;
#line 975 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, TYPE_PAGE, Page));
#line 6752 "LibraryWindow.c"
	}
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (mount);
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (uri_file);
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (page);
#line 952 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 6762 "LibraryWindow.c"
}


void library_window_add_to_stack (LibraryWindow* self, Page* page) {
	Page* _tmp0_ = NULL;
	GtkStack* _tmp1_ = NULL;
	Page* _tmp2_ = NULL;
	GtkStack* _tmp3_ = NULL;
#line 980 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 980 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 982 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 982 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget));
#line 984 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->stack;
#line 984 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page;
#line 984 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget));
#line 986 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->stack;
#line 986 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_widget_get_type (), GtkWidget));
#line 6789 "LibraryWindow.c"
}


static void library_window_remove_from_stack (LibraryWindow* self, Page* page) {
	GtkStack* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	GtkStack* _tmp2_ = NULL;
#line 989 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 989 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 990 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->stack;
#line 990 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page;
#line 990 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_widget_get_type (), GtkWidget));
#line 993 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->stack;
#line 993 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget));
#line 6811 "LibraryWindow.c"
}


static GVariant* _variant_new10 (gboolean value) {
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 6818 "LibraryWindow.c"
}


static GVariant* _variant_new11 (gboolean value) {
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 6825 "LibraryWindow.c"
}


static GVariant* _variant_new12 (gboolean value) {
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_boolean (value));
#line 6832 "LibraryWindow.c"
}


static GVariant* _variant_new13 (const gchar* value) {
#line 1019 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return g_variant_ref_sink (g_variant_new_string (value));
#line 6839 "LibraryWindow.c"
}


static void library_window_load_configuration (LibraryWindow* self) {
	GAction* basic_display_action = NULL;
	GAction* _tmp0_ = NULL;
	GAction* _tmp1_ = NULL;
	GAction* _tmp2_ = NULL;
	GAction* _tmp3_ = NULL;
	ConfigFacade* _tmp4_ = NULL;
	ConfigFacade* _tmp5_ = NULL;
	gboolean _tmp6_ = FALSE;
	GVariant* _tmp7_ = NULL;
	GAction* extended_display_action = NULL;
	GAction* _tmp8_ = NULL;
	GAction* _tmp9_ = NULL;
	GAction* _tmp10_ = NULL;
	GAction* _tmp11_ = NULL;
	ConfigFacade* _tmp12_ = NULL;
	ConfigFacade* _tmp13_ = NULL;
	gboolean _tmp14_ = FALSE;
	GVariant* _tmp15_ = NULL;
	GAction* search_bar_display_action = NULL;
	GAction* _tmp16_ = NULL;
	GAction* _tmp17_ = NULL;
	GAction* _tmp18_ = NULL;
	GAction* _tmp19_ = NULL;
	ConfigFacade* _tmp20_ = NULL;
	ConfigFacade* _tmp21_ = NULL;
	gboolean _tmp22_ = FALSE;
	GVariant* _tmp23_ = NULL;
	GAction* sort_events_action = NULL;
	GAction* _tmp24_ = NULL;
	GAction* _tmp25_ = NULL;
	GAction* _tmp26_ = NULL;
	const gchar* _tmp27_ = NULL;
	ConfigFacade* _tmp28_ = NULL;
	ConfigFacade* _tmp29_ = NULL;
	gboolean _tmp30_ = FALSE;
	gboolean _tmp31_ = FALSE;
	gchar* event_sort_val = NULL;
	gchar* _tmp32_ = NULL;
	GAction* _tmp33_ = NULL;
	GVariant* _tmp34_ = NULL;
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 998 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplayBasicProperties");
#line 998 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 998 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	basic_display_action = _tmp1_;
#line 999 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = basic_display_action;
#line 999 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp2_ != NULL, "basic_display_action != null");
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = basic_display_action;
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = config_facade_get_instance ();
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _tmp4_;
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = configuration_facade_get_display_basic_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = _variant_new10 (_tmp6_);
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp3_, _tmp7_);
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp7_);
#line 1000 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp5_);
#line 1002 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplayExtendedProperties");
#line 1002 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = _g_object_ref0 (_tmp8_);
#line 1002 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	extended_display_action = _tmp9_;
#line 1003 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = extended_display_action;
#line 1003 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp10_ != NULL, "extended_display_action != null");
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = extended_display_action;
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = config_facade_get_instance ();
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = _tmp12_;
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = configuration_facade_get_display_extended_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = _variant_new11 (_tmp14_);
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp11_, _tmp15_);
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp15_);
#line 1004 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp13_);
#line 1006 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonDisplaySearchbar");
#line 1006 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = _g_object_ref0 (_tmp16_);
#line 1006 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	search_bar_display_action = _tmp17_;
#line 1007 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = search_bar_display_action;
#line 1007 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp18_ != NULL, "search_bar_display_action != null");
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = search_bar_display_action;
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp20_ = config_facade_get_instance ();
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp21_ = _tmp20_;
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = configuration_facade_get_display_search_bar (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp23_ = _variant_new12 (_tmp22_);
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp19_, _tmp23_);
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp23_);
#line 1008 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp21_);
#line 1010 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp24_ = g_action_map_lookup_action (G_TYPE_CHECK_INSTANCE_CAST (self, g_action_map_get_type (), GActionMap), "CommonSortEvents");
#line 1010 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp25_ = _g_object_ref0 (_tmp24_);
#line 1010 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	sort_events_action = _tmp25_;
#line 1011 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp26_ = sort_events_action;
#line 1011 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (_tmp26_ != NULL, "sort_events_action != null");
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp28_ = config_facade_get_instance ();
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp29_ = _tmp28_;
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp30_ = configuration_facade_get_events_sort_ascending (G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp31_ = _tmp30_;
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp29_);
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp31_) {
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp27_ = LIBRARY_WINDOW_SORT_EVENTS_ORDER_ASCENDING;
#line 6988 "LibraryWindow.c"
	} else {
#line 1017 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp27_ = LIBRARY_WINDOW_SORT_EVENTS_ORDER_DESCENDING;
#line 6992 "LibraryWindow.c"
	}
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp32_ = g_strdup (_tmp27_);
#line 1016 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	event_sort_val = _tmp32_;
#line 1019 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp33_ = sort_events_action;
#line 1019 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = _variant_new13 (event_sort_val);
#line 1019 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_action_change_state (_tmp33_, _tmp34_);
#line 1019 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_variant_unref0 (_tmp34_);
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (event_sort_val);
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (sort_events_action);
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (search_bar_display_action);
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (extended_display_action);
#line 997 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (basic_display_action);
#line 7016 "LibraryWindow.c"
}


static gboolean _library_window_on_pulse_background_progress_bar_gsource_func (gpointer self) {
	gboolean result;
	result = library_window_on_pulse_background_progress_bar ((LibraryWindow*) self);
#line 1034 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 7025 "LibraryWindow.c"
}


static void library_window_start_pulse_background_progress_bar (LibraryWindow* self, const gchar* label, gint priority) {
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
	gint _tmp2_ = 0;
	gint _tmp3_ = 0;
	GtkProgressBar* _tmp4_ = NULL;
	const gchar* _tmp5_ = NULL;
	GtkProgressBar* _tmp6_ = NULL;
	guint _tmp7_ = 0U;
#line 1022 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1022 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (label != NULL);
#line 1023 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = priority;
#line 1023 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->current_progress_priority;
#line 1023 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < _tmp1_) {
#line 1024 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7050 "LibraryWindow.c"
	}
#line 1026 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = priority;
#line 1026 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_stop_pulse_background_progress_bar (self, _tmp2_, FALSE);
#line 1028 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = priority;
#line 1028 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->current_progress_priority = _tmp3_;
#line 1030 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = self->priv->background_progress_bar;
#line 1030 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = label;
#line 1030 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_text (_tmp4_, _tmp5_);
#line 1031 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->background_progress_bar;
#line 1031 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_pulse (_tmp6_);
#line 1032 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_show_background_progress_bar (self);
#line 1034 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) LIBRARY_WINDOW_BACKGROUND_PROGRESS_PULSE_MSEC, _library_window_on_pulse_background_progress_bar_gsource_func, g_object_ref (self), g_object_unref);
#line 1034 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->background_progress_pulse_id = _tmp7_;
#line 7076 "LibraryWindow.c"
}


static gboolean library_window_on_pulse_background_progress_bar (LibraryWindow* self) {
	gboolean result = FALSE;
	GtkProgressBar* _tmp0_ = NULL;
#line 1038 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 1039 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->background_progress_bar;
#line 1039 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_pulse (_tmp0_);
#line 1041 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = TRUE;
#line 1041 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 7093 "LibraryWindow.c"
}


static void library_window_stop_pulse_background_progress_bar (LibraryWindow* self, gint priority, gboolean clear) {
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
	guint _tmp2_ = 0U;
	gboolean _tmp4_ = FALSE;
#line 1044 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1045 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = priority;
#line 1045 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->current_progress_priority;
#line 1045 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < _tmp1_) {
#line 1046 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7112 "LibraryWindow.c"
	}
#line 1048 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->background_progress_pulse_id;
#line 1048 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_ != ((guint) 0)) {
#line 7118 "LibraryWindow.c"
		guint _tmp3_ = 0U;
#line 1049 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = self->priv->background_progress_pulse_id;
#line 1049 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_source_remove (_tmp3_);
#line 1050 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		self->priv->background_progress_pulse_id = (guint) 0;
#line 7126 "LibraryWindow.c"
	}
#line 1053 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = clear;
#line 1053 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_) {
#line 7132 "LibraryWindow.c"
		gint _tmp5_ = 0;
#line 1054 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = priority;
#line 1054 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_clear_background_progress_bar (self, _tmp5_);
#line 7138 "LibraryWindow.c"
	}
}


static void library_window_update_background_progress_bar (LibraryWindow* self, const gchar* label, gint priority, gdouble count, gdouble total) {
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
	gint _tmp2_ = 0;
	gboolean _tmp3_ = FALSE;
	gboolean _tmp4_ = FALSE;
	gdouble _tmp5_ = 0.0;
	gint _tmp10_ = 0;
	gdouble fraction = 0.0;
	gdouble _tmp11_ = 0.0;
	gdouble _tmp12_ = 0.0;
	GtkProgressBar* _tmp13_ = NULL;
	gdouble _tmp14_ = 0.0;
	GtkProgressBar* _tmp15_ = NULL;
	const gchar* _tmp16_ = NULL;
	const gchar* _tmp17_ = NULL;
	gdouble _tmp18_ = 0.0;
	gchar* _tmp19_ = NULL;
	gchar* _tmp20_ = NULL;
#line 1057 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1057 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (label != NULL);
#line 1059 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = priority;
#line 1059 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->current_progress_priority;
#line 1059 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < _tmp1_) {
#line 1060 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7174 "LibraryWindow.c"
	}
#line 1062 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = priority;
#line 1062 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_stop_pulse_background_progress_bar (self, _tmp2_, FALSE);
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = count;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp5_ <= 0.0) {
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = TRUE;
#line 7186 "LibraryWindow.c"
	} else {
		gdouble _tmp6_ = 0.0;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = total;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = _tmp6_ <= 0.0;
#line 7193 "LibraryWindow.c"
	}
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_) {
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = TRUE;
#line 7199 "LibraryWindow.c"
	} else {
		gdouble _tmp7_ = 0.0;
		gdouble _tmp8_ = 0.0;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = count;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = total;
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = _tmp7_ >= _tmp8_;
#line 7209 "LibraryWindow.c"
	}
#line 1064 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_) {
#line 7213 "LibraryWindow.c"
		gint _tmp9_ = 0;
#line 1065 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = priority;
#line 1065 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_clear_background_progress_bar (self, _tmp9_);
#line 1067 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7221 "LibraryWindow.c"
	}
#line 1070 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = priority;
#line 1070 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->current_progress_priority = _tmp10_;
#line 1072 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = count;
#line 1072 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = total;
#line 1072 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	fraction = _tmp11_ / _tmp12_;
#line 1073 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = self->priv->background_progress_bar;
#line 1073 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = fraction;
#line 1073 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_fraction (_tmp13_, _tmp14_);
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = self->priv->background_progress_bar;
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = _ ("%s (%d%%)");
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = label;
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = fraction;
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = g_strdup_printf (_tmp16_, _tmp17_, (gint) (_tmp18_ * 100.0));
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp20_ = _tmp19_;
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_text (_tmp15_, _tmp20_);
#line 1074 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (_tmp20_);
#line 1075 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_show_background_progress_bar (self);
#line 7257 "LibraryWindow.c"
}


static void library_window_clear_background_progress_bar (LibraryWindow* self, gint priority) {
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
	gint _tmp2_ = 0;
	GtkProgressBar* _tmp3_ = NULL;
	GtkProgressBar* _tmp4_ = NULL;
#line 1084 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1085 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = priority;
#line 1085 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->current_progress_priority;
#line 1085 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < _tmp1_) {
#line 1086 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7277 "LibraryWindow.c"
	}
#line 1088 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = priority;
#line 1088 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_stop_pulse_background_progress_bar (self, _tmp2_, FALSE);
#line 1090 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->current_progress_priority = 0;
#line 1092 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->background_progress_bar;
#line 1092 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_fraction (_tmp3_, 0.0);
#line 1093 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = self->priv->background_progress_bar;
#line 1093 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_progress_bar_set_text (_tmp4_, "");
#line 1094 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_hide_background_progress_bar (self);
#line 7295 "LibraryWindow.c"
}


static void library_window_show_background_progress_bar (LibraryWindow* self) {
	gboolean _tmp0_ = FALSE;
#line 1102 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1103 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->background_progress_displayed;
#line 1103 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (!_tmp0_) {
#line 7307 "LibraryWindow.c"
		GtkBox* _tmp1_ = NULL;
		GtkFrame* _tmp2_ = NULL;
		GtkFrame* _tmp3_ = NULL;
#line 1104 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = self->priv->top_section;
#line 1104 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = self->priv->background_progress_frame;
#line 1104 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_box_pack_end (_tmp1_, G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0);
#line 1105 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = self->priv->background_progress_frame;
#line 1105 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_widget_get_type (), GtkWidget));
#line 1106 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		self->priv->background_progress_displayed = TRUE;
#line 7323 "LibraryWindow.c"
	}
}


static void library_window_hide_background_progress_bar (LibraryWindow* self) {
	gboolean _tmp0_ = FALSE;
#line 1110 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1111 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->background_progress_displayed;
#line 1111 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_) {
#line 7336 "LibraryWindow.c"
		GtkBox* _tmp1_ = NULL;
		GtkFrame* _tmp2_ = NULL;
#line 1112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = self->priv->top_section;
#line 1112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = self->priv->background_progress_frame;
#line 1112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_container_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget));
#line 1113 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		self->priv->background_progress_displayed = FALSE;
#line 7347 "LibraryWindow.c"
	}
}


static void library_window_on_library_monitor_discovery_started (LibraryWindow* self) {
	const gchar* _tmp0_ = NULL;
#line 1117 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1118 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = _ ("Updating library…");
#line 1118 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_start_pulse_background_progress_bar (self, _tmp0_, LIBRARY_WINDOW_STARTUP_SCAN_PROGRESS_PRIORITY);
#line 7360 "LibraryWindow.c"
}


static void library_window_on_library_monitor_discovery_completed (LibraryWindow* self) {
#line 1121 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1122 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_stop_pulse_background_progress_bar (self, LIBRARY_WINDOW_STARTUP_SCAN_PROGRESS_PRIORITY, TRUE);
#line 7369 "LibraryWindow.c"
}


static void library_window_on_library_monitor_auto_update_progress (LibraryWindow* self, gint completed_files, gint total_files) {
	gint _tmp0_ = 0;
#line 1125 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1126 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = total_files;
#line 1126 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < LIBRARY_WINDOW_MIN_PROGRESS_BAR_FILES) {
#line 1127 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_clear_background_progress_bar (self, LIBRARY_WINDOW_REALTIME_UPDATE_PROGRESS_PRIORITY);
#line 7383 "LibraryWindow.c"
	} else {
		const gchar* _tmp1_ = NULL;
		gint _tmp2_ = 0;
		gint _tmp3_ = 0;
#line 1129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = _ ("Updating library…");
#line 1129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = completed_files;
#line 1129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = total_files;
#line 1129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_update_background_progress_bar (self, _tmp1_, LIBRARY_WINDOW_REALTIME_UPDATE_PROGRESS_PRIORITY, (gdouble) _tmp2_, (gdouble) _tmp3_);
#line 7396 "LibraryWindow.c"
	}
}


static void library_window_on_library_monitor_auto_import_preparing (LibraryWindow* self) {
	const gchar* _tmp0_ = NULL;
#line 1134 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1135 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = _ ("Preparing to auto-import photos…");
#line 1135 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_start_pulse_background_progress_bar (self, _tmp0_, LIBRARY_WINDOW_REALTIME_IMPORT_PROGRESS_PRIORITY);
#line 7409 "LibraryWindow.c"
}


static void library_window_on_library_monitor_auto_import_progress (LibraryWindow* self, guint64 completed_bytes, guint64 total_bytes) {
	const gchar* _tmp0_ = NULL;
	guint64 _tmp1_ = 0ULL;
	guint64 _tmp2_ = 0ULL;
#line 1139 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = _ ("Auto-importing photos…");
#line 1140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = completed_bytes;
#line 1140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = total_bytes;
#line 1140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_update_background_progress_bar (self, _tmp0_, LIBRARY_WINDOW_REALTIME_IMPORT_PROGRESS_PRIORITY, (gdouble) _tmp1_, (gdouble) _tmp2_);
#line 7427 "LibraryWindow.c"
}


static void library_window_on_metadata_writer_progress (LibraryWindow* self, guint completed, guint total) {
	guint _tmp0_ = 0U;
#line 1144 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1145 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = total;
#line 1145 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_ < ((guint) LIBRARY_WINDOW_MIN_PROGRESS_BAR_FILES)) {
#line 1146 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_clear_background_progress_bar (self, LIBRARY_WINDOW_METADATA_WRITER_PROGRESS_PRIORITY);
#line 7441 "LibraryWindow.c"
	} else {
		const gchar* _tmp1_ = NULL;
		guint _tmp2_ = 0U;
		guint _tmp3_ = 0U;
#line 1148 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = _ ("Writing metadata to files…");
#line 1148 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp2_ = completed;
#line 1148 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = total;
#line 1148 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_update_background_progress_bar (self, _tmp1_, LIBRARY_WINDOW_METADATA_WRITER_PROGRESS_PRIORITY, (gdouble) _tmp2_, (gdouble) _tmp3_);
#line 7454 "LibraryWindow.c"
	}
}


static void library_window_create_layout (LibraryWindow* self, Page* start_page) {
	GtkScrolledWindow* scrolled_sidebar = NULL;
	GtkScrolledWindow* _tmp0_ = NULL;
	SidebarTree* _tmp1_ = NULL;
	GtkFrame* _tmp2_ = NULL;
	GtkFrame* _tmp3_ = NULL;
	GtkProgressBar* _tmp4_ = NULL;
	GtkFrame* _tmp5_ = NULL;
	GtkStyleContext* _tmp6_ = NULL;
	BasicProperties* _tmp7_ = NULL;
	BasicProperties* _tmp8_ = NULL;
	BasicProperties* _tmp9_ = NULL;
	BasicProperties* _tmp10_ = NULL;
	BasicProperties* _tmp11_ = NULL;
	BasicProperties* _tmp12_ = NULL;
	BasicProperties* _tmp13_ = NULL;
	BasicProperties* _tmp14_ = NULL;
	GtkFrame* _tmp15_ = NULL;
	BasicProperties* _tmp16_ = NULL;
	GtkFrame* _tmp17_ = NULL;
	GtkStyleContext* _tmp18_ = NULL;
	GtkBox* _tmp19_ = NULL;
	GtkPaned* _tmp20_ = NULL;
	GtkBox* _tmp21_ = NULL;
	GtkPaned* _tmp22_ = NULL;
	GtkFrame* _tmp23_ = NULL;
	GtkPaned* _tmp24_ = NULL;
	GtkBox* _tmp25_ = NULL;
	GtkBox* _tmp26_ = NULL;
	SearchFilterToolbar* _tmp27_ = NULL;
	GtkBox* _tmp28_ = NULL;
	GtkStack* _tmp29_ = NULL;
	GtkBox* _tmp30_ = NULL;
	GtkRevealer* _tmp31_ = NULL;
	GtkPaned* _tmp32_ = NULL;
	GtkPaned* _tmp33_ = NULL;
	GtkPaned* _tmp34_ = NULL;
	SidebarTree* _tmp35_ = NULL;
	GtkPaned* _tmp36_ = NULL;
	GtkBox* _tmp37_ = NULL;
	GtkPaned* _tmp38_ = NULL;
	ConfigFacade* _tmp39_ = NULL;
	ConfigFacade* _tmp40_ = NULL;
	gint _tmp41_ = 0;
	GtkStack* _tmp42_ = NULL;
	gint _tmp43_ = 0;
	gint _tmp44_ = 0;
	GtkBox* _tmp45_ = NULL;
	GtkPaned* _tmp46_ = NULL;
	GtkBox* _tmp47_ = NULL;
	Page* _tmp48_ = NULL;
	Page* _tmp49_ = NULL;
#line 1153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (start_page));
#line 1156 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
#line 1156 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp0_);
#line 1156 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	scrolled_sidebar = _tmp0_;
#line 1157 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_scrolled_window_set_policy (scrolled_sidebar, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
#line 1158 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->sidebar_tree;
#line 1158 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (scrolled_sidebar, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_widget_get_type (), GtkWidget));
#line 1160 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->background_progress_frame;
#line 1160 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_set_border_width (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_container_get_type (), GtkContainer), (guint) 2);
#line 1161 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->background_progress_frame;
#line 1161 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = self->priv->background_progress_bar;
#line 1161 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_widget_get_type (), GtkWidget));
#line 1162 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = self->priv->background_progress_frame;
#line 1162 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = gtk_widget_get_style_context (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_widget_get_type (), GtkWidget));
#line 1162 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_style_context_remove_class (_tmp6_, "frame");
#line 1165 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = self->priv->basic_properties;
#line 1165 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_halign (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_widget_get_type (), GtkWidget), GTK_ALIGN_FILL);
#line 1166 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = self->priv->basic_properties;
#line 1166 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_valign (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_widget_get_type (), GtkWidget), GTK_ALIGN_CENTER);
#line 1167 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = self->priv->basic_properties;
#line 1167 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_hexpand (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_widget_get_type (), GtkWidget), TRUE);
#line 1168 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = self->priv->basic_properties;
#line 1168 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_vexpand (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_widget_get_type (), GtkWidget), FALSE);
#line 1169 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = self->priv->basic_properties;
#line 1169 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_margin_top (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_widget_get_type (), GtkWidget), 10);
#line 1170 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = self->priv->basic_properties;
#line 1170 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_margin_bottom (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_widget_get_type (), GtkWidget), 10);
#line 1171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = self->priv->basic_properties;
#line 1171 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_margin_start (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, gtk_widget_get_type (), GtkWidget), 6);
#line 1172 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = self->priv->basic_properties;
#line 1172 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_margin_end (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, gtk_widget_get_type (), GtkWidget), 0);
#line 1174 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = self->priv->bottom_frame;
#line 1174 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = self->priv->basic_properties;
#line 1174 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, gtk_widget_get_type (), GtkWidget));
#line 1175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = self->priv->bottom_frame;
#line 1175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = gtk_widget_get_style_context (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_widget_get_type (), GtkWidget));
#line 1175 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_style_context_remove_class (_tmp18_, "frame");
#line 1179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = self->priv->top_section;
#line 1179 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_box_pack_start (_tmp19_, G_TYPE_CHECK_INSTANCE_CAST (scrolled_sidebar, gtk_widget_get_type (), GtkWidget), TRUE, TRUE, (guint) 0);
#line 1181 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp20_ = self->priv->sidebar_paned;
#line 1181 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp21_ = self->priv->top_section;
#line 1181 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_pack1 (_tmp20_, G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, gtk_widget_get_type (), GtkWidget), TRUE, FALSE);
#line 1182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = self->priv->sidebar_paned;
#line 1182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp23_ = self->priv->bottom_frame;
#line 1182 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_pack2 (_tmp22_, G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE);
#line 1183 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp24_ = self->priv->sidebar_paned;
#line 1183 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_set_position (_tmp24_, 1000);
#line 1185 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp25_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
#line 1185 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp25_);
#line 1185 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->right_vbox);
#line 1185 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->right_vbox = _tmp25_;
#line 1186 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp26_ = self->priv->right_vbox;
#line 1186 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp27_ = self->priv->search_toolbar;
#line 1186 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_box_pack_start (_tmp26_, G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0);
#line 1187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp28_ = self->priv->right_vbox;
#line 1187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp29_ = self->priv->stack;
#line 1187 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_box_pack_start (_tmp28_, G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, gtk_widget_get_type (), GtkWidget), TRUE, TRUE, (guint) 0);
#line 1188 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp30_ = self->priv->right_vbox;
#line 1188 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp31_ = self->priv->toolbar_revealer;
#line 1188 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp30_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, gtk_widget_get_type (), GtkWidget));
#line 1190 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp32_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
#line 1190 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp32_);
#line 1190 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->client_paned);
#line 1190 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->client_paned = _tmp32_;
#line 1191 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp33_ = self->priv->client_paned;
#line 1191 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = self->priv->sidebar_paned;
#line 1191 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_pack1 (_tmp33_, G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE);
#line 1192 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp35_ = self->priv->sidebar_tree;
#line 1192 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_size_request (G_TYPE_CHECK_INSTANCE_CAST (_tmp35_, gtk_widget_get_type (), GtkWidget), LIBRARY_WINDOW_SIDEBAR_MIN_WIDTH, -1);
#line 1193 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp36_ = self->priv->client_paned;
#line 1193 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp37_ = self->priv->right_vbox;
#line 1193 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_pack2 (_tmp36_, G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, gtk_widget_get_type (), GtkWidget), TRUE, FALSE);
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp38_ = self->priv->client_paned;
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp39_ = config_facade_get_instance ();
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp40_ = _tmp39_;
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp41_ = configuration_facade_get_sidebar_position (G_TYPE_CHECK_INSTANCE_CAST (_tmp40_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade));
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_paned_set_position (_tmp38_, _tmp41_);
#line 1194 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp40_);
#line 1196 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp42_ = self->priv->stack;
#line 1196 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp43_ = library_window_get_PAGE_MIN_WIDTH ();
#line 1196 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp44_ = _tmp43_;
#line 1196 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_set_size_request (G_TYPE_CHECK_INSTANCE_CAST (_tmp42_, gtk_widget_get_type (), GtkWidget), _tmp44_, -1);
#line 1198 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp45_ = self->priv->layout;
#line 1198 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp46_ = self->priv->client_paned;
#line 1198 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_box_pack_end (_tmp45_, G_TYPE_CHECK_INSTANCE_CAST (_tmp46_, gtk_widget_get_type (), GtkWidget), TRUE, TRUE, (guint) 0);
#line 1200 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp47_ = self->priv->layout;
#line 1200 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp47_, gtk_widget_get_type (), GtkWidget));
#line 1202 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp48_ = start_page;
#line 1202 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, _tmp48_);
#line 1203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp49_ = start_page;
#line 1203 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_grab_focus (G_TYPE_CHECK_INSTANCE_CAST (_tmp49_, gtk_widget_get_type (), GtkWidget));
#line 1153 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (scrolled_sidebar);
#line 7697 "LibraryWindow.c"
}


static void library_window_real_set_current_page (PageWindow* base, Page* page) {
	LibraryWindow * self;
	Page* _tmp0_ = NULL;
#line 1206 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 1206 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1208 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 1208 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, _tmp0_);
#line 7712 "LibraryWindow.c"
}


void library_window_set_page_switching_enabled (LibraryWindow* self, gboolean should_enable) {
	gboolean _tmp0_ = FALSE;
#line 1211 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = should_enable;
#line 1212 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->page_switching_enabled = _tmp0_;
#line 7724 "LibraryWindow.c"
}


void library_window_switch_to_page (LibraryWindow* self, Page* page) {
	gboolean _tmp0_ = FALSE;
	Page* _tmp1_ = NULL;
	Page* _tmp2_ = NULL;
	Page* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
	Page* current_page = NULL;
	Page* _tmp5_ = NULL;
	Page* _tmp6_ = NULL;
	GtkStack* _tmp16_ = NULL;
	Page* _tmp17_ = NULL;
	Page* _tmp18_ = NULL;
	Page* _tmp19_ = NULL;
	gboolean _tmp21_ = FALSE;
	Page* _tmp22_ = NULL;
	SidebarEntry* entry = NULL;
	GeeHashMap* _tmp23_ = NULL;
	Page* _tmp24_ = NULL;
	gpointer _tmp25_ = NULL;
	SidebarEntry* _tmp26_ = NULL;
	Page* _tmp37_ = NULL;
	Page* _tmp39_ = NULL;
	Page* _tmp40_ = NULL;
	Page* _tmp41_ = NULL;
	Page* _tmp42_ = NULL;
	Page* _tmp43_ = NULL;
	GMenuModel* _tmp44_ = NULL;
	GMenuModel* _tmp45_ = NULL;
	gboolean old = FALSE;
	GtkSettings* _tmp46_ = NULL;
	gboolean _tmp47_ = FALSE;
	gboolean _tmp48_ = FALSE;
	GtkSettings* _tmp49_ = NULL;
	gboolean _tmp50_ = FALSE;
	GtkSettings* _tmp51_ = NULL;
	gboolean _tmp52_ = FALSE;
	GtkToolbar* toolbar = NULL;
	Page* _tmp53_ = NULL;
	GtkToolbar* _tmp54_ = NULL;
	GtkToolbar* _tmp55_ = NULL;
	Page* _tmp61_ = NULL;
#line 1215 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1215 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1216 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->page_switching_enabled;
#line 1216 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (!_tmp0_) {
#line 1217 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7779 "LibraryWindow.c"
	}
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page;
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp1_ == _tmp3_;
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp3_);
#line 1219 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_) {
#line 1220 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 7795 "LibraryWindow.c"
	}
#line 1222 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1222 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	current_page = _tmp5_;
#line 1223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = current_page;
#line 1223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp6_ != NULL) {
#line 7805 "LibraryWindow.c"
		GtkToolbar* toolbar = NULL;
		Page* _tmp7_ = NULL;
		GtkToolbar* _tmp8_ = NULL;
		GtkToolbar* _tmp9_ = NULL;
		Page* _tmp12_ = NULL;
		Page* _tmp13_ = NULL;
		Page* _tmp15_ = NULL;
#line 1224 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_application_window_set_show_menubar (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_application_window_get_type (), GtkApplicationWindow), FALSE);
#line 1225 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		application_set_menubar (NULL);
#line 1227 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = current_page;
#line 1227 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = page_get_toolbar (_tmp7_);
#line 1227 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		toolbar = _tmp8_;
#line 1228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = toolbar;
#line 1228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp9_ != NULL) {
#line 7827 "LibraryWindow.c"
			GtkRevealer* _tmp10_ = NULL;
			GtkToolbar* _tmp11_ = NULL;
#line 1229 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp10_ = self->priv->toolbar_revealer;
#line 1229 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp11_ = toolbar;
#line 1229 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			gtk_container_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_widget_get_type (), GtkWidget));
#line 7836 "LibraryWindow.c"
		}
#line 1231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = current_page;
#line 1231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		page_switching_from (_tmp12_);
#line 1235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = current_page;
#line 1235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp13_, TYPE_LIBRARY_PHOTO_PAGE)) {
#line 7846 "LibraryWindow.c"
			SidebarTree* _tmp14_ = NULL;
#line 1236 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp14_ = self->priv->sidebar_tree;
#line 1236 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			sidebar_tree_enable_editing (_tmp14_);
#line 7852 "LibraryWindow.c"
		}
#line 1239 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = current_page;
#line 1239 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_unsubscribe_from_basic_information (self, _tmp15_);
#line 1223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (toolbar);
#line 7860 "LibraryWindow.c"
	}
#line 1242 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = self->priv->stack;
#line 1242 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = page;
#line 1242 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_stack_set_visible_child (_tmp16_, G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_widget_get_type (), GtkWidget));
#line 1246 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = page;
#line 1246 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	PAGE_WINDOW_CLASS (library_window_parent_class)->set_current_page (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), TYPE_PAGE_WINDOW, PageWindow), _tmp18_);
#line 1252 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = page;
#line 1252 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp19_, TYPE_LIBRARY_PHOTO_PAGE)) {
#line 7876 "LibraryWindow.c"
		SidebarTree* _tmp20_ = NULL;
#line 1253 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = self->priv->sidebar_tree;
#line 1253 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		sidebar_tree_disable_editing (_tmp20_);
#line 7882 "LibraryWindow.c"
	}
#line 1256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp21_ = library_window_should_show_search_bar (self);
#line 1256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = page;
#line 1256 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_toggle_search_bar (self, _tmp21_, G_TYPE_CHECK_INSTANCE_TYPE (_tmp22_, TYPE_CHECKERBOARD_PAGE) ? ((CheckerboardPage*) _tmp22_) : NULL);
#line 1259 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp23_ = self->priv->page_map;
#line 1259 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp24_ = page;
#line 1259 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp25_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp24_);
#line 1259 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	entry = (SidebarEntry*) _tmp25_;
#line 1260 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp26_ = entry;
#line 1260 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp26_ != NULL) {
#line 7902 "LibraryWindow.c"
		SidebarExpandableEntry* expandable_entry = NULL;
		SidebarEntry* _tmp27_ = NULL;
		SidebarExpandableEntry* _tmp28_ = NULL;
		gboolean _tmp29_ = FALSE;
		SidebarExpandableEntry* _tmp30_ = NULL;
		SidebarTree* _tmp35_ = NULL;
		SidebarEntry* _tmp36_ = NULL;
#line 1263 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp27_ = entry;
#line 1263 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp28_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp27_, SIDEBAR_TYPE_EXPANDABLE_ENTRY) ? ((SidebarExpandableEntry*) _tmp27_) : NULL);
#line 1263 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		expandable_entry = _tmp28_;
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp30_ = expandable_entry;
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp30_ != NULL) {
#line 7920 "LibraryWindow.c"
			SidebarExpandableEntry* _tmp31_ = NULL;
			gboolean _tmp32_ = FALSE;
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp31_ = expandable_entry;
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp32_ = sidebar_expandable_entry_expand_on_select (_tmp31_);
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp29_ = _tmp32_;
#line 7929 "LibraryWindow.c"
		} else {
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp29_ = FALSE;
#line 7933 "LibraryWindow.c"
		}
#line 1264 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp29_) {
#line 7937 "LibraryWindow.c"
			SidebarTree* _tmp33_ = NULL;
			SidebarEntry* _tmp34_ = NULL;
#line 1265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp33_ = self->priv->sidebar_tree;
#line 1265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp34_ = entry;
#line 1265 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			sidebar_tree_expand_to_entry (_tmp33_, _tmp34_);
#line 7946 "LibraryWindow.c"
		}
#line 1267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp35_ = self->priv->sidebar_tree;
#line 1267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp36_ = entry;
#line 1267 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		sidebar_tree_place_cursor (_tmp35_, _tmp36_, TRUE);
#line 1260 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (expandable_entry);
#line 7956 "LibraryWindow.c"
	}
#line 1270 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties (self);
#line 1272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp37_ = page;
#line 1272 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp37_, TYPE_CHECKERBOARD_PAGE)) {
#line 7964 "LibraryWindow.c"
		Page* _tmp38_ = NULL;
#line 1273 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp38_ = page;
#line 1273 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_init_view_filter (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp38_, TYPE_CHECKERBOARD_PAGE, CheckerboardPage));
#line 7970 "LibraryWindow.c"
	}
#line 1275 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp39_ = page;
#line 1275 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp39_, gtk_widget_get_type (), GtkWidget));
#line 1278 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp40_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1278 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp41_ = _tmp40_;
#line 1278 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_subscribe_for_basic_information (self, _tmp41_);
#line 1278 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp41_);
#line 1280 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp42_ = page;
#line 1280 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	page_switched_to (_tmp42_);
#line 1282 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp43_ = page;
#line 1282 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp44_ = page_get_menubar (_tmp43_);
#line 1282 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp45_ = _tmp44_;
#line 1282 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	application_set_menubar (_tmp45_);
#line 1282 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp45_);
#line 1283 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_application_window_set_show_menubar (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_application_window_get_type (), GtkApplicationWindow), TRUE);
#line 1284 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp46_ = gtk_widget_get_settings (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget));
#line 1284 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_get (_tmp46_, "gtk-shell-shows-menubar", &_tmp47_, NULL);
#line 1284 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp48_ = _tmp47_;
#line 1284 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	old = _tmp48_;
#line 1285 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp49_ = gtk_widget_get_settings (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget));
#line 1285 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp50_ = old;
#line 1285 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_set (_tmp49_, "gtk-shell-shows-menubar", !_tmp50_, NULL);
#line 1286 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp51_ = gtk_widget_get_settings (G_TYPE_CHECK_INSTANCE_CAST (self, gtk_widget_get_type (), GtkWidget));
#line 1286 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp52_ = old;
#line 1286 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_set (_tmp51_, "gtk-shell-shows-menubar", _tmp52_, NULL);
#line 1288 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp53_ = page;
#line 1288 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp54_ = page_get_toolbar (_tmp53_);
#line 1288 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	toolbar = _tmp54_;
#line 1289 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp55_ = toolbar;
#line 1289 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp55_ != NULL) {
#line 8030 "LibraryWindow.c"
		GtkRevealer* _tmp56_ = NULL;
		GtkToolbar* _tmp57_ = NULL;
		GtkToolbar* _tmp58_ = NULL;
		GtkRevealer* _tmp59_ = NULL;
		gboolean _tmp60_ = FALSE;
#line 1290 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp56_ = self->priv->toolbar_revealer;
#line 1290 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp57_ = toolbar;
#line 1290 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp56_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp57_, gtk_widget_get_type (), GtkWidget));
#line 1291 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp58_ = toolbar;
#line 1291 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp58_, gtk_widget_get_type (), GtkWidget));
#line 1292 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp59_ = self->priv->toolbar_revealer;
#line 1292 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp60_ = library_window_is_toolbar_visible (self);
#line 1292 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		gtk_revealer_set_reveal_child (_tmp59_, _tmp60_);
#line 8052 "LibraryWindow.c"
	}
#line 1295 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp61_ = page;
#line 1295 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	page_ready (_tmp61_);
#line 1215 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (toolbar);
#line 1215 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (entry);
#line 1215 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (current_page);
#line 8064 "LibraryWindow.c"
}


static void library_window_init_view_filter (LibraryWindow* self, CheckerboardPage* page) {
	SearchFilterToolbar* _tmp0_ = NULL;
	CheckerboardPage* _tmp1_ = NULL;
	SearchViewFilter* _tmp2_ = NULL;
	SearchViewFilter* _tmp3_ = NULL;
	CheckerboardPage* _tmp4_ = NULL;
	ViewCollection* _tmp5_ = NULL;
	ViewCollection* _tmp6_ = NULL;
	CheckerboardPage* _tmp7_ = NULL;
	SearchViewFilter* _tmp8_ = NULL;
	SearchViewFilter* _tmp9_ = NULL;
#line 1298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1298 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_CHECKERBOARD_PAGE (page));
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->search_toolbar;
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page;
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = checkerboard_page_get_search_view_filter (_tmp1_);
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp2_;
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	search_filter_toolbar_set_view_filter (_tmp0_, _tmp3_);
#line 1299 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_view_filter_unref0 (_tmp3_);
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = page;
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_PAGE, Page));
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = _tmp5_;
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = page;
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = checkerboard_page_get_search_view_filter (_tmp7_);
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = _tmp8_;
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view_collection_install_view_filter (_tmp6_, G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_VIEW_FILTER, ViewFilter));
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_view_filter_unref0 (_tmp9_);
#line 1300 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (_tmp6_);
#line 8113 "LibraryWindow.c"
}


static gboolean library_window_should_show_search_bar (LibraryWindow* self) {
	gboolean result = FALSE;
	gboolean _tmp0_ = FALSE;
	Page* _tmp1_ = NULL;
	Page* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
#line 1303 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_LIBRARY_WINDOW (self), FALSE);
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, TYPE_CHECKERBOARD_PAGE);
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_) {
#line 8135 "LibraryWindow.c"
		gboolean _tmp4_ = FALSE;
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->is_search_toolbar_visible;
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = _tmp4_;
#line 8141 "LibraryWindow.c"
	} else {
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = FALSE;
#line 8145 "LibraryWindow.c"
	}
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp0_;
#line 1304 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 8151 "LibraryWindow.c"
}


static void library_window_toggle_search_bar (LibraryWindow* self, gboolean show, CheckerboardPage* page) {
	SearchFilterToolbar* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
#line 1308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1308 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail ((page == NULL) || IS_CHECKERBOARD_PAGE (page));
#line 1309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->search_toolbar;
#line 1309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = show;
#line 1309 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gtk_revealer_set_reveal_child (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_revealer_get_type (), GtkRevealer), _tmp1_);
#line 1310 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = show;
#line 1310 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 8173 "LibraryWindow.c"
		CheckerboardPage* _tmp3_ = NULL;
		SearchFilterToolbar* _tmp4_ = NULL;
		CheckerboardPage* _tmp5_ = NULL;
		SearchViewFilter* _tmp6_ = NULL;
		SearchViewFilter* _tmp7_ = NULL;
		CheckerboardPage* _tmp8_ = NULL;
		ViewCollection* _tmp9_ = NULL;
		ViewCollection* _tmp10_ = NULL;
		CheckerboardPage* _tmp11_ = NULL;
		SearchViewFilter* _tmp12_ = NULL;
		SearchViewFilter* _tmp13_ = NULL;
#line 1311 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = page;
#line 1311 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_vala_assert (NULL != _tmp3_, "null != page");
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->search_toolbar;
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = page;
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = checkerboard_page_get_search_view_filter (_tmp5_);
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = _tmp6_;
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		search_filter_toolbar_set_view_filter (_tmp4_, _tmp7_);
#line 1312 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_view_filter_unref0 (_tmp7_);
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = page;
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_PAGE, Page));
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = _tmp9_;
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = page;
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = checkerboard_page_get_search_view_filter (_tmp11_);
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp13_ = _tmp12_;
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		view_collection_install_view_filter (_tmp10_, G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, TYPE_VIEW_FILTER, ViewFilter));
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_view_filter_unref0 (_tmp13_);
#line 1313 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_data_collection_unref0 (_tmp10_);
#line 8219 "LibraryWindow.c"
	} else {
		CheckerboardPage* _tmp14_ = NULL;
#line 1315 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = page;
#line 1315 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (_tmp14_ != NULL) {
#line 8226 "LibraryWindow.c"
			CheckerboardPage* _tmp15_ = NULL;
			ViewCollection* _tmp16_ = NULL;
			ViewCollection* _tmp17_ = NULL;
			DisabledViewFilter* _tmp18_ = NULL;
			DisabledViewFilter* _tmp19_ = NULL;
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp15_ = page;
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp16_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, TYPE_PAGE, Page));
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp17_ = _tmp16_;
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp18_ = disabled_view_filter_new ();
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp19_ = _tmp18_;
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			view_collection_install_view_filter (_tmp17_, G_TYPE_CHECK_INSTANCE_CAST (_tmp19_, TYPE_VIEW_FILTER, ViewFilter));
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_view_filter_unref0 (_tmp19_);
#line 1316 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (_tmp17_);
#line 8248 "LibraryWindow.c"
		}
	}
}


static void library_window_on_page_created (LibraryWindow* self, SidebarPageRepresentative* entry, Page* page) {
	GeeHashMap* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	GeeHashMap* _tmp3_ = NULL;
	Page* _tmp4_ = NULL;
	SidebarPageRepresentative* _tmp5_ = NULL;
	Page* _tmp6_ = NULL;
#line 1320 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1320 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (SIDEBAR_IS_PAGE_REPRESENTATIVE (entry));
#line 1320 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->page_map;
#line 1321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page;
#line 1321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp1_);
#line 1321 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (!_tmp2_, "!page_map.has_key(page)");
#line 1322 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = self->priv->page_map;
#line 1322 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = page;
#line 1322 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = entry;
#line 1322 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp4_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
#line 1324 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = page;
#line 1324 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_add_to_stack (self, _tmp6_);
#line 8288 "LibraryWindow.c"
}


static void library_window_on_destroying_page (LibraryWindow* self, SidebarPageRepresentative* entry, Page* page) {
	Page* _tmp0_ = NULL;
	Page* _tmp1_ = NULL;
	Page* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	Page* _tmp9_ = NULL;
	gboolean removed = FALSE;
	GeeHashMap* _tmp10_ = NULL;
	Page* _tmp11_ = NULL;
	gboolean _tmp12_ = FALSE;
#line 1327 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1327 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (SIDEBAR_IS_PAGE_REPRESENTATIVE (entry));
#line 1327 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _tmp0_ == _tmp2_;
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp2_);
#line 1329 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp3_) {
#line 8320 "LibraryWindow.c"
		LibraryBranch* _tmp4_ = NULL;
		LibraryPhotosEntry* _tmp5_ = NULL;
		LibraryPhotosEntry* _tmp6_ = NULL;
		Page* _tmp7_ = NULL;
		Page* _tmp8_ = NULL;
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = self->priv->library_branch;
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = library_branch_get_photos_entry (_tmp4_);
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = _tmp5_;
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = _tmp7_;
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp8_);
#line 1330 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp8_);
#line 8340 "LibraryWindow.c"
	}
#line 1332 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = page;
#line 1332 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_remove_from_stack (self, _tmp9_);
#line 1334 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = self->priv->page_map;
#line 1334 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = page;
#line 1334 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = gee_abstract_map_unset (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp11_, NULL);
#line 1334 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	removed = _tmp12_;
#line 1335 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_vala_assert (removed, "removed");
#line 8356 "LibraryWindow.c"
}


static void library_window_on_sidebar_entry_selected (LibraryWindow* self, SidebarSelectableEntry* selectable) {
	SidebarPageRepresentative* page_rep = NULL;
	SidebarSelectableEntry* _tmp0_ = NULL;
	SidebarPageRepresentative* _tmp1_ = NULL;
	SidebarPageRepresentative* _tmp2_ = NULL;
#line 1338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (SIDEBAR_IS_SELECTABLE_ENTRY (selectable));
#line 1339 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = selectable;
#line 1339 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE) ? ((SidebarPageRepresentative*) _tmp0_) : NULL);
#line 1339 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	page_rep = _tmp1_;
#line 1340 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = page_rep;
#line 1340 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_ != NULL) {
#line 8379 "LibraryWindow.c"
		SidebarPageRepresentative* _tmp3_ = NULL;
		Page* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
#line 1341 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = page_rep;
#line 1341 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = sidebar_page_representative_get_page (_tmp3_);
#line 1341 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = _tmp4_;
#line 1341 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp5_);
#line 1341 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp5_);
#line 8393 "LibraryWindow.c"
	}
#line 1338 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (page_rep);
#line 8397 "LibraryWindow.c"
}


static void library_window_on_sidebar_selected_entry_removed (LibraryWindow* self, SidebarSelectableEntry* selectable) {
	LibraryLastImportSidebarEntry* last_import_entry = NULL;
	LibraryBranch* _tmp0_ = NULL;
	LibraryLastImportSidebarEntry* _tmp1_ = NULL;
	LibraryLastImportSidebarEntry* _tmp2_ = NULL;
	LibraryLastImportSidebarEntry* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
	SidebarSelectableEntry* _tmp5_ = NULL;
	gboolean _tmp12_ = FALSE;
	SidebarSelectableEntry* _tmp13_ = NULL;
	gboolean _tmp21_ = FALSE;
	SidebarSelectableEntry* _tmp22_ = NULL;
	LibraryBranch* _tmp30_ = NULL;
	LibraryPhotosEntry* _tmp31_ = NULL;
	LibraryPhotosEntry* _tmp32_ = NULL;
	Page* _tmp33_ = NULL;
	Page* _tmp34_ = NULL;
#line 1344 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1344 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (SIDEBAR_IS_SELECTABLE_ENTRY (selectable));
#line 1348 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->library_branch;
#line 1348 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = library_branch_get_last_imported_entry (_tmp0_);
#line 1348 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 1348 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 1348 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	last_import_entry = _tmp3_;
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = selectable;
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, LIBRARY_TYPE_IMPORT_QUEUE_SIDEBAR_ENTRY)) {
#line 8436 "LibraryWindow.c"
		LibraryLastImportSidebarEntry* _tmp6_ = NULL;
		gboolean _tmp7_ = FALSE;
		gboolean _tmp8_ = FALSE;
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = last_import_entry;
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = library_hideable_page_entry_get_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, LIBRARY_TYPE_HIDEABLE_PAGE_ENTRY, LibraryHideablePageEntry));
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = _tmp7_;
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = _tmp8_;
#line 8448 "LibraryWindow.c"
	} else {
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = FALSE;
#line 8452 "LibraryWindow.c"
	}
#line 1351 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_) {
#line 8456 "LibraryWindow.c"
		LibraryLastImportSidebarEntry* _tmp9_ = NULL;
		Page* _tmp10_ = NULL;
		Page* _tmp11_ = NULL;
#line 1352 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = last_import_entry;
#line 1352 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 1352 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = _tmp10_;
#line 1352 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp11_);
#line 1352 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp11_);
#line 1354 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (last_import_entry);
#line 1354 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8474 "LibraryWindow.c"
	}
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = selectable;
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp13_, EVENTS_TYPE_EVENT_ENTRY)) {
#line 8480 "LibraryWindow.c"
		EventsBranch* _tmp14_ = NULL;
		gboolean _tmp15_ = FALSE;
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = self->priv->events_branch;
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = sidebar_branch_get_show_branch (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, SIDEBAR_TYPE_BRANCH, SidebarBranch));
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = _tmp15_;
#line 8489 "LibraryWindow.c"
	} else {
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp12_ = FALSE;
#line 8493 "LibraryWindow.c"
	}
#line 1358 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp12_) {
#line 8497 "LibraryWindow.c"
		EventsBranch* _tmp16_ = NULL;
		EventsMasterDirectoryEntry* _tmp17_ = NULL;
		EventsMasterDirectoryEntry* _tmp18_ = NULL;
		Page* _tmp19_ = NULL;
		Page* _tmp20_ = NULL;
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = self->priv->events_branch;
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = events_branch_get_master_entry (_tmp16_);
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = _tmp17_;
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = _tmp19_;
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp20_);
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp20_);
#line 1359 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp18_);
#line 1361 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (last_import_entry);
#line 1361 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8523 "LibraryWindow.c"
	}
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp22_ = selectable;
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp22_, EVENTS_TYPE_DIRECTORY_ENTRY)) {
#line 8529 "LibraryWindow.c"
		EventsBranch* _tmp23_ = NULL;
		gboolean _tmp24_ = FALSE;
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp23_ = self->priv->events_branch;
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp24_ = sidebar_branch_get_show_branch (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, SIDEBAR_TYPE_BRANCH, SidebarBranch));
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp21_ = _tmp24_;
#line 8538 "LibraryWindow.c"
	} else {
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp21_ = FALSE;
#line 8542 "LibraryWindow.c"
	}
#line 1365 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp21_) {
#line 8546 "LibraryWindow.c"
		EventsBranch* _tmp25_ = NULL;
		EventsMasterDirectoryEntry* _tmp26_ = NULL;
		EventsMasterDirectoryEntry* _tmp27_ = NULL;
		Page* _tmp28_ = NULL;
		Page* _tmp29_ = NULL;
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp25_ = self->priv->events_branch;
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp26_ = events_branch_get_master_entry (_tmp25_);
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp27_ = _tmp26_;
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp28_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp29_ = _tmp28_;
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_switch_to_page (self, _tmp29_);
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp29_);
#line 1366 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp27_);
#line 1368 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (last_import_entry);
#line 1368 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8572 "LibraryWindow.c"
	}
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp30_ = self->priv->library_branch;
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp31_ = library_branch_get_photos_entry (_tmp30_);
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp32_ = _tmp31_;
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp33_ = sidebar_page_representative_get_page (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative));
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = _tmp33_;
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_switch_to_page (self, _tmp34_);
#line 1372 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp34_);
#line 1344 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (last_import_entry);
#line 8590 "LibraryWindow.c"
}


static void _library_window_on_update_properties_view_collection_items_state_changed (ViewCollection* _sender, GeeIterable* changed, gpointer self) {
#line 1378 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties ((LibraryWindow*) self);
#line 8597 "LibraryWindow.c"
}


static void _library_window_on_update_properties_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self) {
#line 1379 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties ((LibraryWindow*) self);
#line 8604 "LibraryWindow.c"
}


static void _library_window_on_update_properties_data_collection_contents_altered (DataCollection* _sender, GeeIterable* added, GeeIterable* removed, gpointer self) {
#line 1380 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties ((LibraryWindow*) self);
#line 8611 "LibraryWindow.c"
}


static void _library_window_on_update_properties_view_collection_items_visibility_changed (ViewCollection* _sender, GeeCollection* changed, gpointer self) {
#line 1381 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_on_update_properties ((LibraryWindow*) self);
#line 8618 "LibraryWindow.c"
}


static void library_window_subscribe_for_basic_information (LibraryWindow* self, Page* page) {
	ViewCollection* view = NULL;
	Page* _tmp0_ = NULL;
	ViewCollection* _tmp1_ = NULL;
#line 1375 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1375 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1376 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 1376 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_get_view (_tmp0_);
#line 1376 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp1_;
#line 1378 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (view, "items-state-changed", (GCallback) _library_window_on_update_properties_view_collection_items_state_changed, self, 0);
#line 1379 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (view, TYPE_DATA_COLLECTION, DataCollection), "items-altered", (GCallback) _library_window_on_update_properties_data_collection_items_altered, self, 0);
#line 1380 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (view, TYPE_DATA_COLLECTION, DataCollection), "contents-altered", (GCallback) _library_window_on_update_properties_data_collection_contents_altered, self, 0);
#line 1381 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_connect_object (view, "items-visibility-changed", (GCallback) _library_window_on_update_properties_view_collection_items_visibility_changed, self, 0);
#line 1375 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 8646 "LibraryWindow.c"
}


static void library_window_unsubscribe_from_basic_information (LibraryWindow* self, Page* page) {
	ViewCollection* view = NULL;
	Page* _tmp0_ = NULL;
	ViewCollection* _tmp1_ = NULL;
	guint _tmp2_ = 0U;
	guint _tmp3_ = 0U;
	guint _tmp4_ = 0U;
	guint _tmp5_ = 0U;
#line 1384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_PAGE (page));
#line 1385 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = page;
#line 1385 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = page_get_view (_tmp0_);
#line 1385 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	view = _tmp1_;
#line 1387 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("items-state-changed", TYPE_VIEW_COLLECTION, &_tmp2_, NULL, FALSE);
#line 1387 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (view, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp2_, 0, NULL, (GCallback) _library_window_on_update_properties_view_collection_items_state_changed, self);
#line 1388 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("items-altered", TYPE_DATA_COLLECTION, &_tmp3_, NULL, FALSE);
#line 1388 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (view, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _library_window_on_update_properties_data_collection_items_altered, self);
#line 1389 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("contents-altered", TYPE_DATA_COLLECTION, &_tmp4_, NULL, FALSE);
#line 1389 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (view, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp4_, 0, NULL, (GCallback) _library_window_on_update_properties_data_collection_contents_altered, self);
#line 1390 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("items-visibility-changed", TYPE_VIEW_COLLECTION, &_tmp5_, NULL, FALSE);
#line 1390 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (view, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp5_, 0, NULL, (GCallback) _library_window_on_update_properties_view_collection_items_visibility_changed, self);
#line 1384 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (view);
#line 8686 "LibraryWindow.c"
}


static void library_window_on_update_properties (LibraryWindow* self) {
	OneShotScheduler* _tmp0_ = NULL;
#line 1393 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1394 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->properties_scheduler;
#line 1394 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	one_shot_scheduler_at_idle (_tmp0_);
#line 8698 "LibraryWindow.c"
}


static void library_window_on_update_properties_now (LibraryWindow* self) {
	GtkFrame* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
	ExtendedPropertiesWindow* _tmp6_ = NULL;
	gboolean _tmp7_ = FALSE;
	gboolean _tmp8_ = FALSE;
#line 1397 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1398 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->bottom_frame;
#line 1398 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = gtk_widget_get_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget));
#line 1398 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = _tmp1_;
#line 1398 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp2_) {
#line 8719 "LibraryWindow.c"
		BasicProperties* _tmp3_ = NULL;
		Page* _tmp4_ = NULL;
		Page* _tmp5_ = NULL;
#line 1399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = self->priv->basic_properties;
#line 1399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp4_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = _tmp4_;
#line 1399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		properties_update_properties (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_PROPERTIES, Properties), _tmp5_);
#line 1399 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp5_);
#line 8733 "LibraryWindow.c"
	}
#line 1401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->extended_properties;
#line 1401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = gtk_widget_get_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, gtk_widget_get_type (), GtkWidget));
#line 1401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = _tmp7_;
#line 1401 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp8_) {
#line 8743 "LibraryWindow.c"
		ExtendedPropertiesWindow* _tmp9_ = NULL;
		Page* _tmp10_ = NULL;
		Page* _tmp11_ = NULL;
#line 1402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = self->priv->extended_properties;
#line 1402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 1402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = _tmp10_;
#line 1402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		extended_properties_window_update_properties (_tmp9_, _tmp11_);
#line 1402 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp11_);
#line 8757 "LibraryWindow.c"
	}
}


static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) {
	gchar* result = NULL;
	GError * _inner_error_ = NULL;
#line 1380 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1380 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (old != NULL, NULL);
#line 1380 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (replacement != NULL, NULL);
#line 8771 "LibraryWindow.c"
	{
		GRegex* regex = NULL;
		const gchar* _tmp0_ = NULL;
		gchar* _tmp1_ = NULL;
		gchar* _tmp2_ = NULL;
		GRegex* _tmp3_ = NULL;
		GRegex* _tmp4_ = NULL;
		gchar* _tmp5_ = NULL;
		GRegex* _tmp6_ = NULL;
		const gchar* _tmp7_ = NULL;
		gchar* _tmp8_ = NULL;
		gchar* _tmp9_ = NULL;
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp0_ = old;
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp1_ = g_regex_escape_string (_tmp0_, -1);
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp2_ = _tmp1_;
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_);
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp4_ = _tmp3_;
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_g_free0 (_tmp2_);
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		regex = _tmp4_;
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 8802 "LibraryWindow.c"
				goto __catch44_g_regex_error;
			}
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			g_clear_error (&_inner_error_);
#line 1382 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			return NULL;
#line 8811 "LibraryWindow.c"
		}
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp6_ = regex;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp7_ = replacement;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp5_ = _tmp8_;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			_g_regex_unref0 (regex);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 8827 "LibraryWindow.c"
				goto __catch44_g_regex_error;
			}
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			_g_regex_unref0 (regex);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			g_clear_error (&_inner_error_);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
			return NULL;
#line 8838 "LibraryWindow.c"
		}
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp9_ = _tmp5_;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_tmp5_ = NULL;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		result = _tmp9_;
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_g_free0 (_tmp5_);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_g_regex_unref0 (regex);
#line 1383 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		return result;
#line 8852 "LibraryWindow.c"
	}
	goto __finally44;
	__catch44_g_regex_error:
	{
		GError* e = NULL;
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		e = _inner_error_;
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_inner_error_ = NULL;
#line 1385 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		g_assert_not_reached ();
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		_g_error_free0 (e);
#line 8866 "LibraryWindow.c"
	}
	__finally44:
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		g_clear_error (&_inner_error_);
#line 1381 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
		return NULL;
#line 8877 "LibraryWindow.c"
	}
}


void library_window_mounted_camera_shell_notification (LibraryWindow* self, const gchar* uri, gboolean at_startup) {
	const gchar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	GFile* uri_file = NULL;
	const gchar* _tmp4_ = NULL;
	GFile* _tmp5_ = NULL;
	GMount* mount = NULL;
	gchar* alt_uri = NULL;
	const gchar* _tmp12_ = NULL;
	gboolean _tmp13_ = FALSE;
	gboolean _tmp18_ = FALSE;
	GError * _inner_error_ = NULL;
#line 1405 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (IS_LIBRARY_WINDOW (self));
#line 1405 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (uri != NULL);
#line 1406 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = uri;
#line 1406 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_debug ("LibraryWindow.vala:1406: mount point reported: %s", _tmp0_);
#line 1409 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = uri;
#line 1409 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = library_window_is_mount_uri_supported (_tmp1_);
#line 1409 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (!_tmp2_) {
#line 8909 "LibraryWindow.c"
		const gchar* _tmp3_ = NULL;
#line 1410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp3_ = uri;
#line 1410 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:1410: Unsupported mount scheme: %s", _tmp3_);
#line 1412 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8917 "LibraryWindow.c"
	}
#line 1415 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = uri;
#line 1415 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = g_file_new_for_uri (_tmp4_);
#line 1415 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	uri_file = _tmp5_;
#line 1418 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	mount = NULL;
#line 8927 "LibraryWindow.c"
	{
		GMount* _tmp6_ = NULL;
		GFile* _tmp7_ = NULL;
		GMount* _tmp8_ = NULL;
		GMount* _tmp9_ = NULL;
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = uri_file;
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = g_file_find_enclosing_mount (_tmp7_, NULL, &_inner_error_);
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = _tmp8_;
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 8941 "LibraryWindow.c"
			goto __catch43_g_error;
		}
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = _tmp6_;
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = NULL;
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (mount);
#line 1420 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		mount = _tmp9_;
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp6_);
#line 8954 "LibraryWindow.c"
	}
	goto __finally43;
	__catch43_g_error:
	{
		GError* err = NULL;
		GError* _tmp10_ = NULL;
		const gchar* _tmp11_ = NULL;
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		err = _inner_error_;
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_inner_error_ = NULL;
#line 1422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp10_ = err;
#line 1422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp11_ = _tmp10_->message;
#line 1422 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_debug ("LibraryWindow.vala:1422: %s", _tmp11_);
#line 1424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_error_free0 (err);
#line 1424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (mount);
#line 1424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (uri_file);
#line 1424 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8980 "LibraryWindow.c"
	}
	__finally43:
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (mount);
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (uri_file);
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_clear_error (&_inner_error_);
#line 1419 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return;
#line 8995 "LibraryWindow.c"
	}
#line 1428 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	alt_uri = NULL;
#line 1429 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = uri;
#line 1429 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = g_str_has_prefix (_tmp12_, "file://");
#line 1429 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp13_) {
#line 9005 "LibraryWindow.c"
		const gchar* _tmp14_ = NULL;
		gchar* _tmp15_ = NULL;
		gchar* _tmp16_ = NULL;
		gchar* _tmp17_ = NULL;
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = uri;
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = string_replace (_tmp14_, "file://", "disk:");
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = _tmp15_;
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = camera_table_get_port_uri (_tmp16_);
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_free0 (alt_uri);
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		alt_uri = _tmp17_;
#line 1430 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_free0 (_tmp16_);
#line 9024 "LibraryWindow.c"
	}
#line 1433 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = at_startup;
#line 1433 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp18_) {
#line 9030 "LibraryWindow.c"
		const gchar* _tmp19_ = NULL;
		gboolean _tmp20_ = FALSE;
		const gchar* _tmp23_ = NULL;
		gboolean _tmp24_ = FALSE;
#line 1434 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = uri;
#line 1434 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp20_ = is_string_empty (_tmp19_);
#line 1434 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (!_tmp20_) {
#line 9041 "LibraryWindow.c"
			GeeHashSet* _tmp21_ = NULL;
			const gchar* _tmp22_ = NULL;
#line 1435 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp21_ = library_window_initial_camera_uris;
#line 1435 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp22_ = uri;
#line 1435 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp22_);
#line 9050 "LibraryWindow.c"
		}
#line 1437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp23_ = alt_uri;
#line 1437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp24_ = is_string_empty (_tmp23_);
#line 1437 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		if (!_tmp24_) {
#line 9058 "LibraryWindow.c"
			GeeHashSet* _tmp25_ = NULL;
			const gchar* _tmp26_ = NULL;
#line 1438 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp25_ = library_window_initial_camera_uris;
#line 1438 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp26_ = alt_uri;
#line 1438 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp26_);
#line 9067 "LibraryWindow.c"
		}
	}
#line 1405 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (alt_uri);
#line 1405 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (mount);
#line 1405 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (uri_file);
#line 9076 "LibraryWindow.c"
}


static gboolean library_window_real_key_press_event (GtkWidget* base, GdkEventKey* event) {
	LibraryWindow * self;
	gboolean result = FALSE;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	SidebarTree* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	gboolean _tmp4_ = FALSE;
	GdkEventKey* _tmp11_ = NULL;
	gboolean _tmp12_ = FALSE;
	GdkEventKey* _tmp13_ = NULL;
	guint _tmp14_ = 0U;
	const gchar* _tmp15_ = NULL;
#line 1442 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 1442 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (event != NULL, FALSE);
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->sidebar_tree;
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget), "has-focus", &_tmp3_, NULL);
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = _tmp3_;
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp4_) {
#line 9105 "LibraryWindow.c"
		SidebarTree* _tmp5_ = NULL;
		GdkEventKey* _tmp6_ = NULL;
		gboolean _tmp7_ = FALSE;
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp5_ = self->priv->sidebar_tree;
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp6_ = event;
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp7_ = sidebar_tree_is_keypress_interpreted (_tmp5_, _tmp6_);
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = _tmp7_;
#line 9117 "LibraryWindow.c"
	} else {
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp1_ = FALSE;
#line 9121 "LibraryWindow.c"
	}
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp1_) {
#line 9125 "LibraryWindow.c"
		SidebarTree* _tmp8_ = NULL;
		GdkEventKey* _tmp9_ = NULL;
		gboolean _tmp10_ = FALSE;
#line 1444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp8_ = self->priv->sidebar_tree;
#line 1444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp9_ = event;
#line 1444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		g_signal_emit_by_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_widget_get_type (), GtkWidget), "key-press-event", _tmp9_, &_tmp10_);
#line 1444 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = _tmp10_;
#line 9137 "LibraryWindow.c"
	} else {
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp0_ = FALSE;
#line 9141 "LibraryWindow.c"
	}
#line 1443 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp0_) {
#line 1445 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 1445 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 9149 "LibraryWindow.c"
	}
#line 1448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = event;
#line 1448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = GTK_WIDGET_CLASS (library_window_parent_class)->key_press_event (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_APP_WINDOW, AppWindow), gtk_widget_get_type (), GtkWidget), _tmp11_);
#line 1448 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp12_) {
#line 1449 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 1449 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 9161 "LibraryWindow.c"
	}
#line 1451 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = event;
#line 1451 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = _tmp13_->keyval;
#line 1451 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = gdk_keyval_name (_tmp14_);
#line 1451 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (g_strcmp0 (_tmp15_, "Escape") == 0) {
#line 1452 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_on_clear_search (self);
#line 1453 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		result = TRUE;
#line 1453 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		return result;
#line 9177 "LibraryWindow.c"
	}
#line 1456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = FALSE;
#line 1456 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 9183 "LibraryWindow.c"
}


gint library_window_get_PAGE_MIN_WIDTH (void) {
	gint result;
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
#line 12 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = thumbnail_get_MAX_SCALE ();
#line 12 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _tmp0_;
#line 12 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	result = _tmp1_ + (CHECKERBOARD_LAYOUT_COLUMN_GUTTER_PADDING * 2);
#line 12 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return result;
#line 9199 "LibraryWindow.c"
}


static gpointer _data_collection_ref0 (gpointer self) {
#line 78 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return self ? data_collection_ref (self) : NULL;
#line 9206 "LibraryWindow.c"
}


static LibraryWindowFullscreenPhotoPage* library_window_fullscreen_photo_page_construct (GType object_type, CollectionPage* collection, Photo* start, ViewCollection* view) {
	LibraryWindowFullscreenPhotoPage * self = NULL;
	CollectionPage* _tmp0_ = NULL;
	CollectionPage* _tmp1_ = NULL;
	Photo* _tmp2_ = NULL;
	Photo* _tmp3_ = NULL;
	ViewCollection* _tmp4_ = NULL;
	ViewCollection* _tmp5_ = NULL;
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_COLLECTION_PAGE (collection), NULL);
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail (IS_PHOTO (start), NULL);
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_val_if_fail ((view == NULL) || IS_VIEW_COLLECTION (view), NULL);
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = (LibraryWindowFullscreenPhotoPage*) library_photo_page_construct (object_type);
#line 76 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = collection;
#line 76 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 76 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->collection);
#line 76 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->collection = _tmp1_;
#line 77 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = start;
#line 77 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 77 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->start);
#line 77 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->start = _tmp3_;
#line 78 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = view;
#line 78 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = _data_collection_ref0 (_tmp4_);
#line 78 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (self->priv->view);
#line 78 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->view = _tmp5_;
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return self;
#line 9252 "LibraryWindow.c"
}


static LibraryWindowFullscreenPhotoPage* library_window_fullscreen_photo_page_new (CollectionPage* collection, Photo* start, ViewCollection* view) {
#line 75 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	return library_window_fullscreen_photo_page_construct (LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, collection, start, view);
#line 9259 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_real_switched_to (Page* base) {
	LibraryWindowFullscreenPhotoPage * self;
	CollectionPage* _tmp0_ = NULL;
	Photo* _tmp1_ = NULL;
	ViewCollection* _tmp2_ = NULL;
#line 81 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPage);
#line 82 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->collection;
#line 82 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = self->priv->start;
#line 82 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->view;
#line 82 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_photo_page_display_for_collection (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPage), _tmp0_, _tmp1_, _tmp2_);
#line 84 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	PAGE_CLASS (library_window_fullscreen_photo_page_parent_class)->switched_to (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_LIBRARY_PHOTO_PAGE, LibraryPhotoPage), TYPE_PAGE, Page));
#line 9280 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_real_switching_from (Page* base) {
	LibraryWindowFullscreenPhotoPage * self;
#line 87 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPage);
#line 9288 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_real_init_collect_ui_filenames (Page* base, GeeList* ui_filenames) {
	LibraryWindowFullscreenPhotoPage * self;
	GeeList* _tmp0_ = NULL;
#line 90 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPage);
#line 90 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_return_if_fail (GEE_IS_LIST (ui_filenames));
#line 93 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = ui_filenames;
#line 93 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection), "photo_context.ui");
#line 9303 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_class_init (LibraryWindowFullscreenPhotoPageClass * klass) {
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_fullscreen_photo_page_parent_class = g_type_class_peek_parent (klass);
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_type_class_add_private (klass, sizeof (LibraryWindowFullscreenPhotoPagePrivate));
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((PageClass *) klass)->switched_to = (void (*)(Page*)) library_window_fullscreen_photo_page_real_switched_to;
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((PageClass *) klass)->switching_from = (void (*)(Page*)) library_window_fullscreen_photo_page_real_switching_from;
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((PageClass *) klass)->init_collect_ui_filenames = (void (*)(Page*, GeeList*)) library_window_fullscreen_photo_page_real_init_collect_ui_filenames;
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	G_OBJECT_CLASS (klass)->finalize = library_window_fullscreen_photo_page_finalize;
#line 9320 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_instance_init (LibraryWindowFullscreenPhotoPage * self) {
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv = LIBRARY_WINDOW_FULLSCREEN_PHOTO_PAGE_GET_PRIVATE (self);
#line 9327 "LibraryWindow.c"
}


static void library_window_fullscreen_photo_page_finalize (GObject* obj) {
	LibraryWindowFullscreenPhotoPage * self;
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, LIBRARY_WINDOW_TYPE_FULLSCREEN_PHOTO_PAGE, LibraryWindowFullscreenPhotoPage);
#line 71 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->collection);
#line 72 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->start);
#line 73 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_data_collection_unref0 (self->priv->view);
#line 70 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	G_OBJECT_CLASS (library_window_fullscreen_photo_page_parent_class)->finalize (obj);
#line 9343 "LibraryWindow.c"
}


static GType library_window_fullscreen_photo_page_get_type (void) {
	static volatile gsize library_window_fullscreen_photo_page_type_id__volatile = 0;
	if (g_once_init_enter (&library_window_fullscreen_photo_page_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (LibraryWindowFullscreenPhotoPageClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) library_window_fullscreen_photo_page_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (LibraryWindowFullscreenPhotoPage), 0, (GInstanceInitFunc) library_window_fullscreen_photo_page_instance_init, NULL };
		GType library_window_fullscreen_photo_page_type_id;
		library_window_fullscreen_photo_page_type_id = g_type_register_static (TYPE_LIBRARY_PHOTO_PAGE, "LibraryWindowFullscreenPhotoPage", &g_define_type_info, 0);
		g_once_init_leave (&library_window_fullscreen_photo_page_type_id__volatile, library_window_fullscreen_photo_page_type_id);
	}
	return library_window_fullscreen_photo_page_type_id__volatile;
}


static void library_window_class_init (LibraryWindowClass * klass) {
	GeeHashSet* _tmp0_ = NULL;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_parent_class = g_type_class_peek_parent (klass);
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_type_class_add_private (klass, sizeof (LibraryWindowPrivate));
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->add_actions = (void (*)(AppWindow*)) library_window_real_add_actions;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((PageWindowClass *) klass)->switched_pages = (void (*)(PageWindow*, Page*, Page*)) library_window_real_switched_pages;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((GtkWidgetClass *) klass)->show_all = (void (*)(GtkWidget*)) library_window_real_show_all;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->get_app_role = (gchar* (*)(AppWindow*)) library_window_real_get_app_role;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->on_quit = (void (*)(AppWindow*)) library_window_real_on_quit;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->on_fullscreen = (void (*)(AppWindow*)) library_window_real_on_fullscreen;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->update_common_action_availability = (void (*)(AppWindow*, Page*, Page*)) library_window_real_update_common_action_availability;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((AppWindowClass *) klass)->update_common_actions = (void (*)(AppWindow*, Page*, gint, gint)) library_window_real_update_common_actions;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((GtkWidgetClass *) klass)->drag_motion = (gboolean (*)(GtkWidget*, GdkDragContext*, gint, gint, guint)) library_window_real_drag_motion;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((GtkWidgetClass *) klass)->drag_data_received = (void (*)(GtkWidget*, GdkDragContext*, gint, gint, GtkSelectionData*, guint, guint)) library_window_real_drag_data_received;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((PageWindowClass *) klass)->set_current_page = (void (*)(PageWindow*, Page*)) library_window_real_set_current_page;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	((GtkWidgetClass *) klass)->key_press_event = (gboolean (*)(GtkWidget*, GdkEventKey*)) library_window_real_key_press_event;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_library_window_get_property;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	G_OBJECT_CLASS (klass)->finalize = library_window_finalize;
#line 122 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = gee_hash_set_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL);
#line 122 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_initial_camera_uris = _tmp0_;
#line 9397 "LibraryWindow.c"
}


static void library_window_instance_init (LibraryWindow * self) {
	const gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	GtkPaned* _tmp2_ = NULL;
	GtkPaned* _tmp3_ = NULL;
	GtkFrame* _tmp4_ = NULL;
	LibraryBranch* _tmp5_ = NULL;
	TagsBranch* _tmp6_ = NULL;
	FoldersBranch* _tmp7_ = NULL;
	EventsBranch* _tmp8_ = NULL;
	CameraBranch* _tmp9_ = NULL;
	SearchesBranch* _tmp10_ = NULL;
	GeeHashMap* _tmp11_ = NULL;
	SearchFilterActions* _tmp12_ = NULL;
	GtkBox* _tmp13_ = NULL;
	GtkFrame* _tmp14_ = NULL;
	GtkProgressBar* _tmp15_ = NULL;
	BasicProperties* _tmp16_ = NULL;
	GtkStack* _tmp17_ = NULL;
	GtkBox* _tmp18_ = NULL;
	GtkRevealer* _tmp19_ = NULL;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv = LIBRARY_WINDOW_GET_PRIVATE (self);
#line 97 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = g_get_home_dir ();
#line 97 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 97 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->import_dir = _tmp1_;
#line 98 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->import_recursive = TRUE;
#line 100 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_VERTICAL);
#line 100 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp2_);
#line 100 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->sidebar_paned = _tmp2_;
#line 101 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp3_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
#line 101 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp3_);
#line 101 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->client_paned = _tmp3_;
#line 102 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = (GtkFrame*) gtk_frame_new (NULL);
#line 102 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp4_);
#line 102 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->bottom_frame = _tmp4_;
#line 104 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->properties_scheduler = NULL;
#line 105 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->notify_library_is_home_dir = TRUE;
#line 109 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp5_ = library_branch_new ();
#line 109 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->library_branch = _tmp5_;
#line 110 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = tags_branch_new ();
#line 110 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->tags_branch = _tmp6_;
#line 111 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp7_ = folders_branch_new ();
#line 111 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->folders_branch = _tmp7_;
#line 112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = events_branch_new ();
#line 112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->events_branch = _tmp8_;
#line 113 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = camera_branch_new ();
#line 113 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->camera_branch = _tmp9_;
#line 114 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = searches_branch_new ();
#line 114 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->saved_search_branch = _tmp10_;
#line 115 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->page_switching_enabled = TRUE;
#line 117 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp11_ = gee_hash_map_new (TYPE_PAGE, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, SIDEBAR_TYPE_ENTRY, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 117 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->page_map = _tmp11_;
#line 119 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->photo_page = NULL;
#line 124 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->is_search_toolbar_visible = FALSE;
#line 129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = search_filter_actions_new ();
#line 129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->search_actions = _tmp12_;
#line 132 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp13_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
#line 132 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp13_);
#line 132 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->top_section = _tmp13_;
#line 133 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp14_ = (GtkFrame*) gtk_frame_new (NULL);
#line 133 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp14_);
#line 133 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->background_progress_frame = _tmp14_;
#line 134 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp15_ = (GtkProgressBar*) gtk_progress_bar_new ();
#line 134 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp15_);
#line 134 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->background_progress_bar = _tmp15_;
#line 135 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->background_progress_displayed = FALSE;
#line 137 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp16_ = basic_properties_new ();
#line 137 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp16_);
#line 137 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->basic_properties = _tmp16_;
#line 140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp17_ = (GtkStack*) gtk_stack_new ();
#line 140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp17_);
#line 140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->stack = _tmp17_;
#line 141 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp18_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
#line 141 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp18_);
#line 141 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->layout = _tmp18_;
#line 143 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp19_ = (GtkRevealer*) gtk_revealer_new ();
#line 143 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_object_ref_sink (_tmp19_);
#line 143 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->toolbar_revealer = _tmp19_;
#line 145 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->current_progress_priority = 0;
#line 146 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self->priv->background_progress_pulse_id = (guint) 0;
#line 9540 "LibraryWindow.c"
}


static void library_window_finalize (GObject* obj) {
	LibraryWindow * self;
	SidebarTree* _tmp0_ = NULL;
	guint _tmp1_ = 0U;
	SidebarTree* _tmp2_ = NULL;
	guint _tmp3_ = 0U;
	SidebarTree* _tmp4_ = NULL;
	guint _tmp5_ = 0U;
	SidebarTree* _tmp6_ = NULL;
	guint _tmp7_ = 0U;
	Page* _tmp8_ = NULL;
	Page* _tmp9_ = NULL;
	ExtendedPropertiesWindow* _tmp10_ = NULL;
	guint _tmp11_ = 0U;
	ExtendedPropertiesWindow* _tmp12_ = NULL;
	guint _tmp13_ = 0U;
	MetadataWriter* _tmp28_ = NULL;
	MetadataWriter* _tmp29_ = NULL;
	guint _tmp30_ = 0U;
	LibraryMonitor* monitor = NULL;
	LibraryMonitorPool* _tmp31_ = NULL;
	LibraryMonitorPool* _tmp32_ = NULL;
	LibraryMonitor* _tmp33_ = NULL;
	LibraryMonitor* _tmp34_ = NULL;
	LibraryMonitor* _tmp35_ = NULL;
	LibraryMonitorPool* _tmp37_ = NULL;
	LibraryMonitorPool* _tmp38_ = NULL;
	guint _tmp39_ = 0U;
	LibraryMonitorPool* _tmp40_ = NULL;
	LibraryMonitorPool* _tmp41_ = NULL;
	guint _tmp42_ = 0U;
	CameraTable* _tmp43_ = NULL;
	CameraTable* _tmp44_ = NULL;
	guint _tmp45_ = 0U;
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp0_ = self->priv->sidebar_tree;
#line 223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("page-created", SIDEBAR_TYPE_TREE, &_tmp1_, NULL, FALSE);
#line 223 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp0_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _library_window_on_page_created_sidebar_tree_page_created, self);
#line 224 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp2_ = self->priv->sidebar_tree;
#line 224 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("destroying-page", SIDEBAR_TYPE_TREE, &_tmp3_, NULL, FALSE);
#line 224 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp2_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _library_window_on_destroying_page_sidebar_tree_destroying_page, self);
#line 225 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp4_ = self->priv->sidebar_tree;
#line 225 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("entry-selected", SIDEBAR_TYPE_TREE, &_tmp5_, NULL, FALSE);
#line 225 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp4_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp5_, 0, NULL, (GCallback) _library_window_on_sidebar_entry_selected_sidebar_tree_entry_selected, self);
#line 226 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp6_ = self->priv->sidebar_tree;
#line 226 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("selected-entry-removed", SIDEBAR_TYPE_TREE, &_tmp7_, NULL, FALSE);
#line 226 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp6_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp7_, 0, NULL, (GCallback) _library_window_on_sidebar_selected_entry_removed_sidebar_tree_selected_entry_removed, self);
#line 228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp8_ = page_window_get_current_page (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE_WINDOW, PageWindow));
#line 228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp9_ = _tmp8_;
#line 228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	library_window_unsubscribe_from_basic_information (self, _tmp9_);
#line 228 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp9_);
#line 230 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp10_ = self->priv->extended_properties;
#line 230 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("hide", gtk_widget_get_type (), &_tmp11_, NULL, FALSE);
#line 230 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_widget_get_type (), GtkWidget), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp11_, 0, NULL, (GCallback) _library_window_hide_extended_properties_gtk_widget_hide, self);
#line 231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp12_ = self->priv->extended_properties;
#line 231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("show", gtk_widget_get_type (), &_tmp13_, NULL, FALSE);
#line 231 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_widget_get_type (), GtkWidget), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp13_, 0, NULL, (GCallback) _library_window_show_extended_properties_gtk_widget_show, self);
#line 9624 "LibraryWindow.c"
	{
		GeeIterator* _media_sources_it = NULL;
		MediaCollectionRegistry* _tmp14_ = NULL;
		MediaCollectionRegistry* _tmp15_ = NULL;
		GeeCollection* _tmp16_ = NULL;
		GeeCollection* _tmp17_ = NULL;
		GeeIterator* _tmp18_ = NULL;
		GeeIterator* _tmp19_ = NULL;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp14_ = media_collection_registry_get_instance ();
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp15_ = _tmp14_;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp16_ = media_collection_registry_get_all (_tmp15_);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp17_ = _tmp16_;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp18_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, GEE_TYPE_ITERABLE, GeeIterable));
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp19_ = _tmp18_;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_tmp17_);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_media_collection_registry_unref0 (_tmp15_);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_media_sources_it = _tmp19_;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		while (TRUE) {
#line 9653 "LibraryWindow.c"
			GeeIterator* _tmp20_ = NULL;
			gboolean _tmp21_ = FALSE;
			MediaSourceCollection* media_sources = NULL;
			GeeIterator* _tmp22_ = NULL;
			gpointer _tmp23_ = NULL;
			MediaSourceCollection* _tmp24_ = NULL;
			guint _tmp25_ = 0U;
			MediaSourceCollection* _tmp26_ = NULL;
			guint _tmp27_ = 0U;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp20_ = _media_sources_it;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp21_ = gee_iterator_next (_tmp20_);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			if (!_tmp21_) {
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
				break;
#line 9671 "LibraryWindow.c"
			}
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp22_ = _media_sources_it;
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp23_ = gee_iterator_get (_tmp22_);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			media_sources = (MediaSourceCollection*) _tmp23_;
#line 234 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp24_ = media_sources;
#line 234 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_parse_name ("trashcan-contents-altered", TYPE_MEDIA_SOURCE_COLLECTION, &_tmp25_, NULL, FALSE);
#line 234 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_handlers_disconnect_matched (_tmp24_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp25_, 0, NULL, (GCallback) _library_window_on_trashcan_contents_altered_media_source_collection_trashcan_contents_altered, self);
#line 235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_tmp26_ = media_sources;
#line 235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_parse_name ("items-altered", TYPE_DATA_COLLECTION, &_tmp27_, NULL, FALSE);
#line 235 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp27_, 0, NULL, (GCallback) _library_window_on_media_altered_data_collection_items_altered, self);
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
			_data_collection_unref0 (media_sources);
#line 9693 "LibraryWindow.c"
		}
#line 233 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_g_object_unref0 (_media_sources_it);
#line 9697 "LibraryWindow.c"
	}
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp28_ = metadata_writer_get_instance ();
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp29_ = _tmp28_;
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("progress", TYPE_METADATA_WRITER, &_tmp30_, NULL, FALSE);
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp29_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp30_, 0, NULL, (GCallback) _library_window_on_metadata_writer_progress_metadata_writer_progress, self);
#line 238 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (_tmp29_);
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp31_ = library_monitor_pool_get_instance ();
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp32_ = _tmp31_;
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp33_ = library_monitor_pool_get_monitor (_tmp32_);
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp34_ = _tmp33_;
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp32_);
#line 240 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	monitor = _tmp34_;
#line 241 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp35_ = monitor;
#line 241 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	if (_tmp35_ != NULL) {
#line 9725 "LibraryWindow.c"
		LibraryMonitor* _tmp36_ = NULL;
#line 242 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		_tmp36_ = monitor;
#line 242 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		library_window_on_library_monitor_destroyed (self, _tmp36_);
#line 9731 "LibraryWindow.c"
	}
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp37_ = library_monitor_pool_get_instance ();
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp38_ = _tmp37_;
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("monitor-installed", TYPE_LIBRARY_MONITOR_POOL, &_tmp39_, NULL, FALSE);
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp38_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp39_, 0, NULL, (GCallback) _library_window_on_library_monitor_installed_library_monitor_pool_monitor_installed, self);
#line 244 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp38_);
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp40_ = library_monitor_pool_get_instance ();
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp41_ = _tmp40_;
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("monitor-destroyed", TYPE_LIBRARY_MONITOR_POOL, &_tmp42_, NULL, FALSE);
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp41_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp42_, 0, NULL, (GCallback) _library_window_on_library_monitor_destroyed_library_monitor_pool_monitor_destroyed, self);
#line 245 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_library_monitor_pool_unref0 (_tmp41_);
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp43_ = camera_table_get_instance ();
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_tmp44_ = _tmp43_;
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_parse_name ("camera-added", TYPE_CAMERA_TABLE, &_tmp45_, NULL, FALSE);
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	g_signal_handlers_disconnect_matched (_tmp44_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp45_, 0, NULL, (GCallback) _library_window_on_camera_added_camera_table_camera_added, self);
#line 247 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_camera_table_unref0 (_tmp44_);
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (monitor);
#line 97 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_free0 (self->priv->import_dir);
#line 100 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->sidebar_paned);
#line 101 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->client_paned);
#line 102 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->bottom_frame);
#line 104 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_one_shot_scheduler_unref0 (self->priv->properties_scheduler);
#line 108 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->sidebar_tree);
#line 109 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->library_branch);
#line 110 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->tags_branch);
#line 111 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->folders_branch);
#line 112 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->events_branch);
#line 113 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->camera_branch);
#line 114 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->saved_search_branch);
#line 117 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->page_map);
#line 119 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->photo_page);
#line 129 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_search_filter_actions_unref0 (self->priv->search_actions);
#line 130 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->search_toolbar);
#line 132 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->top_section);
#line 133 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->background_progress_frame);
#line 134 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->background_progress_bar);
#line 137 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->basic_properties);
#line 138 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->extended_properties);
#line 140 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->stack);
#line 141 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->layout);
#line 142 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->right_vbox);
#line 143 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	_g_object_unref0 (self->priv->toolbar_revealer);
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	G_OBJECT_CLASS (library_window_parent_class)->finalize (obj);
#line 9817 "LibraryWindow.c"
}


GType library_window_get_type (void) {
	static volatile gsize library_window_type_id__volatile = 0;
	if (g_once_init_enter (&library_window_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (LibraryWindowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) library_window_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (LibraryWindow), 0, (GInstanceInitFunc) library_window_instance_init, NULL };
		GType library_window_type_id;
		library_window_type_id = g_type_register_static (TYPE_APP_WINDOW, "LibraryWindow", &g_define_type_info, 0);
		g_once_init_leave (&library_window_type_id__volatile, library_window_type_id);
	}
	return library_window_type_id__volatile;
}


static void _vala_library_window_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	LibraryWindow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_LIBRARY_WINDOW, LibraryWindow);
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
	switch (property_id) {
#line 9838 "LibraryWindow.c"
		default:
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 7 "/home/jens/Source/shotwell/src/library/LibraryWindow.vala"
		break;
#line 9844 "LibraryWindow.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);
}


static gint _vala_array_length (gpointer array) {
	int length;
	length = 0;
	if (array) {
		while (((gpointer*) array)[length]) {
			length++;
		}
	}
	return length;
}



