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

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

#include <adwaita.h>
#include <glib-object.h>
#include "planify.h"
#include <gtk/gtk.h>
#include <gee.h>
#include <glib.h>
#include <glib/gi18n-lib.h>
#include <stdlib.h>
#include <string.h>
#include <float.h>
#include <math.h>
#include <gdk/gdk.h>
#include <gio/gio.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define VIEWS_TYPE_PROJECT (views_project_get_type ())
#define VIEWS_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIEWS_TYPE_PROJECT, ViewsProject))
#define VIEWS_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VIEWS_TYPE_PROJECT, ViewsProjectClass))
#define VIEWS_IS_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIEWS_TYPE_PROJECT))
#define VIEWS_IS_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIEWS_TYPE_PROJECT))
#define VIEWS_PROJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VIEWS_TYPE_PROJECT, ViewsProjectClass))

typedef struct _ViewsProject ViewsProject;
typedef struct _ViewsProjectClass ViewsProjectClass;
typedef struct _ViewsProjectPrivate ViewsProjectPrivate;

#define LAYOUTS_TYPE_HEADER_BAR (layouts_header_bar_get_type ())
#define LAYOUTS_HEADER_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LAYOUTS_TYPE_HEADER_BAR, LayoutsHeaderBar))
#define LAYOUTS_HEADER_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LAYOUTS_TYPE_HEADER_BAR, LayoutsHeaderBarClass))
#define LAYOUTS_IS_HEADER_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LAYOUTS_TYPE_HEADER_BAR))
#define LAYOUTS_IS_HEADER_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LAYOUTS_TYPE_HEADER_BAR))
#define LAYOUTS_HEADER_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LAYOUTS_TYPE_HEADER_BAR, LayoutsHeaderBarClass))

typedef struct _LayoutsHeaderBar LayoutsHeaderBar;
typedef struct _LayoutsHeaderBarClass LayoutsHeaderBarClass;

#define WIDGETS_TYPE_MULTI_SELECT_TOOLBAR (widgets_multi_select_toolbar_get_type ())
#define WIDGETS_MULTI_SELECT_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WIDGETS_TYPE_MULTI_SELECT_TOOLBAR, WidgetsMultiSelectToolbar))
#define WIDGETS_MULTI_SELECT_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WIDGETS_TYPE_MULTI_SELECT_TOOLBAR, WidgetsMultiSelectToolbarClass))
#define WIDGETS_IS_MULTI_SELECT_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WIDGETS_TYPE_MULTI_SELECT_TOOLBAR))
#define WIDGETS_IS_MULTI_SELECT_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WIDGETS_TYPE_MULTI_SELECT_TOOLBAR))
#define WIDGETS_MULTI_SELECT_TOOLBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WIDGETS_TYPE_MULTI_SELECT_TOOLBAR, WidgetsMultiSelectToolbarClass))

typedef struct _WidgetsMultiSelectToolbar WidgetsMultiSelectToolbar;
typedef struct _WidgetsMultiSelectToolbarClass WidgetsMultiSelectToolbarClass;
enum  {
	VIEWS_PROJECT_0_PROPERTY,
	VIEWS_PROJECT_PROJECT_PROPERTY,
	VIEWS_PROJECT_VIEW_STYLE_PROPERTY,
	VIEWS_PROJECT_NUM_PROPERTIES
};
static GParamSpec* views_project_properties[VIEWS_PROJECT_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define VIEWS_TYPE_LIST (views_list_get_type ())
#define VIEWS_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIEWS_TYPE_LIST, ViewsList))
#define VIEWS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VIEWS_TYPE_LIST, ViewsListClass))
#define VIEWS_IS_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIEWS_TYPE_LIST))
#define VIEWS_IS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIEWS_TYPE_LIST))
#define VIEWS_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VIEWS_TYPE_LIST, ViewsListClass))

typedef struct _ViewsList ViewsList;
typedef struct _ViewsListClass ViewsListClass;

#define VIEWS_TYPE_BOARD (views_board_get_type ())
#define VIEWS_BOARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIEWS_TYPE_BOARD, ViewsBoard))
#define VIEWS_BOARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VIEWS_TYPE_BOARD, ViewsBoardClass))
#define VIEWS_IS_BOARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIEWS_TYPE_BOARD))
#define VIEWS_IS_BOARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIEWS_TYPE_BOARD))
#define VIEWS_BOARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VIEWS_TYPE_BOARD, ViewsBoardClass))

typedef struct _ViewsBoard ViewsBoard;
typedef struct _ViewsBoardClass ViewsBoardClass;

#define DIALOGS_TYPE_PROJECT (dialogs_project_get_type ())
#define DIALOGS_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_PROJECT, DialogsProject))
#define DIALOGS_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_PROJECT, DialogsProjectClass))
#define DIALOGS_IS_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_PROJECT))
#define DIALOGS_IS_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_PROJECT))
#define DIALOGS_PROJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_PROJECT, DialogsProjectClass))

typedef struct _DialogsProject DialogsProject;
typedef struct _DialogsProjectClass DialogsProjectClass;

#define TYPE_PLANIFY (planify_get_type ())
#define PLANIFY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PLANIFY, Planify))
#define PLANIFY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PLANIFY, PlanifyClass))
#define IS_PLANIFY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PLANIFY))
#define IS_PLANIFY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PLANIFY))
#define PLANIFY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PLANIFY, PlanifyClass))

typedef struct _Planify Planify;
typedef struct _PlanifyClass PlanifyClass;
typedef struct _PlanifyPrivate PlanifyPrivate;

#define TYPE_MAIN_WINDOW (main_window_get_type ())
#define MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MAIN_WINDOW, MainWindow))
#define MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MAIN_WINDOW, MainWindowClass))
#define IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MAIN_WINDOW))
#define IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MAIN_WINDOW))
#define MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MAIN_WINDOW, MainWindowClass))

typedef struct _MainWindow MainWindow;
typedef struct _MainWindowClass MainWindowClass;

#define DIALOGS_TYPE_DATE_PICKER (dialogs_date_picker_get_type ())
#define DIALOGS_DATE_PICKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_DATE_PICKER, DialogsDatePicker))
#define DIALOGS_DATE_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_DATE_PICKER, DialogsDatePickerClass))
#define DIALOGS_IS_DATE_PICKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_DATE_PICKER))
#define DIALOGS_IS_DATE_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_DATE_PICKER))
#define DIALOGS_DATE_PICKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_DATE_PICKER, DialogsDatePickerClass))

typedef struct _DialogsDatePicker DialogsDatePicker;
typedef struct _DialogsDatePickerClass DialogsDatePickerClass;
typedef struct _Block62Data Block62Data;
#define _g_free0(var) (var = (g_free (var), NULL))

#define DIALOGS_TYPE_MANAGE_SECTION_ORDER (dialogs_manage_section_order_get_type ())
#define DIALOGS_MANAGE_SECTION_ORDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_MANAGE_SECTION_ORDER, DialogsManageSectionOrder))
#define DIALOGS_MANAGE_SECTION_ORDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_MANAGE_SECTION_ORDER, DialogsManageSectionOrderClass))
#define DIALOGS_IS_MANAGE_SECTION_ORDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_MANAGE_SECTION_ORDER))
#define DIALOGS_IS_MANAGE_SECTION_ORDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_MANAGE_SECTION_ORDER))
#define DIALOGS_MANAGE_SECTION_ORDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_MANAGE_SECTION_ORDER, DialogsManageSectionOrderClass))

typedef struct _DialogsManageSectionOrder DialogsManageSectionOrder;
typedef struct _DialogsManageSectionOrderClass DialogsManageSectionOrderClass;

#define DIALOGS_TYPE_CALENDAR_SYNC (dialogs_calendar_sync_get_type ())
#define DIALOGS_CALENDAR_SYNC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_CALENDAR_SYNC, DialogsCalendarSync))
#define DIALOGS_CALENDAR_SYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_CALENDAR_SYNC, DialogsCalendarSyncClass))
#define DIALOGS_IS_CALENDAR_SYNC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_CALENDAR_SYNC))
#define DIALOGS_IS_CALENDAR_SYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_CALENDAR_SYNC))
#define DIALOGS_CALENDAR_SYNC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_CALENDAR_SYNC, DialogsCalendarSyncClass))

typedef struct _DialogsCalendarSync DialogsCalendarSync;
typedef struct _DialogsCalendarSyncClass DialogsCalendarSyncClass;
typedef struct _Block63Data Block63Data;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _Block64Data Block64Data;

#define DIALOGS_TYPE_COMPLETED_TASKS (dialogs_completed_tasks_get_type ())
#define DIALOGS_COMPLETED_TASKS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_COMPLETED_TASKS, DialogsCompletedTasks))
#define DIALOGS_COMPLETED_TASKS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_COMPLETED_TASKS, DialogsCompletedTasksClass))
#define DIALOGS_IS_COMPLETED_TASKS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_COMPLETED_TASKS))
#define DIALOGS_IS_COMPLETED_TASKS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_COMPLETED_TASKS))
#define DIALOGS_COMPLETED_TASKS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_COMPLETED_TASKS, DialogsCompletedTasksClass))

typedef struct _DialogsCompletedTasks DialogsCompletedTasks;
typedef struct _DialogsCompletedTasksClass DialogsCompletedTasksClass;

#define DIALOGS_TYPE_LABEL_PICKER (dialogs_label_picker_get_type ())
#define DIALOGS_LABEL_PICKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_LABEL_PICKER, DialogsLabelPicker))
#define DIALOGS_LABEL_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_LABEL_PICKER, DialogsLabelPickerClass))
#define DIALOGS_IS_LABEL_PICKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_LABEL_PICKER))
#define DIALOGS_IS_LABEL_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_LABEL_PICKER))
#define DIALOGS_LABEL_PICKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_LABEL_PICKER, DialogsLabelPickerClass))

typedef struct _DialogsLabelPicker DialogsLabelPicker;
typedef struct _DialogsLabelPickerClass DialogsLabelPickerClass;

#define DIALOGS_TYPE_SECTION (dialogs_section_get_type ())
#define DIALOGS_SECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_SECTION, DialogsSection))
#define DIALOGS_SECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_SECTION, DialogsSectionClass))
#define DIALOGS_IS_SECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_SECTION))
#define DIALOGS_IS_SECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_SECTION))
#define DIALOGS_SECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_SECTION, DialogsSectionClass))

typedef struct _DialogsSection DialogsSection;
typedef struct _DialogsSectionClass DialogsSectionClass;
typedef struct _Block65Data Block65Data;

#define WIDGETS_TYPE_MAGIC_BUTTON (widgets_magic_button_get_type ())
#define WIDGETS_MAGIC_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WIDGETS_TYPE_MAGIC_BUTTON, WidgetsMagicButton))
#define WIDGETS_MAGIC_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WIDGETS_TYPE_MAGIC_BUTTON, WidgetsMagicButtonClass))
#define WIDGETS_IS_MAGIC_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WIDGETS_TYPE_MAGIC_BUTTON))
#define WIDGETS_IS_MAGIC_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WIDGETS_TYPE_MAGIC_BUTTON))
#define WIDGETS_MAGIC_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WIDGETS_TYPE_MAGIC_BUTTON, WidgetsMagicButtonClass))

typedef struct _WidgetsMagicButton WidgetsMagicButton;
typedef struct _WidgetsMagicButtonClass WidgetsMagicButtonClass;

struct _ViewsProject {
	AdwBin parent_instance;
	ViewsProjectPrivate * priv;
};

struct _ViewsProjectClass {
	AdwBinClass parent_class;
};

struct _ViewsProjectPrivate {
	ObjectsProject* _project;
	LayoutsHeaderBar* headerbar;
	GtkRevealer* project_view_revealer;
	AdwSpinner* loading_spinner;
	AdwViewStack* project_stack;
	AdwToolbarView* toolbar_view;
	WidgetsContextMenuMenuItem* expand_all_item;
	WidgetsContextMenuMenuCheckPicker* priority_filter;
	WidgetsContextMenuMenuPicker* due_date_item;
	WidgetsContextMenuMenuItem* calendar_sync_item;
	WidgetsMultiSelectToolbar* multiselect_toolbar;
	GtkRevealer* indicator_revealer;
	GtkPopover* context_menu;
	GeeHashMap* signal_map;
};

struct _Planify {
	AdwApplication parent_instance;
	PlanifyPrivate * priv;
	MainWindow* main_window;
};

struct _PlanifyClass {
	AdwApplicationClass parent_class;
};

struct _Block62Data {
	int _ref_count_;
	ViewsProject* self;
	DialogsDatePicker* dialog;
};

struct _Block63Data {
	int _ref_count_;
	ViewsProject* self;
	GdkClipboard* clipboard;
};

struct _Block64Data {
	int _ref_count_;
	ViewsProject* self;
	AdwToggleGroup* view_group;
	WidgetsContextMenuMenuPicker* sorted_by_item;
	WidgetsContextMenuMenuSwitch* sort_order_item;
	WidgetsContextMenuMenuSwitch* show_completed_item;
	GtkPopover* popover;
};

struct _Block65Data {
	int _ref_count_;
	ViewsProject* self;
	GtkRevealer* calendar_sync_revealer;
};

static gint ViewsProject_private_offset;
static gpointer views_project_parent_class = NULL;
VALA_EXTERN Planify* planify__instance;

VALA_EXTERN GType views_project_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ViewsProject, g_object_unref)
VALA_EXTERN GType layouts_header_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (LayoutsHeaderBar, g_object_unref)
VALA_EXTERN GType widgets_multi_select_toolbar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsMultiSelectToolbar, g_object_unref)
VALA_EXTERN ViewsProject* views_project_new (ObjectsProject* project);
VALA_EXTERN ViewsProject* views_project_construct (GType object_type,
                                       ObjectsProject* project);
static void views_project_create_context_menu (ViewsProject* self);
static void __lambda553_ (ViewsProject* self);
VALA_EXTERN void views_project_prepare_new_item (ViewsProject* self,
                                     const gchar* content);
static void ___lambda553__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda745_ (ViewsProject* self);
VALA_EXTERN void views_project_prepare_new_section (ViewsProject* self);
static void ___lambda745__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void views_project_on_right_click (ViewsProject* self,
                                   gint n_press,
                                   gdouble x,
                                   gdouble y);
static void views_project_check_default_filters (ViewsProject* self);
VALA_EXTERN ObjectsProject* views_project_get_project (ViewsProject* self);
static void views_project_update_project_view (ViewsProject* self);
static void views_project_clear_multi_select (ViewsProject* self);
static gboolean __lambda746_ (ViewsProject* self);
static void views_project_destroy_current_view (ViewsProject* self);
VALA_EXTERN ProjectViewStyle views_project_get_view_style (ViewsProject* self);
VALA_EXTERN ViewsList* views_list_new (ObjectsProject* project);
VALA_EXTERN ViewsList* views_list_construct (GType object_type,
                                 ObjectsProject* project);
VALA_EXTERN GType views_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ViewsList, g_object_unref)
VALA_EXTERN void layouts_header_bar_update_title_box_visibility (LayoutsHeaderBar* self,
                                                     gboolean visible);
VALA_EXTERN ViewsBoard* views_board_new (ObjectsProject* project);
VALA_EXTERN ViewsBoard* views_board_construct (GType object_type,
                                   ObjectsProject* project);
VALA_EXTERN GType views_board_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ViewsBoard, g_object_unref)
static gboolean ___lambda746__gsource_func (gpointer self);
VALA_EXTERN void views_list_clean_up (ViewsList* self);
VALA_EXTERN void views_board_clean_up (ViewsBoard* self);
VALA_EXTERN void views_list_prepare_new_item (ViewsList* self,
                                  const gchar* content);
VALA_EXTERN void views_board_prepare_new_item (ViewsBoard* self,
                                   const gchar* content);
static GtkPopover* views_project_build_context_menu_popover (ViewsProject* self);
static void ___lambda747_ (ViewsProject* self);
VALA_EXTERN GType dialogs_project_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsProject, g_object_unref)
VALA_EXTERN DialogsProject* dialogs_project_new (ObjectsProject* project);
VALA_EXTERN DialogsProject* dialogs_project_construct (GType object_type,
                                           ObjectsProject* project);
VALA_EXTERN GType planify_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (Planify, g_object_unref)
VALA_EXTERN GType main_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MainWindow, g_object_unref)
static void ____lambda747__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda748_ (ViewsProject* self);
VALA_EXTERN GType dialogs_date_picker_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsDatePicker, g_object_unref)
static Block62Data* block62_data_ref (Block62Data* _data62_);
static void block62_data_unref (void * _userdata_);
VALA_EXTERN DialogsDatePicker* dialogs_date_picker_new (const gchar* title);
VALA_EXTERN DialogsDatePicker* dialogs_date_picker_construct (GType object_type,
                                                  const gchar* title);
VALA_EXTERN void dialogs_date_picker_set_clear (DialogsDatePicker* self,
                                    gboolean value);
static void __lambda749_ (Block62Data* _data62_);
VALA_EXTERN GDateTime* dialogs_date_picker_get_datetime (DialogsDatePicker* self);
static void ___lambda749__dialogs_date_picker_date_changed (DialogsDatePicker* _sender,
                                                     gpointer self);
static void ____lambda748__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda750_ (ViewsProject* self);
static void ____lambda750__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda751_ (ViewsProject* self);
static void ____lambda751__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda752_ (ViewsProject* self);
VALA_EXTERN GType dialogs_manage_section_order_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsManageSectionOrder, g_object_unref)
VALA_EXTERN DialogsManageSectionOrder* dialogs_manage_section_order_new (ObjectsProject* project);
VALA_EXTERN DialogsManageSectionOrder* dialogs_manage_section_order_construct (GType object_type,
                                                                   ObjectsProject* project);
static void ____lambda752__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda753_ (ViewsProject* self);
VALA_EXTERN GType dialogs_calendar_sync_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsCalendarSync, g_object_unref)
VALA_EXTERN DialogsCalendarSync* dialogs_calendar_sync_new (ObjectsProject* project);
VALA_EXTERN DialogsCalendarSync* dialogs_calendar_sync_construct (GType object_type,
                                                      ObjectsProject* project);
static void ____lambda753__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda759_ (ViewsProject* self);
VALA_EXTERN Planify* planify_get_instance (void);
static void ____lambda759__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda760_ (ViewsProject* self);
static void ____lambda760__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void __lambda761_ (ViewsProject* self);
static Block63Data* block63_data_ref (Block63Data* _data63_);
static void block63_data_unref (void * _userdata_);
static void __lambda762_ (Block63Data* _data63_,
                   GObject* obj,
                   GAsyncResult* res);
VALA_EXTERN void main_window_add_task_action (MainWindow* self,
                                  const gchar* content);
static void ___lambda762__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static void ___lambda761__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda763_ (ViewsProject* self);
static void ___lambda763__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda764_ (ViewsProject* self);
static void ___lambda764__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static GtkPopover* views_project_build_view_setting_popover (ViewsProject* self);
static Block64Data* block64_data_ref (Block64Data* _data64_);
static void block64_data_unref (void * _userdata_);
static void ___lambda765_ (Block64Data* _data64_);
static void ____lambda765__g_object_notify (GObject* _sender,
                                     GParamSpec* pspec,
                                     gpointer self);
static void __lambda766_ (Block64Data* _data64_);
static void ___lambda766__g_object_notify (GObject* _sender,
                                    GParamSpec* pspec,
                                    gpointer self);
static void __lambda767_ (Block64Data* _data64_);
static void ___lambda767__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                                   gpointer self);
static void __lambda768_ (ViewsProject* self);
static void ___lambda768__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                                   gpointer self);
static void __lambda769_ (Block64Data* _data64_);
static void ___lambda769__objects_project_show_completed_changed (ObjectsProject* _sender,
                                                           gpointer self);
static void __lambda770_ (Block64Data* _data64_);
VALA_EXTERN GType dialogs_completed_tasks_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsCompletedTasks, g_object_unref)
VALA_EXTERN DialogsCompletedTasks* dialogs_completed_tasks_new (ObjectsProject* project);
VALA_EXTERN DialogsCompletedTasks* dialogs_completed_tasks_construct (GType object_type,
                                                          ObjectsProject* project);
static void ___lambda770__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda771_ (Block64Data* _data64_);
static void ___lambda771__objects_project_sorted_by_changed (ObjectsProject* _sender,
                                                      gpointer self);
static void __lambda772_ (Block64Data* _data64_);
static void ___lambda772__objects_project_sort_order_changed (ObjectsProject* _sender,
                                                       gpointer self);
static void __lambda773_ (ViewsProject* self);
static void ___lambda773__g_object_notify (GObject* _sender,
                                    GParamSpec* pspec,
                                    gpointer self);
static void __lambda774_ (ViewsProject* self,
                   ObjectsFiltersFilterItem* filter,
                   gboolean active);
static void ___lambda774__widgets_context_menu_menu_check_picker_filter_change (WidgetsContextMenuMenuCheckPicker* _sender,
                                                                         ObjectsFiltersFilterItem* filter,
                                                                         gboolean active,
                                                                         gpointer self);
static void __lambda775_ (ViewsProject* self);
VALA_EXTERN GType dialogs_label_picker_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsLabelPicker, g_object_unref)
VALA_EXTERN DialogsLabelPicker* dialogs_label_picker_new (LabelPickerType picker_type);
VALA_EXTERN DialogsLabelPicker* dialogs_label_picker_construct (GType object_type,
                                                    LabelPickerType picker_type);
VALA_EXTERN void dialogs_label_picker_add_labels (DialogsLabelPicker* self,
                                      ObjectsSource* source);
VALA_EXTERN void dialogs_label_picker_set_labels (DialogsLabelPicker* self,
                                      GeeArrayList* value);
static void __lambda776_ (ViewsProject* self,
                   GeeHashMap* labels);
static void ___lambda776__dialogs_label_picker_labels_changed (DialogsLabelPicker* _sender,
                                                        GeeHashMap* labels,
                                                        gpointer self);
static void ___lambda775__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                 gpointer self);
VALA_EXTERN GType dialogs_section_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsSection, g_object_unref)
VALA_EXTERN DialogsSection* dialogs_section_new_new (ObjectsProject* project);
VALA_EXTERN DialogsSection* dialogs_section_construct_new (GType object_type,
                                               ObjectsProject* project);
VALA_EXTERN void views_project_clean_up (ViewsProject* self);
static void views_project_real_dispose (GObject* base);
static void views_project_set_project (ViewsProject* self,
                                ObjectsProject* value);
static GObject * views_project_constructor (GType type,
                                     guint n_construct_properties,
                                     GObjectConstructParam * construct_properties);
static Block65Data* block65_data_ref (Block65Data* _data65_);
static void block65_data_unref (void * _userdata_);
VALA_EXTERN LayoutsHeaderBar* layouts_header_bar_new (void);
VALA_EXTERN LayoutsHeaderBar* layouts_header_bar_construct (GType object_type);
VALA_EXTERN void layouts_header_bar_set_title (LayoutsHeaderBar* self,
                                   const gchar* value);
VALA_EXTERN void layouts_header_bar_pack_end (LayoutsHeaderBar* self,
                                  GtkWidget* widget);
VALA_EXTERN GType widgets_magic_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsMagicButton, g_object_unref)
VALA_EXTERN WidgetsMagicButton* widgets_magic_button_new (void);
VALA_EXTERN WidgetsMagicButton* widgets_magic_button_construct (GType object_type);
static void _views_project____lambda777_ (ViewsProject* self);
static void __views_project____lambda777__widgets_magic_button_clicked (WidgetsMagicButton* _sender,
                                                                 gpointer self);
VALA_EXTERN WidgetsMultiSelectToolbar* widgets_multi_select_toolbar_new (ObjectsProject* project);
VALA_EXTERN WidgetsMultiSelectToolbar* widgets_multi_select_toolbar_construct (GType object_type,
                                                                   ObjectsProject* project);
static void _views_project_on_right_click_gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                                              gint n_press,
                                                              gdouble x,
                                                              gdouble y,
                                                              gpointer self);
static void _views_project___lambda778_ (Block65Data* _data65_);
static void __views_project___lambda778__objects_base_object_updated (ObjectsBaseObject* _sender,
                                                               const gchar* update_id,
                                                               gpointer self);
static void _views_project___lambda779_ (ViewsProject* self);
static void __views_project___lambda779__widgets_multi_select_toolbar_closed (WidgetsMultiSelectToolbar* _sender,
                                                                       gpointer self);
static void _views_project___lambda780_ (ViewsProject* self);
static void __views_project___lambda780__objects_project_show_multi_select_change (ObjectsProject* _sender,
                                                                            gpointer self);
static void _views_project___lambda781_ (ViewsProject* self);
static void __views_project___lambda781__objects_base_object_filter_added (ObjectsBaseObject* _sender,
                                                                    ObjectsFiltersFilterItem* filters,
                                                                    gpointer self);
static void _views_project___lambda782_ (ViewsProject* self);
static void __views_project___lambda782__objects_base_object_filter_updated (ObjectsBaseObject* _sender,
                                                                      ObjectsFiltersFilterItem* filters,
                                                                      gpointer self);
static void _views_project___lambda783_ (ViewsProject* self,
                                  ObjectsFiltersFilterItem* filter);
static void __views_project___lambda783__objects_base_object_filter_removed (ObjectsBaseObject* _sender,
                                                                      ObjectsFiltersFilterItem* filters,
                                                                      gpointer self);
static void _views_project___lambda784_ (ViewsProject* self);
static void __views_project___lambda784__objects_project_view_style_changed (ObjectsProject* _sender,
                                                                      gpointer self);
static void _views_project___lambda785_ (ViewsProject* self,
                                  gboolean visible);
static void __views_project___lambda785__objects_base_object_handle_scroll_visibility_change (ObjectsBaseObject* _sender,
                                                                                       gboolean visible,
                                                                                       gpointer self);
static void _views_project___lambda786_ (ViewsProject* self);
static void __views_project___lambda786__gtk_button_clicked (GtkButton* _sender,
                                                      gpointer self);
static void views_project_finalize (GObject * obj);
static GType views_project_get_type_once (void);
static void _vala_views_project_get_property (GObject * object,
                                       guint property_id,
                                       GValue * value,
                                       GParamSpec * pspec);
static void _vala_views_project_set_property (GObject * object,
                                       guint property_id,
                                       const GValue * value,
                                       GParamSpec * pspec);
static void _vala_array_destroy (gpointer array,
                          gssize array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gssize array_length,
                       GDestroyNotify destroy_func);

static inline gpointer
views_project_get_instance_private (ViewsProject* self)
{
	return G_STRUCT_MEMBER_P (self, ViewsProject_private_offset);
}

ViewsProject*
views_project_construct (GType object_type,
                         ObjectsProject* project)
{
	ViewsProject * self = NULL;
	g_return_val_if_fail (project != NULL, NULL);
	self = (ViewsProject*) g_object_new (object_type, "project", project, NULL);
	return self;
}

ViewsProject*
views_project_new (ObjectsProject* project)
{
	return views_project_construct (VIEWS_TYPE_PROJECT, project);
}

static gpointer
_g_object_ref0 (gpointer self)
{
	return self ? g_object_ref (self) : NULL;
}

static void
__lambda553_ (ViewsProject* self)
{
	GtkPopover* _tmp0_;
	views_project_prepare_new_item (self, "");
	_tmp0_ = self->priv->context_menu;
	gtk_popover_popdown (_tmp0_);
}

static void
___lambda553__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda553_ ((ViewsProject*) self);
}

static void
__lambda745_ (ViewsProject* self)
{
	GtkPopover* _tmp0_;
	views_project_prepare_new_section (self);
	_tmp0_ = self->priv->context_menu;
	gtk_popover_popdown (_tmp0_);
}

static void
___lambda745__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda745_ ((ViewsProject*) self);
}

static void
views_project_create_context_menu (ViewsProject* self)
{
	WidgetsContextMenuMenuItem* add_task_item = NULL;
	WidgetsContextMenuMenuItem* _tmp0_;
	WidgetsContextMenuMenuItem* add_section_item = NULL;
	WidgetsContextMenuMenuItem* _tmp1_;
	GtkBox* menu_box = NULL;
	GtkBox* _tmp2_;
	GtkWidget* _tmp3_;
	GtkPopover* _tmp4_ = NULL;
	g_return_if_fail (self != NULL);
	_tmp0_ = widgets_context_menu_menu_item_new (_ ("New Task"), "plus-large-symbolic");
	g_object_ref_sink (_tmp0_);
	add_task_item = _tmp0_;
	_tmp1_ = widgets_context_menu_menu_item_new (_ ("New Section"), "tab-new-symbolic");
	g_object_ref_sink (_tmp1_);
	add_section_item = _tmp1_;
	_tmp2_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp2_);
	menu_box = _tmp2_;
	gtk_widget_set_margin_bottom ((GtkWidget*) menu_box, 3);
	gtk_widget_set_margin_top ((GtkWidget*) menu_box, 3);
	gtk_box_append (menu_box, (GtkWidget*) add_task_item);
	gtk_box_append (menu_box, (GtkWidget*) add_section_item);
	_tmp3_ = _g_object_ref0 ((GtkWidget*) menu_box);
	_tmp4_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp4_, FALSE);
	gtk_popover_set_child (_tmp4_, _tmp3_);
	_g_object_unref0 (_tmp3_);
	gtk_popover_set_position (_tmp4_, GTK_POS_BOTTOM);
	g_object_set ((GtkWidget*) _tmp4_, "width-request", 250, NULL);
	g_object_ref_sink (_tmp4_);
	_g_object_unref0 (self->priv->context_menu);
	self->priv->context_menu = _tmp4_;
	g_signal_connect_object ((GtkButton*) add_task_item, "clicked", (GCallback) ___lambda553__gtk_button_clicked, self, 0);
	g_signal_connect_object ((GtkButton*) add_section_item, "clicked", (GCallback) ___lambda745__gtk_button_clicked, self, 0);
	_g_object_unref0 (menu_box);
	_g_object_unref0 (add_section_item);
	_g_object_unref0 (add_task_item);
}

static void
views_project_on_right_click (ViewsProject* self,
                              gint n_press,
                              gdouble x,
                              gdouble y)
{
	GdkRectangle rect = {0};
	GdkRectangle _tmp0_ = {0};
	GtkPopover* _tmp1_;
	GtkPopover* _tmp2_;
	GdkRectangle _tmp3_;
	GtkPopover* _tmp4_;
	g_return_if_fail (self != NULL);
	_tmp0_.x = (gint) x;
	_tmp0_.y = (gint) y;
	_tmp0_.width = 250;
	_tmp0_.height = 1;
	rect = _tmp0_;
	_tmp1_ = self->priv->context_menu;
	gtk_widget_set_parent ((GtkWidget*) _tmp1_, (GtkWidget*) self);
	_tmp2_ = self->priv->context_menu;
	_tmp3_ = rect;
	gtk_popover_set_pointing_to (_tmp2_, &_tmp3_);
	_tmp4_ = self->priv->context_menu;
	gtk_popover_popup (_tmp4_);
}

static void
views_project_check_default_filters (ViewsProject* self)
{
	gboolean defaults = FALSE;
	ObjectsProject* _tmp0_;
	SortedByType _tmp1_;
	SortedByType _tmp2_;
	ObjectsProject* _tmp3_;
	SortOrderType _tmp4_;
	SortOrderType _tmp5_;
	ObjectsProject* _tmp6_;
	GeeHashMap* _tmp7_;
	gint _tmp8_;
	gint _tmp9_;
	GtkRevealer* _tmp10_;
	g_return_if_fail (self != NULL);
	defaults = TRUE;
	_tmp0_ = self->priv->_project;
	_tmp1_ = objects_project_get_sorted_by (_tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_ != SORTED_BY_TYPE_MANUAL) {
		defaults = FALSE;
	}
	_tmp3_ = self->priv->_project;
	_tmp4_ = objects_project_get_sort_order (_tmp3_);
	_tmp5_ = _tmp4_;
	if (_tmp5_ != SORT_ORDER_TYPE_ASC) {
		defaults = FALSE;
	}
	_tmp6_ = self->priv->_project;
	_tmp7_ = ((ObjectsBaseObject*) _tmp6_)->filters;
	_tmp8_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp7_);
	_tmp9_ = _tmp8_;
	if (_tmp9_ > 0) {
		defaults = FALSE;
	}
	_tmp10_ = self->priv->indicator_revealer;
	gtk_revealer_set_reveal_child (_tmp10_, !defaults);
}

static gboolean
__lambda746_ (ViewsProject* self)
{
	ProjectViewStyle _tmp0_;
	ProjectViewStyle _tmp1_;
	AdwViewStack* _tmp13_;
	GtkRevealer* _tmp14_;
	GtkRevealer* _tmp15_;
	gboolean result;
	views_project_destroy_current_view (self);
	_tmp0_ = views_project_get_view_style (self);
	_tmp1_ = _tmp0_;
	if (_tmp1_ == PROJECT_VIEW_STYLE_LIST) {
		GtkRevealer* _tmp2_;
		ObjectsProject* _tmp3_;
		ViewsList* _tmp4_;
		ViewsList* _tmp5_;
		_tmp2_ = self->priv->project_view_revealer;
		_tmp3_ = self->priv->_project;
		_tmp4_ = views_list_new (_tmp3_);
		g_object_ref_sink (_tmp4_);
		_tmp5_ = _tmp4_;
		gtk_revealer_set_child (_tmp2_, (GtkWidget*) _tmp5_);
		_g_object_unref0 (_tmp5_);
	} else {
		ProjectViewStyle _tmp6_;
		ProjectViewStyle _tmp7_;
		_tmp6_ = views_project_get_view_style (self);
		_tmp7_ = _tmp6_;
		if (_tmp7_ == PROJECT_VIEW_STYLE_BOARD) {
			LayoutsHeaderBar* _tmp8_;
			GtkRevealer* _tmp9_;
			ObjectsProject* _tmp10_;
			ViewsBoard* _tmp11_;
			ViewsBoard* _tmp12_;
			_tmp8_ = self->priv->headerbar;
			layouts_header_bar_update_title_box_visibility (_tmp8_, FALSE);
			_tmp9_ = self->priv->project_view_revealer;
			_tmp10_ = self->priv->_project;
			_tmp11_ = views_board_new (_tmp10_);
			g_object_ref_sink (_tmp11_);
			_tmp12_ = _tmp11_;
			gtk_revealer_set_child (_tmp9_, (GtkWidget*) _tmp12_);
			_g_object_unref0 (_tmp12_);
		}
	}
	_tmp13_ = self->priv->project_stack;
	_tmp14_ = self->priv->project_view_revealer;
	adw_view_stack_set_visible_child (_tmp13_, (GtkWidget*) _tmp14_);
	_tmp15_ = self->priv->project_view_revealer;
	gtk_revealer_set_reveal_child (_tmp15_, TRUE);
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
___lambda746__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda746_ ((ViewsProject*) self);
	return result;
}

static void
views_project_update_project_view (ViewsProject* self)
{
	AdwViewStack* _tmp0_;
	AdwSpinner* _tmp1_;
	GtkRevealer* _tmp2_;
	ServicesEventBus* _tmp3_;
	ServicesEventBus* _tmp4_;
	gboolean _tmp5_;
	GtkRevealer* _tmp6_;
	guint _tmp7_;
	guint _tmp8_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->project_stack;
	_tmp1_ = self->priv->loading_spinner;
	adw_view_stack_set_visible_child (_tmp0_, (GtkWidget*) _tmp1_);
	_tmp2_ = self->priv->project_view_revealer;
	gtk_revealer_set_reveal_child (_tmp2_, FALSE);
	_tmp3_ = services_event_bus_get_default ();
	_tmp4_ = _tmp3_;
	_tmp5_ = _tmp4_->multi_select_enabled;
	_g_object_unref0 (_tmp4_);
	if (_tmp5_) {
		views_project_clear_multi_select (self);
	}
	_tmp6_ = self->priv->project_view_revealer;
	_tmp7_ = gtk_revealer_get_transition_duration (_tmp6_);
	_tmp8_ = _tmp7_;
	g_timeout_add_full (G_PRIORITY_DEFAULT, _tmp8_, ___lambda746__gsource_func, g_object_ref (self), g_object_unref);
}

static void
views_project_destroy_current_view (ViewsProject* self)
{
	GtkRevealer* _tmp0_;
	GtkWidget* _tmp1_;
	GtkWidget* _tmp2_;
	GtkRevealer* _tmp18_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->project_view_revealer;
	_tmp1_ = gtk_revealer_get_child (_tmp0_);
	_tmp2_ = _tmp1_;
	if (VIEWS_IS_LIST (_tmp2_)) {
		ViewsList* list_view = NULL;
		GtkRevealer* _tmp3_;
		GtkWidget* _tmp4_;
		GtkWidget* _tmp5_;
		ViewsList* _tmp6_;
		ViewsList* _tmp7_;
		_tmp3_ = self->priv->project_view_revealer;
		_tmp4_ = gtk_revealer_get_child (_tmp3_);
		_tmp5_ = _tmp4_;
		_tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, VIEWS_TYPE_LIST, ViewsList));
		list_view = _tmp6_;
		_tmp7_ = list_view;
		if (_tmp7_ != NULL) {
			ViewsList* _tmp8_;
			_tmp8_ = list_view;
			views_list_clean_up (_tmp8_);
		}
		_g_object_unref0 (list_view);
	} else {
		GtkRevealer* _tmp9_;
		GtkWidget* _tmp10_;
		GtkWidget* _tmp11_;
		_tmp9_ = self->priv->project_view_revealer;
		_tmp10_ = gtk_revealer_get_child (_tmp9_);
		_tmp11_ = _tmp10_;
		if (VIEWS_IS_BOARD (_tmp11_)) {
			ViewsBoard* board_view = NULL;
			GtkRevealer* _tmp12_;
			GtkWidget* _tmp13_;
			GtkWidget* _tmp14_;
			ViewsBoard* _tmp15_;
			ViewsBoard* _tmp16_;
			_tmp12_ = self->priv->project_view_revealer;
			_tmp13_ = gtk_revealer_get_child (_tmp12_);
			_tmp14_ = _tmp13_;
			_tmp15_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, VIEWS_TYPE_BOARD, ViewsBoard));
			board_view = _tmp15_;
			_tmp16_ = board_view;
			if (_tmp16_ != NULL) {
				ViewsBoard* _tmp17_;
				_tmp17_ = board_view;
				views_board_clean_up (_tmp17_);
			}
			_g_object_unref0 (board_view);
		}
	}
	_tmp18_ = self->priv->project_view_revealer;
	gtk_revealer_set_child (_tmp18_, NULL);
}

void
views_project_prepare_new_item (ViewsProject* self,
                                const gchar* content)
{
	ObjectsProject* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	GtkRevealer* _tmp3_;
	GtkWidget* _tmp4_;
	GtkWidget* _tmp5_;
	GtkRevealer* _tmp6_;
	GtkWidget* _tmp7_;
	GtkWidget* _tmp8_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (content != NULL);
	_tmp0_ = self->priv->_project;
	_tmp1_ = objects_project_get_is_deck (_tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		return;
	}
	_tmp3_ = self->priv->project_view_revealer;
	_tmp4_ = gtk_revealer_get_child (_tmp3_);
	_tmp5_ = _tmp4_;
	if (_tmp5_ == NULL) {
		return;
	}
	_tmp6_ = self->priv->project_view_revealer;
	_tmp7_ = gtk_revealer_get_child (_tmp6_);
	_tmp8_ = _tmp7_;
	if (VIEWS_IS_LIST (_tmp8_)) {
		ViewsList* list_view = NULL;
		GtkRevealer* _tmp9_;
		GtkWidget* _tmp10_;
		GtkWidget* _tmp11_;
		ViewsList* _tmp12_;
		ViewsList* _tmp13_;
		_tmp9_ = self->priv->project_view_revealer;
		_tmp10_ = gtk_revealer_get_child (_tmp9_);
		_tmp11_ = _tmp10_;
		_tmp12_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, VIEWS_TYPE_LIST, ViewsList));
		list_view = _tmp12_;
		_tmp13_ = list_view;
		if (_tmp13_ != NULL) {
			ViewsList* _tmp14_;
			_tmp14_ = list_view;
			views_list_prepare_new_item (_tmp14_, content);
		}
		_g_object_unref0 (list_view);
	} else {
		GtkRevealer* _tmp15_;
		GtkWidget* _tmp16_;
		GtkWidget* _tmp17_;
		_tmp15_ = self->priv->project_view_revealer;
		_tmp16_ = gtk_revealer_get_child (_tmp15_);
		_tmp17_ = _tmp16_;
		if (VIEWS_IS_BOARD (_tmp17_)) {
			ViewsBoard* board_view = NULL;
			GtkRevealer* _tmp18_;
			GtkWidget* _tmp19_;
			GtkWidget* _tmp20_;
			ViewsBoard* _tmp21_;
			ViewsBoard* _tmp22_;
			_tmp18_ = self->priv->project_view_revealer;
			_tmp19_ = gtk_revealer_get_child (_tmp18_);
			_tmp20_ = _tmp19_;
			_tmp21_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, VIEWS_TYPE_BOARD, ViewsBoard));
			board_view = _tmp21_;
			_tmp22_ = board_view;
			if (_tmp22_ != NULL) {
				ViewsBoard* _tmp23_;
				_tmp23_ = board_view;
				views_board_prepare_new_item (_tmp23_, content);
			}
			_g_object_unref0 (board_view);
		}
	}
}

static void
___lambda747_ (ViewsProject* self)
{
	DialogsProject* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsProject* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_project_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp3_);
	_g_object_unref0 (dialog);
}

static void
____lambda747__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda747_ ((ViewsProject*) self);
}

static Block62Data*
block62_data_ref (Block62Data* _data62_)
{
	g_atomic_int_inc (&_data62_->_ref_count_);
	return _data62_;
}

static void
block62_data_unref (void * _userdata_)
{
	Block62Data* _data62_;
	_data62_ = (Block62Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data62_->_ref_count_)) {
		ViewsProject* self;
		self = _data62_->self;
		_g_object_unref0 (_data62_->dialog);
		_g_object_unref0 (self);
		g_slice_free (Block62Data, _data62_);
	}
}

static gchar*
g_date_time_to_string (GDateTime* self)
{
	gchar* _tmp0_;
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = g_date_time_format (self, "%FT%H:%M:%S%z");
	result = _tmp0_;
	return result;
}

static void
__lambda749_ (Block62Data* _data62_)
{
	ViewsProject* self;
	GDateTime* _tmp0_;
	GDateTime* _tmp1_;
	ObjectsProject* _tmp8_;
	self = _data62_->self;
	_tmp0_ = dialogs_date_picker_get_datetime (_data62_->dialog);
	_tmp1_ = _tmp0_;
	if (_tmp1_ == NULL) {
		ObjectsProject* _tmp2_;
		_tmp2_ = self->priv->_project;
		objects_project_set_due_date (_tmp2_, "");
	} else {
		ObjectsProject* _tmp3_;
		GDateTime* _tmp4_;
		GDateTime* _tmp5_;
		gchar* _tmp6_;
		gchar* _tmp7_;
		_tmp3_ = self->priv->_project;
		_tmp4_ = dialogs_date_picker_get_datetime (_data62_->dialog);
		_tmp5_ = _tmp4_;
		_tmp6_ = g_date_time_to_string (_tmp5_);
		_tmp7_ = _tmp6_;
		objects_project_set_due_date (_tmp3_, _tmp7_);
		_g_free0 (_tmp7_);
	}
	_tmp8_ = self->priv->_project;
	objects_project_update_local (_tmp8_);
}

static void
___lambda749__dialogs_date_picker_date_changed (DialogsDatePicker* _sender,
                                                gpointer self)
{
	__lambda749_ (self);
}

static void
___lambda748_ (ViewsProject* self)
{
	Block62Data* _data62_;
	DialogsDatePicker* _tmp0_;
	ObjectsProject* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	GeeHashMap* _tmp4_;
	gulong _tmp5_;
	Planify* _tmp6_;
	MainWindow* _tmp7_;
	_data62_ = g_slice_new0 (Block62Data);
	_data62_->_ref_count_ = 1;
	_data62_->self = g_object_ref (self);
	_tmp0_ = dialogs_date_picker_new (_ ("Project Deadline"));
	g_object_ref_sink (_tmp0_);
	_data62_->dialog = _tmp0_;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_due_date (_tmp1_);
	_tmp3_ = _tmp2_;
	dialogs_date_picker_set_clear (_data62_->dialog, g_strcmp0 (_tmp3_, "") != 0);
	_tmp4_ = self->priv->signal_map;
	_tmp5_ = g_signal_connect_data (_data62_->dialog, "date-changed", (GCallback) ___lambda749__dialogs_date_picker_date_changed, block62_data_ref (_data62_), (GClosureNotify) block62_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp4_, (gpointer) ((guintptr) _tmp5_), (GObject*) _data62_->dialog);
	_tmp6_ = planify__instance;
	_tmp7_ = _tmp6_->main_window;
	adw_dialog_present ((AdwDialog*) _data62_->dialog, (GtkWidget*) _tmp7_);
	block62_data_unref (_data62_);
	_data62_ = NULL;
}

static void
____lambda748__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda748_ ((ViewsProject*) self);
}

static void
___lambda750_ (ViewsProject* self)
{
	Util* _tmp0_;
	Util* _tmp1_;
	ObjectsProject* _tmp2_;
	ObjectsProject* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	_tmp0_ = util_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = self->priv->_project;
	_tmp3_ = self->priv->_project;
	_tmp4_ = objects_project_get_parent_id (_tmp3_);
	_tmp5_ = _tmp4_;
	util_duplicate_project (_tmp1_, _tmp2_, _tmp5_, NULL, NULL);
	_g_object_unref0 (_tmp1_);
}

static void
____lambda750__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda750_ ((ViewsProject*) self);
}

static void
___lambda751_ (ViewsProject* self)
{
	views_project_prepare_new_section (self);
}

static void
____lambda751__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda751_ ((ViewsProject*) self);
}

static void
___lambda752_ (ViewsProject* self)
{
	DialogsManageSectionOrder* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsManageSectionOrder* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_manage_section_order_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp3_);
	_g_object_unref0 (dialog);
}

static void
____lambda752__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda752_ ((ViewsProject*) self);
}

static void
___lambda753_ (ViewsProject* self)
{
	DialogsCalendarSync* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsCalendarSync* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_calendar_sync_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp3_);
	_g_object_unref0 (dialog);
}

static void
____lambda753__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda753_ ((ViewsProject*) self);
}

static void
___lambda759_ (ViewsProject* self)
{
	ObjectsProject* _tmp0_;
	Planify* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = planify_get_instance ();
	_tmp2_ = _tmp1_;
	_tmp3_ = _tmp2_->main_window;
	objects_project_archive_project (_tmp0_, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_window_get_type (), GtkWindow));
}

static void
____lambda759__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda759_ ((ViewsProject*) self);
}

static void
___lambda760_ (ViewsProject* self)
{
	ObjectsProject* _tmp0_;
	Planify* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = planify_get_instance ();
	_tmp2_ = _tmp1_;
	_tmp3_ = _tmp2_->main_window;
	objects_project_delete_project (_tmp0_, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_window_get_type (), GtkWindow));
}

static void
____lambda760__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda760_ ((ViewsProject*) self);
}

static Block63Data*
block63_data_ref (Block63Data* _data63_)
{
	g_atomic_int_inc (&_data63_->_ref_count_);
	return _data63_;
}

static void
block63_data_unref (void * _userdata_)
{
	Block63Data* _data63_;
	_data63_ = (Block63Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data63_->_ref_count_)) {
		ViewsProject* self;
		self = _data63_->self;
		_g_object_unref0 (_data63_->clipboard);
		_g_object_unref0 (self);
		g_slice_free (Block63Data, _data63_);
	}
}

static void
__lambda762_ (Block63Data* _data63_,
              GObject* obj,
              GAsyncResult* res)
{
	ViewsProject* self;
	GError* _inner_error0_ = NULL;
	self = _data63_->self;
	g_return_if_fail (res != NULL);
	{
		gchar* content = NULL;
		gchar* _tmp0_;
		Planify* _tmp1_;
		Planify* _tmp2_;
		MainWindow* _tmp3_;
		_tmp0_ = gdk_clipboard_read_text_finish (_data63_->clipboard, res, &_inner_error0_);
		content = _tmp0_;
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_tmp1_ = planify_get_instance ();
		_tmp2_ = _tmp1_;
		_tmp3_ = _tmp2_->main_window;
		main_window_add_task_action (_tmp3_, content);
		_g_free0 (content);
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* _error_ = NULL;
		GError* _tmp4_;
		const gchar* _tmp5_;
		_error_ = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp4_ = _error_;
		_tmp5_ = _tmp4_->message;
		g_debug ("Project.vala:495: %s", _tmp5_);
		_g_error_free0 (_error_);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
		g_clear_error (&_inner_error0_);
		return;
	}
}

static void
___lambda762__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
	__lambda762_ (self, source_object, res);
	block63_data_unref (self);
}

static void
__lambda761_ (ViewsProject* self)
{
	Block63Data* _data63_;
	GdkDisplay* _tmp0_;
	GdkClipboard* _tmp1_;
	GdkClipboard* _tmp2_;
	_data63_ = g_slice_new0 (Block63Data);
	_data63_->_ref_count_ = 1;
	_data63_->self = g_object_ref (self);
	_tmp0_ = gdk_display_get_default ();
	_tmp1_ = gdk_display_get_clipboard (_tmp0_);
	_tmp2_ = _g_object_ref0 (_tmp1_);
	_data63_->clipboard = _tmp2_;
	gdk_clipboard_read_text_async (_data63_->clipboard, NULL, ___lambda762__gasync_ready_callback, block63_data_ref (_data63_));
	block63_data_unref (_data63_);
	_data63_ = NULL;
}

static void
___lambda761__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda761_ ((ViewsProject*) self);
}

static void
__lambda763_ (ViewsProject* self)
{
	WidgetsContextMenuMenuItem* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	_tmp0_ = self->priv->expand_all_item;
	_tmp1_ = widgets_context_menu_menu_item_get_icon (_tmp0_);
	_tmp2_ = _tmp1_;
	if (g_strcmp0 (_tmp2_, "collapse-vertically-symbolic") == 0) {
		WidgetsContextMenuMenuItem* _tmp3_;
		WidgetsContextMenuMenuItem* _tmp4_;
		ServicesEventBus* _tmp5_;
		ServicesEventBus* _tmp6_;
		ObjectsProject* _tmp7_;
		const gchar* _tmp8_;
		const gchar* _tmp9_;
		_tmp3_ = self->priv->expand_all_item;
		widgets_context_menu_menu_item_set_title (_tmp3_, _ ("Expand All"));
		_tmp4_ = self->priv->expand_all_item;
		widgets_context_menu_menu_item_set_icon (_tmp4_, "expand-vertically-symbolic");
		_tmp5_ = services_event_bus_get_default ();
		_tmp6_ = _tmp5_;
		_tmp7_ = self->priv->_project;
		_tmp8_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp7_);
		_tmp9_ = _tmp8_;
		g_signal_emit_by_name (_tmp6_, "expand-all", _tmp9_, FALSE);
		_g_object_unref0 (_tmp6_);
	} else {
		WidgetsContextMenuMenuItem* _tmp10_;
		WidgetsContextMenuMenuItem* _tmp11_;
		ServicesEventBus* _tmp12_;
		ServicesEventBus* _tmp13_;
		ObjectsProject* _tmp14_;
		const gchar* _tmp15_;
		const gchar* _tmp16_;
		_tmp10_ = self->priv->expand_all_item;
		widgets_context_menu_menu_item_set_title (_tmp10_, _ ("Collapse All"));
		_tmp11_ = self->priv->expand_all_item;
		widgets_context_menu_menu_item_set_icon (_tmp11_, "collapse-vertically-symbolic");
		_tmp12_ = services_event_bus_get_default ();
		_tmp13_ = _tmp12_;
		_tmp14_ = self->priv->_project;
		_tmp15_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp14_);
		_tmp16_ = _tmp15_;
		g_signal_emit_by_name (_tmp13_, "expand-all", _tmp16_, TRUE);
		_g_object_unref0 (_tmp13_);
	}
}

static void
___lambda763__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda763_ ((ViewsProject*) self);
}

static void
__lambda764_ (ViewsProject* self)
{
	ObjectsProject* _tmp0_;
	_tmp0_ = self->priv->_project;
	objects_project_set_show_multi_select (_tmp0_, TRUE);
}

static void
___lambda764__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda764_ ((ViewsProject*) self);
}

static GtkPopover*
views_project_build_context_menu_popover (ViewsProject* self)
{
	WidgetsContextMenuMenuItem* edit_item = NULL;
	WidgetsContextMenuMenuItem* _tmp0_;
	WidgetsContextMenuMenuItem* duplicate_item = NULL;
	WidgetsContextMenuMenuItem* _tmp1_;
	WidgetsContextMenuMenuItem* schedule_item = NULL;
	WidgetsContextMenuMenuItem* _tmp2_;
	WidgetsContextMenuMenuItem* add_section_item = NULL;
	WidgetsContextMenuMenuItem* _tmp3_;
	WidgetsContextMenuMenuItem* _tmp4_;
	WidgetsContextMenuMenuItem* manage_sections = NULL;
	WidgetsContextMenuMenuItem* _tmp5_;
	WidgetsContextMenuMenuItem* select_item = NULL;
	WidgetsContextMenuMenuItem* _tmp6_;
	WidgetsContextMenuMenuItem* paste_item = NULL;
	WidgetsContextMenuMenuItem* _tmp7_;
	ProjectViewStyle _tmp8_;
	ProjectViewStyle _tmp9_;
	WidgetsContextMenuMenuItem* _tmp10_ = NULL;
	WidgetsContextMenuMenuItem* archive_item = NULL;
	WidgetsContextMenuMenuItem* _tmp11_;
	WidgetsContextMenuMenuItem* delete_item = NULL;
	WidgetsContextMenuMenuItem* _tmp12_;
	WidgetsContextMenuMenuItem* _tmp13_;
	GtkBox* menu_box = NULL;
	GtkBox* _tmp14_;
	GtkBox* _tmp15_;
	GtkBox* _tmp16_;
	gboolean _tmp17_ = FALSE;
	ObjectsProject* _tmp18_;
	gboolean _tmp19_;
	gboolean _tmp20_;
	ObjectsProject* _tmp30_;
	gboolean _tmp31_;
	gboolean _tmp32_;
	gboolean _tmp48_ = FALSE;
	gboolean _tmp49_ = FALSE;
	ObjectsProject* _tmp50_;
	SourceType _tmp51_;
	SourceType _tmp52_;
	gboolean _tmp65_ = FALSE;
	gboolean _tmp66_ = FALSE;
	ObjectsProject* _tmp67_;
	SourceType _tmp68_;
	SourceType _tmp69_;
	ObjectsProject* _tmp82_;
	const gchar* _tmp83_;
	const gchar* _tmp84_;
	WidgetsContextMenuMenuItem* _tmp85_ = NULL;
	ObjectsProject* _tmp86_;
	gboolean _tmp87_;
	gboolean _tmp88_;
	GtkBox* _tmp95_;
	WidgetsContextMenuMenuItem* _tmp96_;
	GtkBox* _tmp97_;
	WidgetsContextMenuMenuItem* _tmp98_;
	GtkBox* _tmp99_;
	WidgetsContextMenuMenuItem* _tmp100_;
	gboolean _tmp101_ = FALSE;
	ObjectsProject* _tmp102_;
	gboolean _tmp103_;
	gboolean _tmp104_;
	GtkPopover* popover = NULL;
	GtkBox* _tmp123_;
	GtkWidget* _tmp124_;
	GtkPopover* _tmp125_ = NULL;
	GeeHashMap* _tmp126_;
	WidgetsContextMenuMenuItem* _tmp127_;
	gulong _tmp128_;
	WidgetsContextMenuMenuItem* _tmp129_;
	GeeHashMap* _tmp130_;
	WidgetsContextMenuMenuItem* _tmp131_;
	gulong _tmp132_;
	WidgetsContextMenuMenuItem* _tmp133_;
	GeeHashMap* _tmp134_;
	WidgetsContextMenuMenuItem* _tmp135_;
	gulong _tmp136_;
	WidgetsContextMenuMenuItem* _tmp137_;
	GtkPopover* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = widgets_context_menu_menu_item_new (_ ("Edit Project"), "edit-symbolic");
	g_object_ref_sink (_tmp0_);
	edit_item = _tmp0_;
	_tmp1_ = widgets_context_menu_menu_item_new (_ ("Duplicate"), "tabs-stack-symbolic");
	g_object_ref_sink (_tmp1_);
	duplicate_item = _tmp1_;
	_tmp2_ = widgets_context_menu_menu_item_new (_ ("Project Deadline"), "delay-long-small-symbolic");
	g_object_ref_sink (_tmp2_);
	schedule_item = _tmp2_;
	_tmp3_ = widgets_context_menu_menu_item_new (_ ("New Section"), "tab-new-symbolic");
	g_object_ref_sink (_tmp3_);
	add_section_item = _tmp3_;
	_tmp4_ = add_section_item;
	widgets_context_menu_menu_item_set_secondary_text (_tmp4_, "S");
	_tmp5_ = widgets_context_menu_menu_item_new (_ ("Manage Sections"), "permissions-generic-symbolic");
	g_object_ref_sink (_tmp5_);
	manage_sections = _tmp5_;
	_tmp6_ = widgets_context_menu_menu_item_new (_ ("Select"), "list-large-symbolic");
	g_object_ref_sink (_tmp6_);
	select_item = _tmp6_;
	_tmp7_ = widgets_context_menu_menu_item_new (_ ("Paste"), "tabs-stack-symbolic");
	g_object_ref_sink (_tmp7_);
	paste_item = _tmp7_;
	_tmp8_ = views_project_get_view_style (self);
	_tmp9_ = _tmp8_;
	_tmp10_ = widgets_context_menu_menu_item_new (_ ("Expand All"), "expand-vertically-symbolic");
	gtk_widget_set_visible ((GtkWidget*) _tmp10_, _tmp9_ == PROJECT_VIEW_STYLE_LIST);
	g_object_ref_sink (_tmp10_);
	_g_object_unref0 (self->priv->expand_all_item);
	self->priv->expand_all_item = _tmp10_;
	_tmp11_ = widgets_context_menu_menu_item_new (_ ("Archive"), "shoe-box-symbolic");
	g_object_ref_sink (_tmp11_);
	archive_item = _tmp11_;
	_tmp12_ = widgets_context_menu_menu_item_new (_ ("Delete Project"), "user-trash-symbolic");
	g_object_ref_sink (_tmp12_);
	delete_item = _tmp12_;
	_tmp13_ = delete_item;
	gtk_widget_add_css_class ((GtkWidget*) _tmp13_, "menu-item-danger");
	_tmp14_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp14_);
	menu_box = _tmp14_;
	_tmp15_ = menu_box;
	_tmp16_ = menu_box;
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp16_, 3);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp15_, 3);
	_tmp18_ = self->priv->_project;
	_tmp19_ = objects_project_get_is_deck (_tmp18_);
	_tmp20_ = _tmp19_;
	if (!_tmp20_) {
		ObjectsProject* _tmp21_;
		gboolean _tmp22_;
		gboolean _tmp23_;
		_tmp21_ = self->priv->_project;
		_tmp22_ = objects_project_get_inbox_project (_tmp21_);
		_tmp23_ = _tmp22_;
		_tmp17_ = !_tmp23_;
	} else {
		_tmp17_ = FALSE;
	}
	if (_tmp17_) {
		GtkBox* _tmp24_;
		WidgetsContextMenuMenuItem* _tmp25_;
		GeeHashMap* _tmp26_;
		WidgetsContextMenuMenuItem* _tmp27_;
		gulong _tmp28_;
		WidgetsContextMenuMenuItem* _tmp29_;
		_tmp24_ = menu_box;
		_tmp25_ = edit_item;
		gtk_box_append (_tmp24_, (GtkWidget*) _tmp25_);
		_tmp26_ = self->priv->signal_map;
		_tmp27_ = edit_item;
		_tmp28_ = g_signal_connect_object (_tmp27_, "activate-item", (GCallback) ____lambda747__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp29_ = edit_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp26_, (gpointer) ((guintptr) _tmp28_), (GObject*) _tmp29_);
	}
	_tmp30_ = self->priv->_project;
	_tmp31_ = objects_project_get_is_inbox_project (_tmp30_);
	_tmp32_ = _tmp31_;
	if (!_tmp32_) {
		GtkBox* _tmp33_;
		WidgetsContextMenuMenuItem* _tmp34_;
		GtkBox* _tmp35_;
		WidgetsContextMenuMenuItem* _tmp36_;
		GtkBox* _tmp37_;
		WidgetsContextMenuMenuSeparator* _tmp38_;
		WidgetsContextMenuMenuSeparator* _tmp39_;
		GeeHashMap* _tmp40_;
		WidgetsContextMenuMenuItem* _tmp41_;
		gulong _tmp42_;
		WidgetsContextMenuMenuItem* _tmp43_;
		GeeHashMap* _tmp44_;
		WidgetsContextMenuMenuItem* _tmp45_;
		gulong _tmp46_;
		WidgetsContextMenuMenuItem* _tmp47_;
		_tmp33_ = menu_box;
		_tmp34_ = schedule_item;
		gtk_box_append (_tmp33_, (GtkWidget*) _tmp34_);
		_tmp35_ = menu_box;
		_tmp36_ = duplicate_item;
		gtk_box_append (_tmp35_, (GtkWidget*) _tmp36_);
		_tmp37_ = menu_box;
		_tmp38_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp38_);
		_tmp39_ = _tmp38_;
		gtk_box_append (_tmp37_, (GtkWidget*) _tmp39_);
		_g_object_unref0 (_tmp39_);
		_tmp40_ = self->priv->signal_map;
		_tmp41_ = schedule_item;
		_tmp42_ = g_signal_connect_object (_tmp41_, "activate-item", (GCallback) ____lambda748__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp43_ = schedule_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp40_, (gpointer) ((guintptr) _tmp42_), (GObject*) _tmp43_);
		_tmp44_ = self->priv->signal_map;
		_tmp45_ = duplicate_item;
		_tmp46_ = g_signal_connect_object ((GtkButton*) _tmp45_, "clicked", (GCallback) ____lambda750__gtk_button_clicked, self, 0);
		_tmp47_ = duplicate_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp44_, (gpointer) ((guintptr) _tmp46_), (GObject*) _tmp47_);
	}
	_tmp50_ = self->priv->_project;
	_tmp51_ = objects_project_get_source_type (_tmp50_);
	_tmp52_ = _tmp51_;
	if (_tmp52_ == SOURCE_TYPE_LOCAL) {
		_tmp49_ = TRUE;
	} else {
		ObjectsProject* _tmp53_;
		SourceType _tmp54_;
		SourceType _tmp55_;
		_tmp53_ = self->priv->_project;
		_tmp54_ = objects_project_get_source_type (_tmp53_);
		_tmp55_ = _tmp54_;
		_tmp49_ = _tmp55_ == SOURCE_TYPE_TODOIST;
	}
	if (_tmp49_) {
		_tmp48_ = TRUE;
	} else {
		ObjectsProject* _tmp56_;
		SourceType _tmp57_;
		SourceType _tmp58_;
		_tmp56_ = self->priv->_project;
		_tmp57_ = objects_project_get_source_type (_tmp56_);
		_tmp58_ = _tmp57_;
		_tmp48_ = _tmp58_ == SOURCE_TYPE_CALDAV;
	}
	if (_tmp48_) {
		GtkBox* _tmp59_;
		WidgetsContextMenuMenuItem* _tmp60_;
		GeeHashMap* _tmp61_;
		WidgetsContextMenuMenuItem* _tmp62_;
		gulong _tmp63_;
		WidgetsContextMenuMenuItem* _tmp64_;
		_tmp59_ = menu_box;
		_tmp60_ = add_section_item;
		gtk_box_append (_tmp59_, (GtkWidget*) _tmp60_);
		_tmp61_ = self->priv->signal_map;
		_tmp62_ = add_section_item;
		_tmp63_ = g_signal_connect_object (_tmp62_, "activate-item", (GCallback) ____lambda751__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp64_ = add_section_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp61_, (gpointer) ((guintptr) _tmp63_), (GObject*) _tmp64_);
	}
	_tmp67_ = self->priv->_project;
	_tmp68_ = objects_project_get_source_type (_tmp67_);
	_tmp69_ = _tmp68_;
	if (_tmp69_ == SOURCE_TYPE_LOCAL) {
		_tmp66_ = TRUE;
	} else {
		ObjectsProject* _tmp70_;
		SourceType _tmp71_;
		SourceType _tmp72_;
		_tmp70_ = self->priv->_project;
		_tmp71_ = objects_project_get_source_type (_tmp70_);
		_tmp72_ = _tmp71_;
		_tmp66_ = _tmp72_ == SOURCE_TYPE_TODOIST;
	}
	if (_tmp66_) {
		_tmp65_ = TRUE;
	} else {
		ObjectsProject* _tmp73_;
		SourceType _tmp74_;
		SourceType _tmp75_;
		_tmp73_ = self->priv->_project;
		_tmp74_ = objects_project_get_source_type (_tmp73_);
		_tmp75_ = _tmp74_;
		_tmp65_ = _tmp75_ == SOURCE_TYPE_CALDAV;
	}
	if (_tmp65_) {
		GtkBox* _tmp76_;
		WidgetsContextMenuMenuItem* _tmp77_;
		GeeHashMap* _tmp78_;
		WidgetsContextMenuMenuItem* _tmp79_;
		gulong _tmp80_;
		WidgetsContextMenuMenuItem* _tmp81_;
		_tmp76_ = menu_box;
		_tmp77_ = manage_sections;
		gtk_box_append (_tmp76_, (GtkWidget*) _tmp77_);
		_tmp78_ = self->priv->signal_map;
		_tmp79_ = manage_sections;
		_tmp80_ = g_signal_connect_object ((GtkButton*) _tmp79_, "clicked", (GCallback) ____lambda752__gtk_button_clicked, self, 0);
		_tmp81_ = manage_sections;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp78_, (gpointer) ((guintptr) _tmp80_), (GObject*) _tmp81_);
	}
	_tmp82_ = self->priv->_project;
	_tmp83_ = objects_project_get_calendar_source_uid (_tmp82_);
	_tmp84_ = _tmp83_;
	_tmp85_ = widgets_context_menu_menu_item_new (_ ("Calendar Sync"), "month-symbolic");
	gtk_widget_set_visible ((GtkWidget*) _tmp85_, g_strcmp0 (_tmp84_, "") == 0);
	g_object_ref_sink (_tmp85_);
	_g_object_unref0 (self->priv->calendar_sync_item);
	self->priv->calendar_sync_item = _tmp85_;
	_tmp86_ = self->priv->_project;
	_tmp87_ = objects_project_get_is_inbox_project (_tmp86_);
	_tmp88_ = _tmp87_;
	if (!_tmp88_) {
		GtkBox* _tmp89_;
		WidgetsContextMenuMenuItem* _tmp90_;
		GtkBox* _tmp91_;
		WidgetsContextMenuMenuSeparator* _tmp92_;
		WidgetsContextMenuMenuSeparator* _tmp93_;
		WidgetsContextMenuMenuItem* _tmp94_;
		_tmp89_ = menu_box;
		_tmp90_ = self->priv->calendar_sync_item;
		gtk_box_append (_tmp89_, (GtkWidget*) _tmp90_);
		_tmp91_ = menu_box;
		_tmp92_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp92_);
		_tmp93_ = _tmp92_;
		gtk_box_append (_tmp91_, (GtkWidget*) _tmp93_);
		_g_object_unref0 (_tmp93_);
		_tmp94_ = self->priv->calendar_sync_item;
		g_signal_connect_object ((GtkButton*) _tmp94_, "clicked", (GCallback) ____lambda753__gtk_button_clicked, self, 0);
	}
	_tmp95_ = menu_box;
	_tmp96_ = select_item;
	gtk_box_append (_tmp95_, (GtkWidget*) _tmp96_);
	_tmp97_ = menu_box;
	_tmp98_ = paste_item;
	gtk_box_append (_tmp97_, (GtkWidget*) _tmp98_);
	_tmp99_ = menu_box;
	_tmp100_ = self->priv->expand_all_item;
	gtk_box_append (_tmp99_, (GtkWidget*) _tmp100_);
	_tmp102_ = self->priv->_project;
	_tmp103_ = objects_project_get_is_deck (_tmp102_);
	_tmp104_ = _tmp103_;
	if (!_tmp104_) {
		ObjectsProject* _tmp105_;
		gboolean _tmp106_;
		gboolean _tmp107_;
		_tmp105_ = self->priv->_project;
		_tmp106_ = objects_project_get_inbox_project (_tmp105_);
		_tmp107_ = _tmp106_;
		_tmp101_ = !_tmp107_;
	} else {
		_tmp101_ = FALSE;
	}
	if (_tmp101_) {
		GtkBox* _tmp108_;
		WidgetsContextMenuMenuSeparator* _tmp109_;
		WidgetsContextMenuMenuSeparator* _tmp110_;
		GtkBox* _tmp111_;
		WidgetsContextMenuMenuItem* _tmp112_;
		GtkBox* _tmp113_;
		WidgetsContextMenuMenuItem* _tmp114_;
		GeeHashMap* _tmp115_;
		WidgetsContextMenuMenuItem* _tmp116_;
		gulong _tmp117_;
		WidgetsContextMenuMenuItem* _tmp118_;
		GeeHashMap* _tmp119_;
		WidgetsContextMenuMenuItem* _tmp120_;
		gulong _tmp121_;
		WidgetsContextMenuMenuItem* _tmp122_;
		_tmp108_ = menu_box;
		_tmp109_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp109_);
		_tmp110_ = _tmp109_;
		gtk_box_append (_tmp108_, (GtkWidget*) _tmp110_);
		_g_object_unref0 (_tmp110_);
		_tmp111_ = menu_box;
		_tmp112_ = archive_item;
		gtk_box_append (_tmp111_, (GtkWidget*) _tmp112_);
		_tmp113_ = menu_box;
		_tmp114_ = delete_item;
		gtk_box_append (_tmp113_, (GtkWidget*) _tmp114_);
		_tmp115_ = self->priv->signal_map;
		_tmp116_ = archive_item;
		_tmp117_ = g_signal_connect_object ((GtkButton*) _tmp116_, "clicked", (GCallback) ____lambda759__gtk_button_clicked, self, 0);
		_tmp118_ = archive_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp115_, (gpointer) ((guintptr) _tmp117_), (GObject*) _tmp118_);
		_tmp119_ = self->priv->signal_map;
		_tmp120_ = delete_item;
		_tmp121_ = g_signal_connect_object ((GtkButton*) _tmp120_, "clicked", (GCallback) ____lambda760__gtk_button_clicked, self, 0);
		_tmp122_ = delete_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp119_, (gpointer) ((guintptr) _tmp121_), (GObject*) _tmp122_);
	}
	_tmp123_ = menu_box;
	_tmp124_ = _g_object_ref0 ((GtkWidget*) _tmp123_);
	_tmp125_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp125_, FALSE);
	gtk_popover_set_position (_tmp125_, GTK_POS_BOTTOM);
	gtk_popover_set_child (_tmp125_, _tmp124_);
	_g_object_unref0 (_tmp124_);
	g_object_set ((GtkWidget*) _tmp125_, "width-request", 250, NULL);
	g_object_ref_sink (_tmp125_);
	popover = _tmp125_;
	_tmp126_ = self->priv->signal_map;
	_tmp127_ = paste_item;
	_tmp128_ = g_signal_connect_object ((GtkButton*) _tmp127_, "clicked", (GCallback) ___lambda761__gtk_button_clicked, self, 0);
	_tmp129_ = paste_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp126_, (gpointer) ((guintptr) _tmp128_), (GObject*) _tmp129_);
	_tmp130_ = self->priv->signal_map;
	_tmp131_ = self->priv->expand_all_item;
	_tmp132_ = g_signal_connect_object ((GtkButton*) _tmp131_, "clicked", (GCallback) ___lambda763__gtk_button_clicked, self, 0);
	_tmp133_ = self->priv->expand_all_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp130_, (gpointer) ((guintptr) _tmp132_), (GObject*) _tmp133_);
	_tmp134_ = self->priv->signal_map;
	_tmp135_ = select_item;
	_tmp136_ = g_signal_connect_object ((GtkButton*) _tmp135_, "clicked", (GCallback) ___lambda764__gtk_button_clicked, self, 0);
	_tmp137_ = select_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp134_, (gpointer) ((guintptr) _tmp136_), (GObject*) _tmp137_);
	result = popover;
	_g_object_unref0 (menu_box);
	_g_object_unref0 (delete_item);
	_g_object_unref0 (archive_item);
	_g_object_unref0 (paste_item);
	_g_object_unref0 (select_item);
	_g_object_unref0 (manage_sections);
	_g_object_unref0 (add_section_item);
	_g_object_unref0 (schedule_item);
	_g_object_unref0 (duplicate_item);
	_g_object_unref0 (edit_item);
	return result;
}

static Block64Data*
block64_data_ref (Block64Data* _data64_)
{
	g_atomic_int_inc (&_data64_->_ref_count_);
	return _data64_;
}

static void
block64_data_unref (void * _userdata_)
{
	Block64Data* _data64_;
	_data64_ = (Block64Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data64_->_ref_count_)) {
		ViewsProject* self;
		self = _data64_->self;
		_g_object_unref0 (_data64_->popover);
		_g_object_unref0 (_data64_->show_completed_item);
		_g_object_unref0 (_data64_->sort_order_item);
		_g_object_unref0 (_data64_->sorted_by_item);
		_g_object_unref0 (_data64_->view_group);
		_g_object_unref0 (self);
		g_slice_free (Block64Data, _data64_);
	}
}

static void
___lambda765_ (Block64Data* _data64_)
{
	ViewsProject* self;
	AdwToggleGroup* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gboolean _tmp5_;
	ObjectsProject* _tmp8_;
	self = _data64_->self;
	_tmp0_ = _data64_->view_group;
	_tmp1_ = adw_toggle_group_get_active_name (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = project_view_style_to_string (PROJECT_VIEW_STYLE_LIST);
	_tmp4_ = _tmp3_;
	_tmp5_ = g_strcmp0 (_tmp2_, _tmp4_) == 0;
	_g_free0 (_tmp4_);
	if (_tmp5_) {
		ObjectsProject* _tmp6_;
		_tmp6_ = self->priv->_project;
		objects_project_set_view_style (_tmp6_, PROJECT_VIEW_STYLE_LIST);
	} else {
		ObjectsProject* _tmp7_;
		_tmp7_ = self->priv->_project;
		objects_project_set_view_style (_tmp7_, PROJECT_VIEW_STYLE_BOARD);
	}
	_tmp8_ = self->priv->_project;
	objects_project_update_local (_tmp8_);
}

static void
____lambda765__g_object_notify (GObject* _sender,
                                GParamSpec* pspec,
                                gpointer self)
{
	___lambda765_ (self);
}

static void
__lambda766_ (Block64Data* _data64_)
{
	ViewsProject* self;
	ObjectsProject* _tmp0_;
	WidgetsContextMenuMenuPicker* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	ObjectsProject* _tmp4_;
	SortedByType _tmp5_;
	SortedByType _tmp6_;
	ObjectsProject* _tmp8_;
	self = _data64_->self;
	_tmp0_ = self->priv->_project;
	_tmp1_ = _data64_->sorted_by_item;
	_tmp2_ = widgets_context_menu_menu_picker_get_selected (_tmp1_);
	_tmp3_ = _tmp2_;
	objects_project_set_sorted_by (_tmp0_, sorted_by_type_parse (_tmp3_));
	_tmp4_ = self->priv->_project;
	_tmp5_ = objects_project_get_sorted_by (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_ == SORTED_BY_TYPE_MANUAL) {
		ObjectsProject* _tmp7_;
		_tmp7_ = self->priv->_project;
		objects_project_set_sort_order (_tmp7_, SORT_ORDER_TYPE_ASC);
	}
	_tmp8_ = self->priv->_project;
	objects_project_update_local (_tmp8_);
	views_project_check_default_filters (self);
}

static void
___lambda766__g_object_notify (GObject* _sender,
                               GParamSpec* pspec,
                               gpointer self)
{
	__lambda766_ (self);
}

static void
__lambda767_ (Block64Data* _data64_)
{
	ViewsProject* self;
	SortOrderType _tmp0_ = 0;
	WidgetsContextMenuMenuSwitch* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	ObjectsProject* _tmp4_;
	ObjectsProject* _tmp5_;
	self = _data64_->self;
	_tmp1_ = _data64_->sort_order_item;
	_tmp2_ = widgets_context_menu_menu_switch_get_active (_tmp1_);
	_tmp3_ = _tmp2_;
	if (_tmp3_) {
		_tmp0_ = SORT_ORDER_TYPE_ASC;
	} else {
		_tmp0_ = SORT_ORDER_TYPE_DESC;
	}
	_tmp4_ = self->priv->_project;
	objects_project_set_sort_order (_tmp4_, _tmp0_);
	_tmp5_ = self->priv->_project;
	objects_project_update_local (_tmp5_);
	views_project_check_default_filters (self);
}

static void
___lambda767__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                              gpointer self)
{
	__lambda767_ (self);
}

static void
__lambda768_ (ViewsProject* self)
{
	ObjectsProject* _tmp0_;
	ObjectsProject* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	ObjectsProject* _tmp4_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_show_completed (_tmp1_);
	_tmp3_ = _tmp2_;
	objects_project_set_show_completed (_tmp0_, !_tmp3_);
	_tmp4_ = self->priv->_project;
	objects_project_update_local (_tmp4_);
	views_project_check_default_filters (self);
}

static void
___lambda768__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                              gpointer self)
{
	__lambda768_ ((ViewsProject*) self);
}

static void
__lambda769_ (Block64Data* _data64_)
{
	ViewsProject* self;
	WidgetsContextMenuMenuSwitch* _tmp0_;
	ObjectsProject* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	self = _data64_->self;
	_tmp0_ = _data64_->show_completed_item;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_show_completed (_tmp1_);
	_tmp3_ = _tmp2_;
	widgets_context_menu_menu_switch_set_active (_tmp0_, _tmp3_);
}

static void
___lambda769__objects_project_show_completed_changed (ObjectsProject* _sender,
                                                      gpointer self)
{
	__lambda769_ (self);
}

static void
__lambda770_ (Block64Data* _data64_)
{
	ViewsProject* self;
	DialogsCompletedTasks* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsCompletedTasks* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	self = _data64_->self;
	gtk_popover_popdown (_data64_->popover);
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_completed_tasks_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp3_);
	_g_object_unref0 (dialog);
}

static void
___lambda770__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda770_ (self);
}

static void
__lambda771_ (Block64Data* _data64_)
{
	ViewsProject* self;
	WidgetsContextMenuMenuPicker* _tmp0_;
	ObjectsProject* _tmp1_;
	SortedByType _tmp2_;
	SortedByType _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	WidgetsContextMenuMenuSwitch* _tmp6_;
	ObjectsProject* _tmp7_;
	SortedByType _tmp8_;
	SortedByType _tmp9_;
	self = _data64_->self;
	_tmp0_ = _data64_->sorted_by_item;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_sorted_by (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = sorted_by_type_to_string (_tmp3_);
	_tmp5_ = _tmp4_;
	widgets_context_menu_menu_picker_update_selected (_tmp0_, _tmp5_);
	_g_free0 (_tmp5_);
	_tmp6_ = _data64_->sort_order_item;
	_tmp7_ = self->priv->_project;
	_tmp8_ = objects_project_get_sorted_by (_tmp7_);
	_tmp9_ = _tmp8_;
	gtk_widget_set_visible ((GtkWidget*) _tmp6_, _tmp9_ != SORTED_BY_TYPE_MANUAL);
	views_project_check_default_filters (self);
}

static void
___lambda771__objects_project_sorted_by_changed (ObjectsProject* _sender,
                                                 gpointer self)
{
	__lambda771_ (self);
}

static void
__lambda772_ (Block64Data* _data64_)
{
	ViewsProject* self;
	WidgetsContextMenuMenuSwitch* _tmp0_;
	ObjectsProject* _tmp1_;
	SortOrderType _tmp2_;
	SortOrderType _tmp3_;
	self = _data64_->self;
	_tmp0_ = _data64_->sort_order_item;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_sort_order (_tmp1_);
	_tmp3_ = _tmp2_;
	widgets_context_menu_menu_switch_set_active (_tmp0_, _tmp3_ == SORT_ORDER_TYPE_ASC);
}

static void
___lambda772__objects_project_sort_order_changed (ObjectsProject* _sender,
                                                  gpointer self)
{
	__lambda772_ (self);
}

static void
__lambda773_ (ViewsProject* self)
{
	gint selected = 0;
	WidgetsContextMenuMenuPicker* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	_tmp0_ = self->priv->due_date_item;
	_tmp1_ = widgets_context_menu_menu_picker_get_selected (_tmp0_);
	_tmp2_ = _tmp1_;
	selected = atoi (_tmp2_);
	if (selected <= 0) {
		ObjectsFiltersFilterItem* filter = NULL;
		ObjectsProject* _tmp3_;
		gchar* _tmp4_;
		gchar* _tmp5_;
		ObjectsFiltersFilterItem* _tmp6_;
		ObjectsFiltersFilterItem* _tmp7_;
		ObjectsFiltersFilterItem* _tmp8_;
		_tmp3_ = self->priv->_project;
		_tmp4_ = filter_item_type_to_string (FILTER_ITEM_TYPE_DUE_DATE);
		_tmp5_ = _tmp4_;
		_tmp6_ = objects_base_object_get_filter ((ObjectsBaseObject*) _tmp3_, _tmp5_);
		_tmp7_ = _tmp6_;
		_g_free0 (_tmp5_);
		filter = _tmp7_;
		_tmp8_ = filter;
		if (_tmp8_ != NULL) {
			ObjectsProject* _tmp9_;
			ObjectsFiltersFilterItem* _tmp10_;
			_tmp9_ = self->priv->_project;
			_tmp10_ = filter;
			objects_base_object_remove_filter ((ObjectsBaseObject*) _tmp9_, _tmp10_);
		}
		_g_object_unref0 (filter);
	} else {
		ObjectsFiltersFilterItem* filter = NULL;
		ObjectsProject* _tmp11_;
		gchar* _tmp12_;
		gchar* _tmp13_;
		ObjectsFiltersFilterItem* _tmp14_;
		ObjectsFiltersFilterItem* _tmp15_;
		gboolean insert = FALSE;
		ObjectsFiltersFilterItem* _tmp16_;
		ObjectsFiltersFilterItem* _tmp25_;
		gchar* _tmp26_;
		gchar* _tmp27_;
		_tmp11_ = self->priv->_project;
		_tmp12_ = filter_item_type_to_string (FILTER_ITEM_TYPE_DUE_DATE);
		_tmp13_ = _tmp12_;
		_tmp14_ = objects_base_object_get_filter ((ObjectsBaseObject*) _tmp11_, _tmp13_);
		_tmp15_ = _tmp14_;
		_g_free0 (_tmp13_);
		filter = _tmp15_;
		insert = FALSE;
		_tmp16_ = filter;
		if (_tmp16_ == NULL) {
			ObjectsFiltersFilterItem* _tmp17_;
			ObjectsFiltersFilterItem* _tmp18_;
			_tmp17_ = objects_filters_filter_item_new ();
			_g_object_unref0 (filter);
			filter = _tmp17_;
			_tmp18_ = filter;
			objects_filters_filter_item_set_filter_type (_tmp18_, FILTER_ITEM_TYPE_DUE_DATE);
			insert = TRUE;
		}
		if (selected == 1) {
			ObjectsFiltersFilterItem* _tmp19_;
			_tmp19_ = filter;
			objects_filters_filter_item_set_name (_tmp19_, _ ("Today"));
		} else {
			if (selected == 2) {
				ObjectsFiltersFilterItem* _tmp20_;
				_tmp20_ = filter;
				objects_filters_filter_item_set_name (_tmp20_, _ ("This Week"));
			} else {
				if (selected == 3) {
					ObjectsFiltersFilterItem* _tmp21_;
					_tmp21_ = filter;
					objects_filters_filter_item_set_name (_tmp21_, _ ("Next 7 Days"));
				} else {
					if (selected == 4) {
						ObjectsFiltersFilterItem* _tmp22_;
						_tmp22_ = filter;
						objects_filters_filter_item_set_name (_tmp22_, _ ("This Month"));
					} else {
						if (selected == 5) {
							ObjectsFiltersFilterItem* _tmp23_;
							_tmp23_ = filter;
							objects_filters_filter_item_set_name (_tmp23_, _ ("Next 30 Days"));
						} else {
							if (selected == 6) {
								ObjectsFiltersFilterItem* _tmp24_;
								_tmp24_ = filter;
								objects_filters_filter_item_set_name (_tmp24_, _ ("No Date"));
							}
						}
					}
				}
			}
		}
		_tmp25_ = filter;
		_tmp26_ = g_strdup_printf ("%i", selected);
		_tmp27_ = _tmp26_;
		objects_filters_filter_item_set_value (_tmp25_, _tmp27_);
		_g_free0 (_tmp27_);
		if (insert) {
			ObjectsProject* _tmp28_;
			ObjectsFiltersFilterItem* _tmp29_;
			_tmp28_ = self->priv->_project;
			_tmp29_ = filter;
			objects_base_object_add_filter ((ObjectsBaseObject*) _tmp28_, _tmp29_);
		} else {
			ObjectsProject* _tmp30_;
			ObjectsFiltersFilterItem* _tmp31_;
			_tmp30_ = self->priv->_project;
			_tmp31_ = filter;
			objects_base_object_update_filter ((ObjectsBaseObject*) _tmp30_, _tmp31_);
		}
		_g_object_unref0 (filter);
	}
}

static void
___lambda773__g_object_notify (GObject* _sender,
                               GParamSpec* pspec,
                               gpointer self)
{
	__lambda773_ ((ViewsProject*) self);
}

static void
__lambda774_ (ViewsProject* self,
              ObjectsFiltersFilterItem* filter,
              gboolean active)
{
	g_return_if_fail (filter != NULL);
	if (active) {
		ObjectsProject* _tmp0_;
		_tmp0_ = self->priv->_project;
		objects_base_object_add_filter ((ObjectsBaseObject*) _tmp0_, filter);
	} else {
		ObjectsProject* _tmp1_;
		_tmp1_ = self->priv->_project;
		objects_base_object_remove_filter ((ObjectsBaseObject*) _tmp1_, filter);
	}
}

static void
___lambda774__widgets_context_menu_menu_check_picker_filter_change (WidgetsContextMenuMenuCheckPicker* _sender,
                                                                    ObjectsFiltersFilterItem* filter,
                                                                    gboolean active,
                                                                    gpointer self)
{
	__lambda774_ ((ViewsProject*) self, filter, active);
}

static void
__lambda776_ (ViewsProject* self,
              GeeHashMap* labels)
{
	GeeArrayList* to_remove = NULL;
	GeeArrayList* _tmp20_;
	g_return_if_fail (labels != NULL);
	{
		GeeIterator* _label_it = NULL;
		GeeCollection* _tmp0_;
		GeeCollection* _tmp1_;
		GeeCollection* _tmp2_;
		GeeIterator* _tmp3_;
		GeeIterator* _tmp4_;
		_tmp0_ = gee_abstract_map_get_values ((GeeAbstractMap*) labels);
		_tmp1_ = _tmp0_;
		_tmp2_ = _tmp1_;
		_tmp3_ = gee_iterable_iterator ((GeeIterable*) _tmp2_);
		_tmp4_ = _tmp3_;
		_g_object_unref0 (_tmp2_);
		_label_it = _tmp4_;
		while (TRUE) {
			GeeIterator* _tmp5_;
			ObjectsLabel* label = NULL;
			GeeIterator* _tmp6_;
			gpointer _tmp7_;
			ObjectsFiltersFilterItem* filter = NULL;
			ObjectsFiltersFilterItem* _tmp8_;
			ObjectsFiltersFilterItem* _tmp9_;
			ObjectsFiltersFilterItem* _tmp10_;
			ObjectsLabel* _tmp11_;
			const gchar* _tmp12_;
			const gchar* _tmp13_;
			ObjectsFiltersFilterItem* _tmp14_;
			ObjectsLabel* _tmp15_;
			const gchar* _tmp16_;
			const gchar* _tmp17_;
			ObjectsProject* _tmp18_;
			ObjectsFiltersFilterItem* _tmp19_;
			_tmp5_ = _label_it;
			if (!gee_iterator_next (_tmp5_)) {
				break;
			}
			_tmp6_ = _label_it;
			_tmp7_ = gee_iterator_get (_tmp6_);
			label = (ObjectsLabel*) _tmp7_;
			_tmp8_ = objects_filters_filter_item_new ();
			filter = _tmp8_;
			_tmp9_ = filter;
			objects_filters_filter_item_set_filter_type (_tmp9_, FILTER_ITEM_TYPE_LABEL);
			_tmp10_ = filter;
			_tmp11_ = label;
			_tmp12_ = objects_base_object_get_name ((ObjectsBaseObject*) _tmp11_);
			_tmp13_ = _tmp12_;
			objects_filters_filter_item_set_name (_tmp10_, _tmp13_);
			_tmp14_ = filter;
			_tmp15_ = label;
			_tmp16_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp15_);
			_tmp17_ = _tmp16_;
			objects_filters_filter_item_set_value (_tmp14_, _tmp17_);
			_tmp18_ = self->priv->_project;
			_tmp19_ = filter;
			objects_base_object_add_filter ((ObjectsBaseObject*) _tmp18_, _tmp19_);
			_g_object_unref0 (filter);
			_g_object_unref0 (label);
		}
		_g_object_unref0 (_label_it);
	}
	_tmp20_ = gee_array_list_new (OBJECTS_FILTERS_TYPE_FILTER_ITEM, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
	to_remove = _tmp20_;
	{
		GeeIterator* _filter_it = NULL;
		ObjectsProject* _tmp21_;
		GeeHashMap* _tmp22_;
		GeeCollection* _tmp23_;
		GeeCollection* _tmp24_;
		GeeCollection* _tmp25_;
		GeeIterator* _tmp26_;
		GeeIterator* _tmp27_;
		_tmp21_ = self->priv->_project;
		_tmp22_ = ((ObjectsBaseObject*) _tmp21_)->filters;
		_tmp23_ = gee_abstract_map_get_values ((GeeAbstractMap*) _tmp22_);
		_tmp24_ = _tmp23_;
		_tmp25_ = _tmp24_;
		_tmp26_ = gee_iterable_iterator ((GeeIterable*) _tmp25_);
		_tmp27_ = _tmp26_;
		_g_object_unref0 (_tmp25_);
		_filter_it = _tmp27_;
		while (TRUE) {
			GeeIterator* _tmp28_;
			ObjectsFiltersFilterItem* filter = NULL;
			GeeIterator* _tmp29_;
			gpointer _tmp30_;
			ObjectsFiltersFilterItem* _tmp31_;
			FilterItemType _tmp32_;
			FilterItemType _tmp33_;
			_tmp28_ = _filter_it;
			if (!gee_iterator_next (_tmp28_)) {
				break;
			}
			_tmp29_ = _filter_it;
			_tmp30_ = gee_iterator_get (_tmp29_);
			filter = (ObjectsFiltersFilterItem*) _tmp30_;
			_tmp31_ = filter;
			_tmp32_ = objects_filters_filter_item_get_filter_type (_tmp31_);
			_tmp33_ = _tmp32_;
			if (_tmp33_ == FILTER_ITEM_TYPE_LABEL) {
				ObjectsFiltersFilterItem* _tmp34_;
				const gchar* _tmp35_;
				const gchar* _tmp36_;
				_tmp34_ = filter;
				_tmp35_ = objects_filters_filter_item_get_value (_tmp34_);
				_tmp36_ = _tmp35_;
				if (!gee_abstract_map_has_key ((GeeAbstractMap*) labels, _tmp36_)) {
					GeeArrayList* _tmp37_;
					ObjectsFiltersFilterItem* _tmp38_;
					_tmp37_ = to_remove;
					_tmp38_ = filter;
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp37_, _tmp38_);
				}
			}
			_g_object_unref0 (filter);
		}
		_g_object_unref0 (_filter_it);
	}
	{
		GeeArrayList* _filter_list = NULL;
		GeeArrayList* _tmp39_;
		gint _filter_size = 0;
		GeeArrayList* _tmp40_;
		gint _tmp41_;
		gint _tmp42_;
		gint _filter_index = 0;
		_tmp39_ = to_remove;
		_filter_list = _tmp39_;
		_tmp40_ = _filter_list;
		_tmp41_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp40_);
		_tmp42_ = _tmp41_;
		_filter_size = _tmp42_;
		_filter_index = -1;
		while (TRUE) {
			gint _tmp43_;
			gint _tmp44_;
			ObjectsFiltersFilterItem* filter = NULL;
			GeeArrayList* _tmp45_;
			gpointer _tmp46_;
			ObjectsProject* _tmp47_;
			ObjectsFiltersFilterItem* _tmp48_;
			_filter_index = _filter_index + 1;
			_tmp43_ = _filter_index;
			_tmp44_ = _filter_size;
			if (!(_tmp43_ < _tmp44_)) {
				break;
			}
			_tmp45_ = _filter_list;
			_tmp46_ = gee_abstract_list_get ((GeeAbstractList*) _tmp45_, _filter_index);
			filter = (ObjectsFiltersFilterItem*) _tmp46_;
			_tmp47_ = self->priv->_project;
			_tmp48_ = filter;
			objects_base_object_remove_filter ((ObjectsBaseObject*) _tmp47_, _tmp48_);
			_g_object_unref0 (filter);
		}
	}
	_g_object_unref0 (to_remove);
}

static void
___lambda776__dialogs_label_picker_labels_changed (DialogsLabelPicker* _sender,
                                                   GeeHashMap* labels,
                                                   gpointer self)
{
	__lambda776_ ((ViewsProject*) self, labels);
}

static void
__lambda775_ (ViewsProject* self)
{
	GeeArrayList* _labels = NULL;
	GeeArrayList* _tmp0_;
	DialogsLabelPicker* dialog = NULL;
	DialogsLabelPicker* _tmp21_;
	ObjectsProject* _tmp22_;
	ObjectsSource* _tmp23_;
	ObjectsSource* _tmp24_;
	GeeArrayList* _tmp25_;
	Planify* _tmp26_;
	MainWindow* _tmp27_;
	_tmp0_ = gee_array_list_new (OBJECTS_TYPE_LABEL, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
	_labels = _tmp0_;
	{
		GeeIterator* _filter_it = NULL;
		ObjectsProject* _tmp1_;
		GeeHashMap* _tmp2_;
		GeeCollection* _tmp3_;
		GeeCollection* _tmp4_;
		GeeCollection* _tmp5_;
		GeeIterator* _tmp6_;
		GeeIterator* _tmp7_;
		_tmp1_ = self->priv->_project;
		_tmp2_ = ((ObjectsBaseObject*) _tmp1_)->filters;
		_tmp3_ = gee_abstract_map_get_values ((GeeAbstractMap*) _tmp2_);
		_tmp4_ = _tmp3_;
		_tmp5_ = _tmp4_;
		_tmp6_ = gee_iterable_iterator ((GeeIterable*) _tmp5_);
		_tmp7_ = _tmp6_;
		_g_object_unref0 (_tmp5_);
		_filter_it = _tmp7_;
		while (TRUE) {
			GeeIterator* _tmp8_;
			ObjectsFiltersFilterItem* filter = NULL;
			GeeIterator* _tmp9_;
			gpointer _tmp10_;
			ObjectsFiltersFilterItem* _tmp11_;
			FilterItemType _tmp12_;
			FilterItemType _tmp13_;
			_tmp8_ = _filter_it;
			if (!gee_iterator_next (_tmp8_)) {
				break;
			}
			_tmp9_ = _filter_it;
			_tmp10_ = gee_iterator_get (_tmp9_);
			filter = (ObjectsFiltersFilterItem*) _tmp10_;
			_tmp11_ = filter;
			_tmp12_ = objects_filters_filter_item_get_filter_type (_tmp11_);
			_tmp13_ = _tmp12_;
			if (_tmp13_ == FILTER_ITEM_TYPE_LABEL) {
				GeeArrayList* _tmp14_;
				ServicesStore* _tmp15_;
				ObjectsFiltersFilterItem* _tmp16_;
				const gchar* _tmp17_;
				const gchar* _tmp18_;
				ObjectsLabel* _tmp19_;
				ObjectsLabel* _tmp20_;
				_tmp14_ = _labels;
				_tmp15_ = services_store_instance ();
				_tmp16_ = filter;
				_tmp17_ = objects_filters_filter_item_get_value (_tmp16_);
				_tmp18_ = _tmp17_;
				_tmp19_ = services_store_get_label (_tmp15_, _tmp18_);
				_tmp20_ = _tmp19_;
				gee_abstract_collection_add ((GeeAbstractCollection*) _tmp14_, _tmp20_);
				_g_object_unref0 (_tmp20_);
			}
			_g_object_unref0 (filter);
		}
		_g_object_unref0 (_filter_it);
	}
	_tmp21_ = dialogs_label_picker_new (LABEL_PICKER_TYPE_FILTER_ONLY);
	g_object_ref_sink (_tmp21_);
	dialog = _tmp21_;
	_tmp22_ = self->priv->_project;
	_tmp23_ = objects_project_get_source (_tmp22_);
	_tmp24_ = _tmp23_;
	dialogs_label_picker_add_labels (dialog, _tmp24_);
	_tmp25_ = _labels;
	dialogs_label_picker_set_labels (dialog, _tmp25_);
	_tmp26_ = planify__instance;
	_tmp27_ = _tmp26_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp27_);
	g_signal_connect_object (dialog, "labels-changed", (GCallback) ___lambda776__dialogs_label_picker_labels_changed, self, 0);
	_g_object_unref0 (dialog);
	_g_object_unref0 (_labels);
}

static void
___lambda775__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                            gpointer self)
{
	__lambda775_ ((ViewsProject*) self);
}

static GtkPopover*
views_project_build_view_setting_popover (ViewsProject* self)
{
	Block64Data* _data64_;
	AdwToggle* list_toggle = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	AdwToggle* _tmp3_ = NULL;
	AdwToggle* board_toggle = NULL;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	AdwToggle* _tmp7_ = NULL;
	AdwToggleGroup* _tmp8_ = NULL;
	AdwToggleGroup* _tmp9_;
	AdwToggle* _tmp10_;
	AdwToggle* _tmp11_;
	AdwToggleGroup* _tmp12_;
	AdwToggle* _tmp13_;
	AdwToggle* _tmp14_;
	AdwToggleGroup* _tmp15_;
	ObjectsProject* _tmp16_;
	ProjectViewStyle _tmp17_;
	ProjectViewStyle _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	ObjectsProject* _tmp21_;
	SortedByType _tmp22_;
	SortedByType _tmp23_;
	gchar* _tmp24_;
	WidgetsContextMenuMenuPicker* _tmp25_ = NULL;
	WidgetsContextMenuMenuPicker* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	WidgetsContextMenuMenuPicker* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
	WidgetsContextMenuMenuPicker* _tmp32_;
	gchar* _tmp33_;
	gchar* _tmp34_;
	WidgetsContextMenuMenuPicker* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	WidgetsContextMenuMenuPicker* _tmp38_;
	gchar* _tmp39_;
	gchar* _tmp40_;
	WidgetsContextMenuMenuPicker* _tmp41_;
	gchar* _tmp42_;
	gchar* _tmp43_;
	ObjectsProject* _tmp44_;
	SortOrderType _tmp45_;
	SortOrderType _tmp46_;
	ObjectsProject* _tmp47_;
	SortedByType _tmp48_;
	SortedByType _tmp49_;
	WidgetsContextMenuMenuSwitch* _tmp50_ = NULL;
	gchar* _tmp51_;
	WidgetsContextMenuMenuPicker* _tmp52_ = NULL;
	WidgetsContextMenuMenuPicker* _tmp53_;
	WidgetsContextMenuMenuPicker* _tmp54_;
	WidgetsContextMenuMenuPicker* _tmp55_;
	WidgetsContextMenuMenuPicker* _tmp56_;
	WidgetsContextMenuMenuPicker* _tmp57_;
	WidgetsContextMenuMenuPicker* _tmp58_;
	WidgetsContextMenuMenuPicker* _tmp59_;
	GeeArrayList* priority_items = NULL;
	GeeArrayList* _tmp60_;
	GeeArrayList* _tmp61_;
	gchar* _tmp62_;
	gchar* _tmp63_;
	ObjectsFiltersFilterItem* _tmp64_ = NULL;
	ObjectsFiltersFilterItem* _tmp65_;
	GeeArrayList* _tmp66_;
	gchar* _tmp67_;
	gchar* _tmp68_;
	ObjectsFiltersFilterItem* _tmp69_ = NULL;
	ObjectsFiltersFilterItem* _tmp70_;
	GeeArrayList* _tmp71_;
	gchar* _tmp72_;
	gchar* _tmp73_;
	ObjectsFiltersFilterItem* _tmp74_ = NULL;
	ObjectsFiltersFilterItem* _tmp75_;
	GeeArrayList* _tmp76_;
	gchar* _tmp77_;
	gchar* _tmp78_;
	ObjectsFiltersFilterItem* _tmp79_ = NULL;
	ObjectsFiltersFilterItem* _tmp80_;
	WidgetsContextMenuMenuCheckPicker* _tmp81_;
	WidgetsContextMenuMenuCheckPicker* _tmp82_;
	GeeArrayList* _tmp83_;
	WidgetsContextMenuMenuItem* labels_filter = NULL;
	WidgetsContextMenuMenuItem* _tmp84_ = NULL;
	gchar* _tmp85_;
	WidgetsContextMenuMenuSwitch* _tmp86_ = NULL;
	WidgetsContextMenuMenuSwitch* _tmp87_;
	ObjectsProject* _tmp88_;
	gboolean _tmp89_;
	gboolean _tmp90_;
	GtkButton* show_completed_item_button = NULL;
	gchar* _tmp91_;
	GtkButton* _tmp92_ = NULL;
	GtkButton* _tmp93_;
	GtkBox* show_completed_box = NULL;
	GtkBox* _tmp94_ = NULL;
	GtkBox* _tmp95_;
	WidgetsContextMenuMenuSwitch* _tmp96_;
	GtkBox* _tmp97_;
	GtkButton* _tmp98_;
	GtkBox* menu_box = NULL;
	GtkBox* _tmp99_;
	GtkBox* _tmp100_;
	GtkBox* _tmp101_;
	gboolean _tmp102_ = FALSE;
	gboolean _tmp103_ = FALSE;
	ObjectsProject* _tmp104_;
	SourceType _tmp105_;
	SourceType _tmp106_;
	GtkBox* _tmp119_;
	gchar* _tmp120_;
	gchar* _tmp121_;
	gchar** _tmp122_;
	GtkLabel* _tmp123_ = NULL;
	GtkLabel* _tmp124_;
	GtkBox* _tmp125_;
	WidgetsContextMenuMenuPicker* _tmp126_;
	GtkBox* _tmp127_;
	WidgetsContextMenuMenuSwitch* _tmp128_;
	GtkBox* _tmp129_;
	WidgetsContextMenuMenuSeparator* _tmp130_;
	WidgetsContextMenuMenuSeparator* _tmp131_;
	GtkBox* _tmp132_;
	gchar* _tmp133_;
	gchar* _tmp134_;
	gchar** _tmp135_;
	GtkLabel* _tmp136_ = NULL;
	GtkLabel* _tmp137_;
	GtkBox* _tmp138_;
	WidgetsContextMenuMenuPicker* _tmp139_;
	GtkBox* _tmp140_;
	WidgetsContextMenuMenuCheckPicker* _tmp141_;
	GtkBox* _tmp142_;
	WidgetsContextMenuMenuItem* _tmp143_;
	GtkBox* _tmp144_;
	WidgetsContextMenuMenuSeparator* _tmp145_;
	WidgetsContextMenuMenuSeparator* _tmp146_;
	GtkBox* _tmp147_;
	GtkBox* _tmp148_;
	GtkBox* _tmp149_;
	GtkWidget* _tmp150_;
	GtkPopover* _tmp151_ = NULL;
	GeeHashMap* _tmp152_;
	WidgetsContextMenuMenuPicker* _tmp153_;
	gulong _tmp154_;
	WidgetsContextMenuMenuPicker* _tmp155_;
	GeeHashMap* _tmp156_;
	WidgetsContextMenuMenuSwitch* _tmp157_;
	gulong _tmp158_;
	WidgetsContextMenuMenuSwitch* _tmp159_;
	GeeHashMap* _tmp160_;
	WidgetsContextMenuMenuSwitch* _tmp161_;
	gulong _tmp162_;
	WidgetsContextMenuMenuSwitch* _tmp163_;
	GeeHashMap* _tmp164_;
	ObjectsProject* _tmp165_;
	gulong _tmp166_;
	ObjectsProject* _tmp167_;
	GeeHashMap* _tmp168_;
	GtkButton* _tmp169_;
	gulong _tmp170_;
	GtkButton* _tmp171_;
	GeeHashMap* _tmp172_;
	ObjectsProject* _tmp173_;
	gulong _tmp174_;
	ObjectsProject* _tmp175_;
	GeeHashMap* _tmp176_;
	ObjectsProject* _tmp177_;
	gulong _tmp178_;
	ObjectsProject* _tmp179_;
	GeeHashMap* _tmp180_;
	WidgetsContextMenuMenuPicker* _tmp181_;
	gulong _tmp182_;
	WidgetsContextMenuMenuPicker* _tmp183_;
	GeeHashMap* _tmp184_;
	WidgetsContextMenuMenuCheckPicker* _tmp185_;
	gulong _tmp186_;
	WidgetsContextMenuMenuCheckPicker* _tmp187_;
	GeeHashMap* _tmp188_;
	WidgetsContextMenuMenuItem* _tmp189_;
	gulong _tmp190_;
	WidgetsContextMenuMenuItem* _tmp191_;
	GtkPopover* _tmp192_;
	GtkPopover* result;
	g_return_val_if_fail (self != NULL, NULL);
	_data64_ = g_slice_new0 (Block64Data);
	_data64_->_ref_count_ = 1;
	_data64_->self = g_object_ref (self);
	_tmp0_ = project_view_style_to_string (PROJECT_VIEW_STYLE_LIST);
	_tmp1_ = g_strdup (_ ("List"));
	_tmp2_ = g_strdup ("list-symbolic");
	_tmp3_ = adw_toggle_new ();
	adw_toggle_set_name (_tmp3_, _tmp0_);
	_g_free0 (_tmp0_);
	adw_toggle_set_label (_tmp3_, _tmp1_);
	_g_free0 (_tmp1_);
	adw_toggle_set_icon_name (_tmp3_, _tmp2_);
	_g_free0 (_tmp2_);
	list_toggle = _tmp3_;
	_tmp4_ = project_view_style_to_string (PROJECT_VIEW_STYLE_BOARD);
	_tmp5_ = g_strdup (_ ("Board"));
	_tmp6_ = g_strdup ("view-columns-symbolic");
	_tmp7_ = adw_toggle_new ();
	adw_toggle_set_name (_tmp7_, _tmp4_);
	_g_free0 (_tmp4_);
	adw_toggle_set_label (_tmp7_, _tmp5_);
	_g_free0 (_tmp5_);
	adw_toggle_set_icon_name (_tmp7_, _tmp6_);
	_g_free0 (_tmp6_);
	board_toggle = _tmp7_;
	_tmp8_ = (AdwToggleGroup*) adw_toggle_group_new ();
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp8_, 12);
	g_object_ref_sink (_tmp8_);
	_data64_->view_group = _tmp8_;
	_tmp9_ = _data64_->view_group;
	_tmp10_ = list_toggle;
	_tmp11_ = _g_object_ref0 (_tmp10_);
	adw_toggle_group_add (_tmp9_, _tmp11_);
	_tmp12_ = _data64_->view_group;
	_tmp13_ = board_toggle;
	_tmp14_ = _g_object_ref0 (_tmp13_);
	adw_toggle_group_add (_tmp12_, _tmp14_);
	_tmp15_ = _data64_->view_group;
	_tmp16_ = self->priv->_project;
	_tmp17_ = objects_project_get_view_style (_tmp16_);
	_tmp18_ = _tmp17_;
	_tmp19_ = project_view_style_to_string (_tmp18_);
	_tmp20_ = _tmp19_;
	adw_toggle_group_set_active_name (_tmp15_, _tmp20_);
	_g_free0 (_tmp20_);
	_tmp21_ = self->priv->_project;
	_tmp22_ = objects_project_get_sorted_by (_tmp21_);
	_tmp23_ = _tmp22_;
	_tmp24_ = sorted_by_type_to_string (_tmp23_);
	_tmp25_ = widgets_context_menu_menu_picker_new (_ ("Sorting"), "vertical-arrows-long-symbolic");
	widgets_context_menu_menu_picker_set_selected (_tmp25_, _tmp24_);
	_g_free0 (_tmp24_);
	g_object_ref_sink (_tmp25_);
	_data64_->sorted_by_item = _tmp25_;
	_tmp26_ = _data64_->sorted_by_item;
	_tmp27_ = sorted_by_type_to_string (SORTED_BY_TYPE_MANUAL);
	_tmp28_ = _tmp27_;
	widgets_context_menu_menu_picker_add_item (_tmp26_, _ ("Custom sort order"), _tmp28_);
	_g_free0 (_tmp28_);
	_tmp29_ = _data64_->sorted_by_item;
	_tmp30_ = sorted_by_type_to_string (SORTED_BY_TYPE_NAME);
	_tmp31_ = _tmp30_;
	widgets_context_menu_menu_picker_add_item (_tmp29_, _ ("Alphabetically"), _tmp31_);
	_g_free0 (_tmp31_);
	_tmp32_ = _data64_->sorted_by_item;
	_tmp33_ = sorted_by_type_to_string (SORTED_BY_TYPE_DUE_DATE);
	_tmp34_ = _tmp33_;
	widgets_context_menu_menu_picker_add_item (_tmp32_, _ ("Due Date"), _tmp34_);
	_g_free0 (_tmp34_);
	_tmp35_ = _data64_->sorted_by_item;
	_tmp36_ = sorted_by_type_to_string (SORTED_BY_TYPE_ADDED_DATE);
	_tmp37_ = _tmp36_;
	widgets_context_menu_menu_picker_add_item (_tmp35_, _ ("Date Added"), _tmp37_);
	_g_free0 (_tmp37_);
	_tmp38_ = _data64_->sorted_by_item;
	_tmp39_ = sorted_by_type_to_string (SORTED_BY_TYPE_UPDATED_DATE);
	_tmp40_ = _tmp39_;
	widgets_context_menu_menu_picker_add_item (_tmp38_, _ ("Date Modified"), _tmp40_);
	_g_free0 (_tmp40_);
	_tmp41_ = _data64_->sorted_by_item;
	_tmp42_ = sorted_by_type_to_string (SORTED_BY_TYPE_PRIORITY);
	_tmp43_ = _tmp42_;
	widgets_context_menu_menu_picker_add_item (_tmp41_, _ ("Priority"), _tmp43_);
	_g_free0 (_tmp43_);
	_tmp44_ = self->priv->_project;
	_tmp45_ = objects_project_get_sort_order (_tmp44_);
	_tmp46_ = _tmp45_;
	_tmp47_ = self->priv->_project;
	_tmp48_ = objects_project_get_sorted_by (_tmp47_);
	_tmp49_ = _tmp48_;
	_tmp50_ = widgets_context_menu_menu_switch_new (_ ("Ascending Order"), "view-sort-ascending-rtl-symbolic");
	widgets_context_menu_menu_switch_set_active (_tmp50_, _tmp46_ == SORT_ORDER_TYPE_ASC);
	gtk_widget_set_visible ((GtkWidget*) _tmp50_, _tmp49_ != SORTED_BY_TYPE_MANUAL);
	g_object_ref_sink (_tmp50_);
	_data64_->sort_order_item = _tmp50_;
	_tmp51_ = g_strdup ("0");
	_tmp52_ = widgets_context_menu_menu_picker_new (_ ("Duedate"), "month-symbolic");
	widgets_context_menu_menu_picker_set_selected (_tmp52_, _tmp51_);
	_g_free0 (_tmp51_);
	g_object_ref_sink (_tmp52_);
	_g_object_unref0 (self->priv->due_date_item);
	self->priv->due_date_item = _tmp52_;
	_tmp53_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp53_, _ ("All (default)"), "0");
	_tmp54_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp54_, _ ("Today"), "1");
	_tmp55_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp55_, _ ("This Week"), "2");
	_tmp56_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp56_, _ ("Next 7 Days"), "3");
	_tmp57_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp57_, _ ("This Month"), "4");
	_tmp58_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp58_, _ ("Next 30 Days"), "5");
	_tmp59_ = self->priv->due_date_item;
	widgets_context_menu_menu_picker_add_item (_tmp59_, _ ("No Date"), "6");
	_tmp60_ = gee_array_list_new (OBJECTS_FILTERS_TYPE_FILTER_ITEM, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
	priority_items = _tmp60_;
	_tmp61_ = priority_items;
	_tmp62_ = g_strdup (_ ("P1"));
	_tmp63_ = g_strdup_printf ("%i", CONSTANTS_PRIORITY_1);
	_tmp64_ = objects_filters_filter_item_new ();
	objects_filters_filter_item_set_filter_type (_tmp64_, FILTER_ITEM_TYPE_PRIORITY);
	objects_filters_filter_item_set_name (_tmp64_, _tmp62_);
	_g_free0 (_tmp62_);
	objects_filters_filter_item_set_value (_tmp64_, _tmp63_);
	_g_free0 (_tmp63_);
	_tmp65_ = _tmp64_;
	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp61_, _tmp65_);
	_g_object_unref0 (_tmp65_);
	_tmp66_ = priority_items;
	_tmp67_ = g_strdup (_ ("P2"));
	_tmp68_ = g_strdup_printf ("%i", CONSTANTS_PRIORITY_2);
	_tmp69_ = objects_filters_filter_item_new ();
	objects_filters_filter_item_set_filter_type (_tmp69_, FILTER_ITEM_TYPE_PRIORITY);
	objects_filters_filter_item_set_name (_tmp69_, _tmp67_);
	_g_free0 (_tmp67_);
	objects_filters_filter_item_set_value (_tmp69_, _tmp68_);
	_g_free0 (_tmp68_);
	_tmp70_ = _tmp69_;
	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp66_, _tmp70_);
	_g_object_unref0 (_tmp70_);
	_tmp71_ = priority_items;
	_tmp72_ = g_strdup (_ ("P3"));
	_tmp73_ = g_strdup_printf ("%i", CONSTANTS_PRIORITY_3);
	_tmp74_ = objects_filters_filter_item_new ();
	objects_filters_filter_item_set_filter_type (_tmp74_, FILTER_ITEM_TYPE_PRIORITY);
	objects_filters_filter_item_set_name (_tmp74_, _tmp72_);
	_g_free0 (_tmp72_);
	objects_filters_filter_item_set_value (_tmp74_, _tmp73_);
	_g_free0 (_tmp73_);
	_tmp75_ = _tmp74_;
	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp71_, _tmp75_);
	_g_object_unref0 (_tmp75_);
	_tmp76_ = priority_items;
	_tmp77_ = g_strdup (_ ("P4"));
	_tmp78_ = g_strdup_printf ("%i", CONSTANTS_PRIORITY_4);
	_tmp79_ = objects_filters_filter_item_new ();
	objects_filters_filter_item_set_filter_type (_tmp79_, FILTER_ITEM_TYPE_PRIORITY);
	objects_filters_filter_item_set_name (_tmp79_, _tmp77_);
	_g_free0 (_tmp77_);
	objects_filters_filter_item_set_value (_tmp79_, _tmp78_);
	_g_free0 (_tmp78_);
	_tmp80_ = _tmp79_;
	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp76_, _tmp80_);
	_g_object_unref0 (_tmp80_);
	_tmp81_ = widgets_context_menu_menu_check_picker_new (_ ("Priority"), "flag-outline-thick-symbolic");
	g_object_ref_sink (_tmp81_);
	_g_object_unref0 (self->priv->priority_filter);
	self->priv->priority_filter = _tmp81_;
	_tmp82_ = self->priv->priority_filter;
	_tmp83_ = priority_items;
	widgets_context_menu_menu_check_picker_set_items (_tmp82_, _tmp83_);
	_tmp84_ = widgets_context_menu_menu_item_new (_ ("Filter by Labels"), "tag-outline-symbolic");
	widgets_context_menu_menu_item_set_arrow (_tmp84_, TRUE);
	g_object_ref_sink (_tmp84_);
	labels_filter = _tmp84_;
	_tmp85_ = g_strdup (_ ("Display completed tasks in the list"));
	_tmp86_ = widgets_context_menu_menu_switch_new (_ ("Show Completed"), "check-round-outline-symbolic");
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp86_, _tmp85_);
	_g_free0 (_tmp85_);
	g_object_ref_sink (_tmp86_);
	_data64_->show_completed_item = _tmp86_;
	_tmp87_ = _data64_->show_completed_item;
	_tmp88_ = self->priv->_project;
	_tmp89_ = objects_project_get_show_completed (_tmp88_);
	_tmp90_ = _tmp89_;
	widgets_context_menu_menu_switch_set_active (_tmp87_, _tmp90_);
	_tmp91_ = g_strdup (_ ("Search completed tasks"));
	_tmp92_ = (GtkButton*) gtk_button_new_from_icon_name ("edit-find-symbolic");
	gtk_widget_set_valign ((GtkWidget*) _tmp92_, GTK_ALIGN_CENTER);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp92_, _tmp91_);
	_g_free0 (_tmp91_);
	g_object_ref_sink (_tmp92_);
	show_completed_item_button = _tmp92_;
	_tmp93_ = show_completed_item_button;
	gtk_widget_add_css_class ((GtkWidget*) _tmp93_, "flat");
	_tmp94_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
	gtk_widget_set_valign ((GtkWidget*) _tmp94_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp94_);
	show_completed_box = _tmp94_;
	_tmp95_ = show_completed_box;
	_tmp96_ = _data64_->show_completed_item;
	gtk_box_append (_tmp95_, (GtkWidget*) _tmp96_);
	_tmp97_ = show_completed_box;
	_tmp98_ = show_completed_item_button;
	gtk_box_append (_tmp97_, (GtkWidget*) _tmp98_);
	_tmp99_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp99_);
	menu_box = _tmp99_;
	_tmp100_ = menu_box;
	_tmp101_ = menu_box;
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp101_, 3);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp100_, 3);
	_tmp104_ = self->priv->_project;
	_tmp105_ = objects_project_get_source_type (_tmp104_);
	_tmp106_ = _tmp105_;
	if (_tmp106_ == SOURCE_TYPE_LOCAL) {
		_tmp103_ = TRUE;
	} else {
		ObjectsProject* _tmp107_;
		SourceType _tmp108_;
		SourceType _tmp109_;
		_tmp107_ = self->priv->_project;
		_tmp108_ = objects_project_get_source_type (_tmp107_);
		_tmp109_ = _tmp108_;
		_tmp103_ = _tmp109_ == SOURCE_TYPE_TODOIST;
	}
	if (_tmp103_) {
		_tmp102_ = TRUE;
	} else {
		ObjectsProject* _tmp110_;
		SourceType _tmp111_;
		SourceType _tmp112_;
		_tmp110_ = self->priv->_project;
		_tmp111_ = objects_project_get_source_type (_tmp110_);
		_tmp112_ = _tmp111_;
		_tmp102_ = _tmp112_ == SOURCE_TYPE_CALDAV;
	}
	if (_tmp102_) {
		GtkBox* _tmp113_;
		AdwToggleGroup* _tmp114_;
		GeeHashMap* _tmp115_;
		AdwToggleGroup* _tmp116_;
		gulong _tmp117_;
		AdwToggleGroup* _tmp118_;
		_tmp113_ = menu_box;
		_tmp114_ = _data64_->view_group;
		gtk_box_append (_tmp113_, (GtkWidget*) _tmp114_);
		_tmp115_ = self->priv->signal_map;
		_tmp116_ = _data64_->view_group;
		_tmp117_ = g_signal_connect_data ((GObject*) _tmp116_, "notify::active-name", (GCallback) ____lambda765__g_object_notify, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
		_tmp118_ = _data64_->view_group;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp115_, (gpointer) ((guintptr) _tmp117_), (GObject*) _tmp118_);
	}
	_tmp119_ = menu_box;
	_tmp120_ = g_strdup ("caption");
	_tmp121_ = g_strdup ("font-bold");
	_tmp122_ = g_new0 (gchar*, 2 + 1);
	_tmp122_[0] = _tmp120_;
	_tmp122_[1] = _tmp121_;
	_tmp123_ = (GtkLabel*) gtk_label_new (_ ("Sort By"));
	gtk_widget_set_css_classes ((GtkWidget*) _tmp123_, _tmp122_);
	_tmp122_ = (_vala_array_free (_tmp122_, 2, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp123_, 6);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp123_, 6);
	gtk_widget_set_halign ((GtkWidget*) _tmp123_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp123_);
	_tmp124_ = _tmp123_;
	gtk_box_append (_tmp119_, (GtkWidget*) _tmp124_);
	_g_object_unref0 (_tmp124_);
	_tmp125_ = menu_box;
	_tmp126_ = _data64_->sorted_by_item;
	gtk_box_append (_tmp125_, (GtkWidget*) _tmp126_);
	_tmp127_ = menu_box;
	_tmp128_ = _data64_->sort_order_item;
	gtk_box_append (_tmp127_, (GtkWidget*) _tmp128_);
	_tmp129_ = menu_box;
	_tmp130_ = widgets_context_menu_menu_separator_new ();
	g_object_ref_sink (_tmp130_);
	_tmp131_ = _tmp130_;
	gtk_box_append (_tmp129_, (GtkWidget*) _tmp131_);
	_g_object_unref0 (_tmp131_);
	_tmp132_ = menu_box;
	_tmp133_ = g_strdup ("caption");
	_tmp134_ = g_strdup ("font-bold");
	_tmp135_ = g_new0 (gchar*, 2 + 1);
	_tmp135_[0] = _tmp133_;
	_tmp135_[1] = _tmp134_;
	_tmp136_ = (GtkLabel*) gtk_label_new (_ ("Filter By"));
	gtk_widget_set_css_classes ((GtkWidget*) _tmp136_, _tmp135_);
	_tmp135_ = (_vala_array_free (_tmp135_, 2, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp136_, 6);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp136_, 6);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp136_, 6);
	gtk_widget_set_halign ((GtkWidget*) _tmp136_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp136_);
	_tmp137_ = _tmp136_;
	gtk_box_append (_tmp132_, (GtkWidget*) _tmp137_);
	_g_object_unref0 (_tmp137_);
	_tmp138_ = menu_box;
	_tmp139_ = self->priv->due_date_item;
	gtk_box_append (_tmp138_, (GtkWidget*) _tmp139_);
	_tmp140_ = menu_box;
	_tmp141_ = self->priv->priority_filter;
	gtk_box_append (_tmp140_, (GtkWidget*) _tmp141_);
	_tmp142_ = menu_box;
	_tmp143_ = labels_filter;
	gtk_box_append (_tmp142_, (GtkWidget*) _tmp143_);
	_tmp144_ = menu_box;
	_tmp145_ = widgets_context_menu_menu_separator_new ();
	g_object_ref_sink (_tmp145_);
	_tmp146_ = _tmp145_;
	gtk_box_append (_tmp144_, (GtkWidget*) _tmp146_);
	_g_object_unref0 (_tmp146_);
	_tmp147_ = menu_box;
	_tmp148_ = show_completed_box;
	gtk_box_append (_tmp147_, (GtkWidget*) _tmp148_);
	_tmp149_ = menu_box;
	_tmp150_ = _g_object_ref0 ((GtkWidget*) _tmp149_);
	_tmp151_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp151_, FALSE);
	gtk_popover_set_position (_tmp151_, GTK_POS_BOTTOM);
	gtk_popover_set_child (_tmp151_, _tmp150_);
	_g_object_unref0 (_tmp150_);
	g_object_set ((GtkWidget*) _tmp151_, "width-request", 250, NULL);
	g_object_ref_sink (_tmp151_);
	_data64_->popover = _tmp151_;
	_tmp152_ = self->priv->signal_map;
	_tmp153_ = _data64_->sorted_by_item;
	_tmp154_ = g_signal_connect_data ((GObject*) _tmp153_, "notify::selected", (GCallback) ___lambda766__g_object_notify, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp155_ = _data64_->sorted_by_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp152_, (gpointer) ((guintptr) _tmp154_), (GObject*) _tmp155_);
	_tmp156_ = self->priv->signal_map;
	_tmp157_ = _data64_->sort_order_item;
	_tmp158_ = g_signal_connect_data (_tmp157_, "activate-item", (GCallback) ___lambda767__widgets_context_menu_menu_switch_activate_item, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp159_ = _data64_->sort_order_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp156_, (gpointer) ((guintptr) _tmp158_), (GObject*) _tmp159_);
	_tmp160_ = self->priv->signal_map;
	_tmp161_ = _data64_->show_completed_item;
	_tmp162_ = g_signal_connect_object (_tmp161_, "activate-item", (GCallback) ___lambda768__widgets_context_menu_menu_switch_activate_item, self, 0);
	_tmp163_ = _data64_->show_completed_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp160_, (gpointer) ((guintptr) _tmp162_), (GObject*) _tmp163_);
	_tmp164_ = self->priv->signal_map;
	_tmp165_ = self->priv->_project;
	_tmp166_ = g_signal_connect_data (_tmp165_, "show-completed-changed", (GCallback) ___lambda769__objects_project_show_completed_changed, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp167_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp164_, (gpointer) ((guintptr) _tmp166_), (GObject*) _tmp167_);
	_tmp168_ = self->priv->signal_map;
	_tmp169_ = show_completed_item_button;
	_tmp170_ = g_signal_connect_data (_tmp169_, "clicked", (GCallback) ___lambda770__gtk_button_clicked, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp171_ = show_completed_item_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp168_, (gpointer) ((guintptr) _tmp170_), (GObject*) _tmp171_);
	_tmp172_ = self->priv->signal_map;
	_tmp173_ = self->priv->_project;
	_tmp174_ = g_signal_connect_data (_tmp173_, "sorted-by-changed", (GCallback) ___lambda771__objects_project_sorted_by_changed, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp175_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp172_, (gpointer) ((guintptr) _tmp174_), (GObject*) _tmp175_);
	_tmp176_ = self->priv->signal_map;
	_tmp177_ = self->priv->_project;
	_tmp178_ = g_signal_connect_data (_tmp177_, "sort-order-changed", (GCallback) ___lambda772__objects_project_sort_order_changed, block64_data_ref (_data64_), (GClosureNotify) block64_data_unref, 0);
	_tmp179_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp176_, (gpointer) ((guintptr) _tmp178_), (GObject*) _tmp179_);
	_tmp180_ = self->priv->signal_map;
	_tmp181_ = self->priv->due_date_item;
	_tmp182_ = g_signal_connect_object ((GObject*) _tmp181_, "notify::selected", (GCallback) ___lambda773__g_object_notify, self, 0);
	_tmp183_ = self->priv->due_date_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp180_, (gpointer) ((guintptr) _tmp182_), (GObject*) _tmp183_);
	_tmp184_ = self->priv->signal_map;
	_tmp185_ = self->priv->priority_filter;
	_tmp186_ = g_signal_connect_object (_tmp185_, "filter-change", (GCallback) ___lambda774__widgets_context_menu_menu_check_picker_filter_change, self, 0);
	_tmp187_ = self->priv->priority_filter;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp184_, (gpointer) ((guintptr) _tmp186_), (GObject*) _tmp187_);
	_tmp188_ = self->priv->signal_map;
	_tmp189_ = labels_filter;
	_tmp190_ = g_signal_connect_object (_tmp189_, "activate-item", (GCallback) ___lambda775__widgets_context_menu_menu_item_activate_item, self, 0);
	_tmp191_ = labels_filter;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp188_, (gpointer) ((guintptr) _tmp190_), (GObject*) _tmp191_);
	_tmp192_ = _g_object_ref0 (_data64_->popover);
	result = _tmp192_;
	_g_object_unref0 (menu_box);
	_g_object_unref0 (show_completed_box);
	_g_object_unref0 (show_completed_item_button);
	_g_object_unref0 (labels_filter);
	_g_object_unref0 (priority_items);
	_g_object_unref0 (board_toggle);
	_g_object_unref0 (list_toggle);
	block64_data_unref (_data64_);
	_data64_ = NULL;
	return result;
}

void
views_project_prepare_new_section (ViewsProject* self)
{
	DialogsSection* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsSection* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_section_new_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp3_);
	_g_object_unref0 (dialog);
}

static void
views_project_clear_multi_select (ViewsProject* self)
{
	ServicesEventBus* _tmp0_;
	ServicesEventBus* _tmp1_;
	ServicesEventBus* _tmp2_;
	ServicesEventBus* _tmp3_;
	ServicesEventBus* _tmp4_;
	ServicesEventBus* _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = services_event_bus_get_default ();
	_tmp1_ = _tmp0_;
	_tmp1_->multi_select_enabled = FALSE;
	_g_object_unref0 (_tmp1_);
	_tmp2_ = services_event_bus_get_default ();
	_tmp3_ = _tmp2_;
	g_signal_emit_by_name (_tmp3_, "show-multi-select", FALSE);
	_g_object_unref0 (_tmp3_);
	_tmp4_ = services_event_bus_get_default ();
	_tmp5_ = _tmp4_;
	g_signal_emit_by_name (_tmp5_, "unselect-all");
	_g_object_unref0 (_tmp5_);
}

void
views_project_clean_up (ViewsProject* self)
{
	GeeHashMap* _tmp15_;
	g_return_if_fail (self != NULL);
	{
		GeeIterator* _entry_it = NULL;
		GeeHashMap* _tmp0_;
		GeeSet* _tmp1_;
		GeeSet* _tmp2_;
		GeeSet* _tmp3_;
		GeeIterator* _tmp4_;
		GeeIterator* _tmp5_;
		_tmp0_ = self->priv->signal_map;
		_tmp1_ = gee_abstract_map_get_entries ((GeeAbstractMap*) _tmp0_);
		_tmp2_ = _tmp1_;
		_tmp3_ = _tmp2_;
		_tmp4_ = gee_iterable_iterator ((GeeIterable*) _tmp3_);
		_tmp5_ = _tmp4_;
		_g_object_unref0 (_tmp3_);
		_entry_it = _tmp5_;
		while (TRUE) {
			GeeIterator* _tmp6_;
			GeeMapEntry* entry = NULL;
			GeeIterator* _tmp7_;
			gpointer _tmp8_;
			GeeMapEntry* _tmp9_;
			gconstpointer _tmp10_;
			gconstpointer _tmp11_;
			GeeMapEntry* _tmp12_;
			gconstpointer _tmp13_;
			gconstpointer _tmp14_;
			_tmp6_ = _entry_it;
			if (!gee_iterator_next (_tmp6_)) {
				break;
			}
			_tmp7_ = _entry_it;
			_tmp8_ = gee_iterator_get (_tmp7_);
			entry = (GeeMapEntry*) _tmp8_;
			_tmp9_ = entry;
			_tmp10_ = gee_map_entry_get_value (_tmp9_);
			_tmp11_ = _tmp10_;
			_tmp12_ = entry;
			_tmp13_ = gee_map_entry_get_key (_tmp12_);
			_tmp14_ = _tmp13_;
			g_signal_handler_disconnect ((GObject*) _tmp11_, (gulong) ((guintptr) _tmp14_));
			_g_object_unref0 (entry);
		}
		_g_object_unref0 (_entry_it);
	}
	_tmp15_ = self->priv->signal_map;
	gee_abstract_map_clear ((GeeAbstractMap*) _tmp15_);
	views_project_destroy_current_view (self);
}

static void
views_project_real_dispose (GObject* base)
{
	ViewsProject * self;
	self = (ViewsProject*) base;
	views_project_clean_up (self);
	G_OBJECT_CLASS (views_project_parent_class)->dispose ((GObject*) G_TYPE_CHECK_INSTANCE_CAST (self, adw_bin_get_type (), AdwBin));
}

ObjectsProject*
views_project_get_project (ViewsProject* self)
{
	ObjectsProject* result;
	ObjectsProject* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_project;
	result = _tmp0_;
	return result;
}

static void
views_project_set_project (ViewsProject* self,
                           ObjectsProject* value)
{
	ObjectsProject* old_value;
	g_return_if_fail (self != NULL);
	old_value = views_project_get_project (self);
	if (old_value != value) {
		ObjectsProject* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_project);
		self->priv->_project = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, views_project_properties[VIEWS_PROJECT_PROJECT_PROPERTY]);
	}
}

ProjectViewStyle
views_project_get_view_style (ViewsProject* self)
{
	ProjectViewStyle result;
	ObjectsProject* _tmp0_;
	ProjectViewStyle _tmp1_;
	ProjectViewStyle _tmp2_;
	g_return_val_if_fail (self != NULL, 0);
	_tmp0_ = self->priv->_project;
	_tmp1_ = objects_project_get_view_style (_tmp0_);
	_tmp2_ = _tmp1_;
	result = _tmp2_;
	return result;
}

static Block65Data*
block65_data_ref (Block65Data* _data65_)
{
	g_atomic_int_inc (&_data65_->_ref_count_);
	return _data65_;
}

static void
block65_data_unref (void * _userdata_)
{
	Block65Data* _data65_;
	_data65_ = (Block65Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data65_->_ref_count_)) {
		ViewsProject* self;
		self = _data65_->self;
		_g_object_unref0 (_data65_->calendar_sync_revealer);
		_g_object_unref0 (self);
		g_slice_free (Block65Data, _data65_);
	}
}

static void
_views_project____lambda777_ (ViewsProject* self)
{
	views_project_prepare_new_item (self, "");
}

static void
__views_project____lambda777__widgets_magic_button_clicked (WidgetsMagicButton* _sender,
                                                            gpointer self)
{
	_views_project____lambda777_ ((ViewsProject*) self);
}

static void
_views_project_on_right_click_gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                                         gint n_press,
                                                         gdouble x,
                                                         gdouble y,
                                                         gpointer self)
{
	views_project_on_right_click ((ViewsProject*) self, n_press, x, y);
}

static void
_views_project___lambda778_ (Block65Data* _data65_)
{
	ViewsProject* self;
	const gchar* _tmp0_ = NULL;
	ObjectsProject* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	LayoutsHeaderBar* _tmp7_;
	GtkRevealer* _tmp8_;
	ObjectsProject* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	WidgetsContextMenuMenuItem* _tmp12_;
	ObjectsProject* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	self = _data65_->self;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_is_inbox_project (_tmp1_);
	_tmp3_ = _tmp2_;
	if (_tmp3_) {
		_tmp0_ = _ ("Inbox");
	} else {
		ObjectsProject* _tmp4_;
		const gchar* _tmp5_;
		const gchar* _tmp6_;
		_tmp4_ = self->priv->_project;
		_tmp5_ = objects_base_object_get_name ((ObjectsBaseObject*) _tmp4_);
		_tmp6_ = _tmp5_;
		_tmp0_ = _tmp6_;
	}
	_tmp7_ = self->priv->headerbar;
	layouts_header_bar_set_title (_tmp7_, _tmp0_);
	_tmp8_ = _data65_->calendar_sync_revealer;
	_tmp9_ = self->priv->_project;
	_tmp10_ = objects_project_get_calendar_source_uid (_tmp9_);
	_tmp11_ = _tmp10_;
	gtk_revealer_set_reveal_child (_tmp8_, g_strcmp0 (_tmp11_, "") != 0);
	_tmp12_ = self->priv->calendar_sync_item;
	_tmp13_ = self->priv->_project;
	_tmp14_ = objects_project_get_calendar_source_uid (_tmp13_);
	_tmp15_ = _tmp14_;
	gtk_widget_set_visible ((GtkWidget*) _tmp12_, g_strcmp0 (_tmp15_, "") == 0);
}

static void
__views_project___lambda778__objects_base_object_updated (ObjectsBaseObject* _sender,
                                                          const gchar* update_id,
                                                          gpointer self)
{
	_views_project___lambda778_ (self);
}

static void
_views_project___lambda779_ (ViewsProject* self)
{
	ObjectsProject* _tmp0_;
	_tmp0_ = self->priv->_project;
	objects_project_set_show_multi_select (_tmp0_, FALSE);
}

static void
__views_project___lambda779__widgets_multi_select_toolbar_closed (WidgetsMultiSelectToolbar* _sender,
                                                                  gpointer self)
{
	_views_project___lambda779_ ((ViewsProject*) self);
}

static void
_views_project___lambda780_ (ViewsProject* self)
{
	AdwToolbarView* _tmp0_;
	ObjectsProject* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	ObjectsProject* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	_tmp0_ = self->priv->toolbar_view;
	_tmp1_ = self->priv->_project;
	_tmp2_ = objects_project_get_show_multi_select (_tmp1_);
	_tmp3_ = _tmp2_;
	adw_toolbar_view_set_reveal_bottom_bars (_tmp0_, _tmp3_);
	_tmp4_ = self->priv->_project;
	_tmp5_ = objects_project_get_show_multi_select (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_) {
		ServicesEventBus* _tmp7_;
		ServicesEventBus* _tmp8_;
		ServicesEventBus* _tmp9_;
		ServicesEventBus* _tmp10_;
		ServicesEventBus* _tmp11_;
		ServicesEventBus* _tmp12_;
		ServicesEventBus* _tmp13_;
		ServicesEventBus* _tmp14_;
		_tmp7_ = services_event_bus_get_default ();
		_tmp8_ = _tmp7_;
		_tmp8_->multi_select_enabled = TRUE;
		_g_object_unref0 (_tmp8_);
		_tmp9_ = services_event_bus_get_default ();
		_tmp10_ = _tmp9_;
		g_signal_emit_by_name (_tmp10_, "show-multi-select", TRUE);
		_g_object_unref0 (_tmp10_);
		_tmp11_ = services_event_bus_get_default ();
		_tmp12_ = _tmp11_;
		g_signal_emit_by_name (_tmp12_, "magic-button-visible", FALSE);
		_g_object_unref0 (_tmp12_);
		_tmp13_ = services_event_bus_get_default ();
		_tmp14_ = _tmp13_;
		g_signal_emit_by_name (_tmp14_, "disconnect-typing-accel");
		_g_object_unref0 (_tmp14_);
	} else {
		ServicesEventBus* _tmp15_;
		ServicesEventBus* _tmp16_;
		ServicesEventBus* _tmp17_;
		ServicesEventBus* _tmp18_;
		ServicesEventBus* _tmp19_;
		ServicesEventBus* _tmp20_;
		ServicesEventBus* _tmp21_;
		ServicesEventBus* _tmp22_;
		_tmp15_ = services_event_bus_get_default ();
		_tmp16_ = _tmp15_;
		_tmp16_->multi_select_enabled = FALSE;
		_g_object_unref0 (_tmp16_);
		_tmp17_ = services_event_bus_get_default ();
		_tmp18_ = _tmp17_;
		g_signal_emit_by_name (_tmp18_, "show-multi-select", FALSE);
		_g_object_unref0 (_tmp18_);
		_tmp19_ = services_event_bus_get_default ();
		_tmp20_ = _tmp19_;
		g_signal_emit_by_name (_tmp20_, "magic-button-visible", TRUE);
		_g_object_unref0 (_tmp20_);
		_tmp21_ = services_event_bus_get_default ();
		_tmp22_ = _tmp21_;
		g_signal_emit_by_name (_tmp22_, "connect-typing-accel");
		_g_object_unref0 (_tmp22_);
	}
}

static void
__views_project___lambda780__objects_project_show_multi_select_change (ObjectsProject* _sender,
                                                                       gpointer self)
{
	_views_project___lambda780_ ((ViewsProject*) self);
}

static void
_views_project___lambda781_ (ViewsProject* self)
{
	views_project_check_default_filters (self);
}

static void
__views_project___lambda781__objects_base_object_filter_added (ObjectsBaseObject* _sender,
                                                               ObjectsFiltersFilterItem* filters,
                                                               gpointer self)
{
	_views_project___lambda781_ ((ViewsProject*) self);
}

static void
_views_project___lambda782_ (ViewsProject* self)
{
	views_project_check_default_filters (self);
}

static void
__views_project___lambda782__objects_base_object_filter_updated (ObjectsBaseObject* _sender,
                                                                 ObjectsFiltersFilterItem* filters,
                                                                 gpointer self)
{
	_views_project___lambda782_ ((ViewsProject*) self);
}

static void
_views_project___lambda783_ (ViewsProject* self,
                             ObjectsFiltersFilterItem* filter)
{
	WidgetsContextMenuMenuCheckPicker* _tmp0_;
	FilterItemType _tmp1_;
	FilterItemType _tmp2_;
	g_return_if_fail (filter != NULL);
	_tmp0_ = self->priv->priority_filter;
	widgets_context_menu_menu_check_picker_unchecked (_tmp0_, filter);
	_tmp1_ = objects_filters_filter_item_get_filter_type (filter);
	_tmp2_ = _tmp1_;
	if (_tmp2_ == FILTER_ITEM_TYPE_DUE_DATE) {
		WidgetsContextMenuMenuPicker* _tmp3_;
		_tmp3_ = self->priv->due_date_item;
		widgets_context_menu_menu_picker_set_selected (_tmp3_, "0");
	}
	views_project_check_default_filters (self);
}

static void
__views_project___lambda783__objects_base_object_filter_removed (ObjectsBaseObject* _sender,
                                                                 ObjectsFiltersFilterItem* filters,
                                                                 gpointer self)
{
	_views_project___lambda783_ ((ViewsProject*) self, filters);
}

static void
_views_project___lambda784_ (ViewsProject* self)
{
	WidgetsContextMenuMenuItem* _tmp0_;
	ProjectViewStyle _tmp1_;
	ProjectViewStyle _tmp2_;
	views_project_update_project_view (self);
	_tmp0_ = self->priv->expand_all_item;
	_tmp1_ = views_project_get_view_style (self);
	_tmp2_ = _tmp1_;
	gtk_widget_set_visible ((GtkWidget*) _tmp0_, _tmp2_ == PROJECT_VIEW_STYLE_LIST);
}

static void
__views_project___lambda784__objects_project_view_style_changed (ObjectsProject* _sender,
                                                                 gpointer self)
{
	_views_project___lambda784_ ((ViewsProject*) self);
}

static void
_views_project___lambda785_ (ViewsProject* self,
                             gboolean visible)
{
	LayoutsHeaderBar* _tmp0_;
	_tmp0_ = self->priv->headerbar;
	layouts_header_bar_update_title_box_visibility (_tmp0_, visible);
}

static void
__views_project___lambda785__objects_base_object_handle_scroll_visibility_change (ObjectsBaseObject* _sender,
                                                                                  gboolean visible,
                                                                                  gpointer self)
{
	_views_project___lambda785_ ((ViewsProject*) self, visible);
}

static void
_views_project___lambda786_ (ViewsProject* self)
{
	DialogsCalendarSync* dialog = NULL;
	ObjectsProject* _tmp0_;
	DialogsCalendarSync* _tmp1_;
	DialogsCalendarSync* _tmp2_;
	Planify* _tmp3_;
	MainWindow* _tmp4_;
	_tmp0_ = self->priv->_project;
	_tmp1_ = dialogs_calendar_sync_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = dialog;
	_tmp3_ = planify__instance;
	_tmp4_ = _tmp3_->main_window;
	adw_dialog_present ((AdwDialog*) _tmp2_, (GtkWidget*) _tmp4_);
	_g_object_unref0 (dialog);
}

static void
__views_project___lambda786__gtk_button_clicked (GtkButton* _sender,
                                                 gpointer self)
{
	_views_project___lambda786_ ((ViewsProject*) self);
}

static GObject *
views_project_constructor (GType type,
                           guint n_construct_properties,
                           GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	ViewsProject * self;
	Block65Data* _data65_;
	GtkButton* calendar_sync_button = NULL;
	gchar* _tmp0_;
	GtkButton* _tmp1_ = NULL;
	AdwBin* calendar_sync_indicator = NULL;
	gchar* _tmp2_;
	gchar** _tmp3_;
	AdwBin* _tmp4_ = NULL;
	GtkOverlay* calendar_sync_overlay = NULL;
	GtkButton* _tmp5_;
	GtkWidget* _tmp6_;
	GtkOverlay* _tmp7_ = NULL;
	GtkOverlay* _tmp8_;
	AdwBin* _tmp9_;
	GtkOverlay* _tmp10_;
	GtkWidget* _tmp11_;
	ObjectsProject* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	GtkRevealer* _tmp15_ = NULL;
	GtkMenuButton* menu_button = NULL;
	GtkPopover* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar** _tmp19_;
	gchar* _tmp20_;
	GtkMenuButton* _tmp21_ = NULL;
	GtkGrid* indicator_grid = NULL;
	gchar* _tmp22_;
	gchar** _tmp23_;
	GtkGrid* _tmp24_ = NULL;
	GtkGrid* _tmp25_;
	GtkWidget* _tmp26_;
	GtkRevealer* _tmp27_ = NULL;
	GtkMenuButton* view_setting_button = NULL;
	GtkPopover* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gchar** _tmp31_;
	gchar* _tmp32_;
	GtkMenuButton* _tmp33_ = NULL;
	GtkOverlay* view_setting_overlay = NULL;
	GtkOverlay* _tmp34_;
	GtkOverlay* _tmp35_;
	GtkMenuButton* _tmp36_;
	GtkOverlay* _tmp37_;
	GtkRevealer* _tmp38_;
	const gchar* _tmp39_ = NULL;
	ObjectsProject* _tmp40_;
	gboolean _tmp41_;
	gboolean _tmp42_;
	gchar* _tmp46_;
	LayoutsHeaderBar* _tmp47_ = NULL;
	LayoutsHeaderBar* _tmp48_;
	GtkMenuButton* _tmp49_;
	LayoutsHeaderBar* _tmp50_;
	GtkOverlay* _tmp51_;
	LayoutsHeaderBar* _tmp52_;
	GtkRevealer* _tmp53_;
	GtkRevealer* _tmp54_ = NULL;
	AdwSpinner* _tmp55_ = NULL;
	AdwViewStack* _tmp56_ = NULL;
	AdwViewStack* _tmp57_;
	GtkRevealer* _tmp58_;
	AdwViewStack* _tmp59_;
	AdwSpinner* _tmp60_;
	AdwViewStack* _tmp61_;
	GtkRevealer* _tmp62_;
	WidgetsMagicButton* magic_button = NULL;
	WidgetsMagicButton* _tmp63_;
	GtkOverlay* content_overlay = NULL;
	GtkOverlay* _tmp64_ = NULL;
	GtkOverlay* _tmp65_;
	AdwViewStack* _tmp66_;
	ObjectsProject* _tmp67_;
	gboolean _tmp68_;
	gboolean _tmp69_;
	ObjectsProject* _tmp76_;
	WidgetsMultiSelectToolbar* _tmp77_;
	AdwToolbarView* _tmp78_ = NULL;
	AdwToolbarView* _tmp79_;
	LayoutsHeaderBar* _tmp80_;
	AdwToolbarView* _tmp81_;
	WidgetsMultiSelectToolbar* _tmp82_;
	AdwToolbarView* _tmp83_;
	GtkOverlay* _tmp84_;
	AdwToolbarView* _tmp85_;
	GtkGestureClick* right_click = NULL;
	GtkGestureClick* _tmp86_ = NULL;
	GtkGestureClick* _tmp87_;
	GtkGestureClick* _tmp88_;
	GtkEventController* _tmp89_;
	GeeHashMap* _tmp90_;
	ObjectsProject* _tmp91_;
	gulong _tmp92_;
	ObjectsProject* _tmp93_;
	GeeHashMap* _tmp94_;
	WidgetsMultiSelectToolbar* _tmp95_;
	gulong _tmp96_;
	WidgetsMultiSelectToolbar* _tmp97_;
	GeeHashMap* _tmp98_;
	ObjectsProject* _tmp99_;
	gulong _tmp100_;
	ObjectsProject* _tmp101_;
	GeeHashMap* _tmp102_;
	ObjectsProject* _tmp103_;
	gulong _tmp104_;
	ObjectsProject* _tmp105_;
	GeeHashMap* _tmp106_;
	ObjectsProject* _tmp107_;
	gulong _tmp108_;
	ObjectsProject* _tmp109_;
	GeeHashMap* _tmp110_;
	ObjectsProject* _tmp111_;
	gulong _tmp112_;
	ObjectsProject* _tmp113_;
	GeeHashMap* _tmp114_;
	ObjectsProject* _tmp115_;
	gulong _tmp116_;
	ObjectsProject* _tmp117_;
	GeeHashMap* _tmp118_;
	ObjectsProject* _tmp119_;
	gulong _tmp120_;
	ObjectsProject* _tmp121_;
	GtkButton* _tmp122_;
	parent_class = G_OBJECT_CLASS (views_project_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, VIEWS_TYPE_PROJECT, ViewsProject);
	_data65_ = g_slice_new0 (Block65Data);
	_data65_->_ref_count_ = 1;
	_data65_->self = g_object_ref (self);
	_tmp0_ = g_strdup (_ ("Calendar Sync Active"));
	_tmp1_ = (GtkButton*) gtk_button_new_from_icon_name ("month-symbolic");
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp1_, _tmp0_);
	_g_free0 (_tmp0_);
	g_object_ref_sink (_tmp1_);
	calendar_sync_button = _tmp1_;
	_tmp2_ = g_strdup ("indicator");
	_tmp3_ = g_new0 (gchar*, 1 + 1);
	_tmp3_[0] = _tmp2_;
	_tmp4_ = (AdwBin*) adw_bin_new ();
	g_object_set ((GtkWidget*) _tmp4_, "width-request", 9, NULL);
	g_object_set ((GtkWidget*) _tmp4_, "height-request", 9, NULL);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp4_, 6);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp4_, 6);
	gtk_widget_set_halign ((GtkWidget*) _tmp4_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp4_, GTK_ALIGN_START);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp4_, _tmp3_);
	_tmp3_ = (_vala_array_free (_tmp3_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp4_);
	calendar_sync_indicator = _tmp4_;
	_tmp5_ = calendar_sync_button;
	_tmp6_ = _g_object_ref0 ((GtkWidget*) _tmp5_);
	_tmp7_ = (GtkOverlay*) gtk_overlay_new ();
	gtk_overlay_set_child (_tmp7_, _tmp6_);
	_g_object_unref0 (_tmp6_);
	g_object_ref_sink (_tmp7_);
	calendar_sync_overlay = _tmp7_;
	_tmp8_ = calendar_sync_overlay;
	_tmp9_ = calendar_sync_indicator;
	gtk_overlay_add_overlay (_tmp8_, (GtkWidget*) _tmp9_);
	_tmp10_ = calendar_sync_overlay;
	_tmp11_ = _g_object_ref0 ((GtkWidget*) _tmp10_);
	_tmp12_ = self->priv->_project;
	_tmp13_ = objects_project_get_calendar_source_uid (_tmp12_);
	_tmp14_ = _tmp13_;
	_tmp15_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp15_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp15_, _tmp11_);
	_g_object_unref0 (_tmp11_);
	gtk_revealer_set_reveal_child (_tmp15_, g_strcmp0 (_tmp14_, "") != 0);
	g_object_ref_sink (_tmp15_);
	_data65_->calendar_sync_revealer = _tmp15_;
	_tmp16_ = views_project_build_context_menu_popover (self);
	_tmp17_ = g_strdup ("view-more-symbolic");
	_tmp18_ = g_strdup ("flat");
	_tmp19_ = g_new0 (gchar*, 1 + 1);
	_tmp19_[0] = _tmp18_;
	_tmp20_ = g_strdup (_ ("Project Actions"));
	_tmp21_ = (GtkMenuButton*) gtk_menu_button_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp21_, GTK_ALIGN_CENTER);
	gtk_widget_set_halign ((GtkWidget*) _tmp21_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp21_, 12);
	gtk_menu_button_set_popover (_tmp21_, _tmp16_);
	_g_object_unref0 (_tmp16_);
	gtk_menu_button_set_icon_name (_tmp21_, _tmp17_);
	_g_free0 (_tmp17_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp21_, _tmp19_);
	_tmp19_ = (_vala_array_free (_tmp19_, 1, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp21_, _tmp20_);
	_g_free0 (_tmp20_);
	g_object_ref_sink (_tmp21_);
	menu_button = _tmp21_;
	_tmp22_ = g_strdup ("indicator");
	_tmp23_ = g_new0 (gchar*, 1 + 1);
	_tmp23_[0] = _tmp22_;
	_tmp24_ = (GtkGrid*) gtk_grid_new ();
	g_object_set ((GtkWidget*) _tmp24_, "width-request", 9, NULL);
	g_object_set ((GtkWidget*) _tmp24_, "height-request", 9, NULL);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp24_, 6);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp24_, 6);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp24_, _tmp23_);
	_tmp23_ = (_vala_array_free (_tmp23_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp24_);
	indicator_grid = _tmp24_;
	_tmp25_ = indicator_grid;
	_tmp26_ = _g_object_ref0 ((GtkWidget*) _tmp25_);
	_tmp27_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp27_, GTK_REVEALER_TRANSITION_TYPE_CROSSFADE);
	gtk_revealer_set_child (_tmp27_, _tmp26_);
	_g_object_unref0 (_tmp26_);
	gtk_widget_set_halign ((GtkWidget*) _tmp27_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp27_, GTK_ALIGN_START);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp27_, FALSE);
	g_object_ref_sink (_tmp27_);
	_g_object_unref0 (self->priv->indicator_revealer);
	self->priv->indicator_revealer = _tmp27_;
	_tmp28_ = views_project_build_view_setting_popover (self);
	_tmp29_ = g_strdup ("view-sort-descending-rtl-symbolic");
	_tmp30_ = g_strdup ("flat");
	_tmp31_ = g_new0 (gchar*, 1 + 1);
	_tmp31_[0] = _tmp30_;
	_tmp32_ = g_strdup (_ ("View Option Menu"));
	_tmp33_ = (GtkMenuButton*) gtk_menu_button_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp33_, GTK_ALIGN_CENTER);
	gtk_widget_set_halign ((GtkWidget*) _tmp33_, GTK_ALIGN_CENTER);
	gtk_menu_button_set_popover (_tmp33_, _tmp28_);
	_g_object_unref0 (_tmp28_);
	gtk_menu_button_set_icon_name (_tmp33_, _tmp29_);
	_g_free0 (_tmp29_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp33_, _tmp31_);
	_tmp31_ = (_vala_array_free (_tmp31_, 1, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp33_, _tmp32_);
	_g_free0 (_tmp32_);
	g_object_ref_sink (_tmp33_);
	view_setting_button = _tmp33_;
	_tmp34_ = (GtkOverlay*) gtk_overlay_new ();
	g_object_ref_sink (_tmp34_);
	view_setting_overlay = _tmp34_;
	_tmp35_ = view_setting_overlay;
	_tmp36_ = view_setting_button;
	gtk_overlay_set_child (_tmp35_, (GtkWidget*) _tmp36_);
	_tmp37_ = view_setting_overlay;
	_tmp38_ = self->priv->indicator_revealer;
	gtk_overlay_add_overlay (_tmp37_, (GtkWidget*) _tmp38_);
	_tmp40_ = self->priv->_project;
	_tmp41_ = objects_project_get_is_inbox_project (_tmp40_);
	_tmp42_ = _tmp41_;
	if (_tmp42_) {
		_tmp39_ = _ ("Inbox");
	} else {
		ObjectsProject* _tmp43_;
		const gchar* _tmp44_;
		const gchar* _tmp45_;
		_tmp43_ = self->priv->_project;
		_tmp44_ = objects_base_object_get_name ((ObjectsBaseObject*) _tmp43_);
		_tmp45_ = _tmp44_;
		_tmp39_ = _tmp45_;
	}
	_tmp46_ = g_strdup (_tmp39_);
	_tmp47_ = layouts_header_bar_new ();
	layouts_header_bar_set_title (_tmp47_, _tmp46_);
	_g_free0 (_tmp46_);
	g_object_ref_sink (_tmp47_);
	_g_object_unref0 (self->priv->headerbar);
	self->priv->headerbar = _tmp47_;
	_tmp48_ = self->priv->headerbar;
	_tmp49_ = menu_button;
	layouts_header_bar_pack_end (_tmp48_, (GtkWidget*) _tmp49_);
	_tmp50_ = self->priv->headerbar;
	_tmp51_ = view_setting_overlay;
	layouts_header_bar_pack_end (_tmp50_, (GtkWidget*) _tmp51_);
	_tmp52_ = self->priv->headerbar;
	_tmp53_ = _data65_->calendar_sync_revealer;
	layouts_header_bar_pack_end (_tmp52_, (GtkWidget*) _tmp53_);
	_tmp54_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_widget_set_hexpand ((GtkWidget*) _tmp54_, TRUE);
	gtk_widget_set_vexpand ((GtkWidget*) _tmp54_, TRUE);
	gtk_revealer_set_transition_type (_tmp54_, GTK_REVEALER_TRANSITION_TYPE_CROSSFADE);
	g_object_ref_sink (_tmp54_);
	_g_object_unref0 (self->priv->project_view_revealer);
	self->priv->project_view_revealer = _tmp54_;
	_tmp55_ = (AdwSpinner*) adw_spinner_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp55_, GTK_ALIGN_CENTER);
	gtk_widget_set_halign ((GtkWidget*) _tmp55_, GTK_ALIGN_CENTER);
	g_object_set ((GtkWidget*) _tmp55_, "height-request", 64, NULL);
	g_object_set ((GtkWidget*) _tmp55_, "width-request", 64, NULL);
	g_object_ref_sink (_tmp55_);
	_g_object_unref0 (self->priv->loading_spinner);
	self->priv->loading_spinner = _tmp55_;
	_tmp56_ = (AdwViewStack*) adw_view_stack_new ();
	gtk_widget_set_vexpand ((GtkWidget*) _tmp56_, TRUE);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp56_, TRUE);
	g_object_ref_sink (_tmp56_);
	_g_object_unref0 (self->priv->project_stack);
	self->priv->project_stack = _tmp56_;
	_tmp57_ = self->priv->project_stack;
	_tmp58_ = self->priv->project_view_revealer;
	adw_view_stack_add (_tmp57_, (GtkWidget*) _tmp58_);
	_tmp59_ = self->priv->project_stack;
	_tmp60_ = self->priv->loading_spinner;
	adw_view_stack_add (_tmp59_, (GtkWidget*) _tmp60_);
	_tmp61_ = self->priv->project_stack;
	_tmp62_ = self->priv->project_view_revealer;
	adw_view_stack_set_visible_child (_tmp61_, (GtkWidget*) _tmp62_);
	_tmp63_ = widgets_magic_button_new ();
	g_object_ref_sink (_tmp63_);
	magic_button = _tmp63_;
	_tmp64_ = (GtkOverlay*) gtk_overlay_new ();
	gtk_widget_set_hexpand ((GtkWidget*) _tmp64_, TRUE);
	gtk_widget_set_vexpand ((GtkWidget*) _tmp64_, TRUE);
	g_object_ref_sink (_tmp64_);
	content_overlay = _tmp64_;
	_tmp65_ = content_overlay;
	_tmp66_ = self->priv->project_stack;
	gtk_overlay_set_child (_tmp65_, (GtkWidget*) _tmp66_);
	_tmp67_ = self->priv->_project;
	_tmp68_ = objects_project_get_is_deck (_tmp67_);
	_tmp69_ = _tmp68_;
	if (!_tmp69_) {
		GtkOverlay* _tmp70_;
		WidgetsMagicButton* _tmp71_;
		GeeHashMap* _tmp72_;
		WidgetsMagicButton* _tmp73_;
		gulong _tmp74_;
		WidgetsMagicButton* _tmp75_;
		_tmp70_ = content_overlay;
		_tmp71_ = magic_button;
		gtk_overlay_add_overlay (_tmp70_, (GtkWidget*) _tmp71_);
		_tmp72_ = self->priv->signal_map;
		_tmp73_ = magic_button;
		_tmp74_ = g_signal_connect_object (_tmp73_, "clicked", (GCallback) __views_project____lambda777__widgets_magic_button_clicked, self, 0);
		_tmp75_ = magic_button;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp72_, (gpointer) ((guintptr) _tmp74_), (GObject*) _tmp75_);
	}
	_tmp76_ = self->priv->_project;
	_tmp77_ = widgets_multi_select_toolbar_new (_tmp76_);
	g_object_ref_sink (_tmp77_);
	_g_object_unref0 (self->priv->multiselect_toolbar);
	self->priv->multiselect_toolbar = _tmp77_;
	_tmp78_ = (AdwToolbarView*) adw_toolbar_view_new ();
	adw_toolbar_view_set_bottom_bar_style (_tmp78_, ADW_TOOLBAR_RAISED_BORDER);
	adw_toolbar_view_set_reveal_bottom_bars (_tmp78_, FALSE);
	g_object_ref_sink (_tmp78_);
	_g_object_unref0 (self->priv->toolbar_view);
	self->priv->toolbar_view = _tmp78_;
	_tmp79_ = self->priv->toolbar_view;
	_tmp80_ = self->priv->headerbar;
	adw_toolbar_view_add_top_bar (_tmp79_, (GtkWidget*) _tmp80_);
	_tmp81_ = self->priv->toolbar_view;
	_tmp82_ = self->priv->multiselect_toolbar;
	adw_toolbar_view_add_bottom_bar (_tmp81_, (GtkWidget*) _tmp82_);
	_tmp83_ = self->priv->toolbar_view;
	_tmp84_ = content_overlay;
	adw_toolbar_view_set_content (_tmp83_, (GtkWidget*) _tmp84_);
	_tmp85_ = self->priv->toolbar_view;
	adw_bin_set_child ((AdwBin*) self, (GtkWidget*) _tmp85_);
	views_project_update_project_view (self);
	views_project_check_default_filters (self);
	views_project_create_context_menu (self);
	_tmp86_ = (GtkGestureClick*) gtk_gesture_click_new ();
	gtk_gesture_single_set_button ((GtkGestureSingle*) _tmp86_, (guint) GDK_BUTTON_SECONDARY);
	right_click = _tmp86_;
	_tmp87_ = right_click;
	g_signal_connect_object (_tmp87_, "pressed", (GCallback) _views_project_on_right_click_gtk_gesture_click_pressed, self, 0);
	_tmp88_ = right_click;
	_tmp89_ = _g_object_ref0 ((GtkEventController*) _tmp88_);
	gtk_widget_add_controller ((GtkWidget*) self, _tmp89_);
	_tmp90_ = self->priv->signal_map;
	_tmp91_ = self->priv->_project;
	_tmp92_ = g_signal_connect_data ((ObjectsBaseObject*) _tmp91_, "updated", (GCallback) __views_project___lambda778__objects_base_object_updated, block65_data_ref (_data65_), (GClosureNotify) block65_data_unref, 0);
	_tmp93_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp90_, (gpointer) ((guintptr) _tmp92_), (GObject*) _tmp93_);
	_tmp94_ = self->priv->signal_map;
	_tmp95_ = self->priv->multiselect_toolbar;
	_tmp96_ = g_signal_connect_object (_tmp95_, "closed", (GCallback) __views_project___lambda779__widgets_multi_select_toolbar_closed, self, 0);
	_tmp97_ = self->priv->multiselect_toolbar;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp94_, (gpointer) ((guintptr) _tmp96_), (GObject*) _tmp97_);
	_tmp98_ = self->priv->signal_map;
	_tmp99_ = self->priv->_project;
	_tmp100_ = g_signal_connect_object (_tmp99_, "show-multi-select-change", (GCallback) __views_project___lambda780__objects_project_show_multi_select_change, self, 0);
	_tmp101_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp98_, (gpointer) ((guintptr) _tmp100_), (GObject*) _tmp101_);
	_tmp102_ = self->priv->signal_map;
	_tmp103_ = self->priv->_project;
	_tmp104_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp103_, "filter-added", (GCallback) __views_project___lambda781__objects_base_object_filter_added, self, 0);
	_tmp105_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp102_, (gpointer) ((guintptr) _tmp104_), (GObject*) _tmp105_);
	_tmp106_ = self->priv->signal_map;
	_tmp107_ = self->priv->_project;
	_tmp108_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp107_, "filter-updated", (GCallback) __views_project___lambda782__objects_base_object_filter_updated, self, 0);
	_tmp109_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp106_, (gpointer) ((guintptr) _tmp108_), (GObject*) _tmp109_);
	_tmp110_ = self->priv->signal_map;
	_tmp111_ = self->priv->_project;
	_tmp112_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp111_, "filter-removed", (GCallback) __views_project___lambda783__objects_base_object_filter_removed, self, 0);
	_tmp113_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp110_, (gpointer) ((guintptr) _tmp112_), (GObject*) _tmp113_);
	_tmp114_ = self->priv->signal_map;
	_tmp115_ = self->priv->_project;
	_tmp116_ = g_signal_connect_object (_tmp115_, "view-style-changed", (GCallback) __views_project___lambda784__objects_project_view_style_changed, self, 0);
	_tmp117_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp114_, (gpointer) ((guintptr) _tmp116_), (GObject*) _tmp117_);
	_tmp118_ = self->priv->signal_map;
	_tmp119_ = self->priv->_project;
	_tmp120_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp119_, "handle-scroll-visibility-change", (GCallback) __views_project___lambda785__objects_base_object_handle_scroll_visibility_change, self, 0);
	_tmp121_ = self->priv->_project;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp118_, (gpointer) ((guintptr) _tmp120_), (GObject*) _tmp121_);
	_tmp122_ = calendar_sync_button;
	g_signal_connect_object (_tmp122_, "clicked", (GCallback) __views_project___lambda786__gtk_button_clicked, self, 0);
	_g_object_unref0 (right_click);
	_g_object_unref0 (content_overlay);
	_g_object_unref0 (magic_button);
	_g_object_unref0 (view_setting_overlay);
	_g_object_unref0 (view_setting_button);
	_g_object_unref0 (indicator_grid);
	_g_object_unref0 (menu_button);
	_g_object_unref0 (calendar_sync_overlay);
	_g_object_unref0 (calendar_sync_indicator);
	_g_object_unref0 (calendar_sync_button);
	block65_data_unref (_data65_);
	_data65_ = NULL;
	return obj;
}

static void
views_project_class_init (ViewsProjectClass * klass,
                          gpointer klass_data)
{
	views_project_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ViewsProject_private_offset);
	((GObjectClass *) klass)->dispose = (void (*) (GObject*)) views_project_real_dispose;
	G_OBJECT_CLASS (klass)->get_property = _vala_views_project_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_views_project_set_property;
	G_OBJECT_CLASS (klass)->constructor = views_project_constructor;
	G_OBJECT_CLASS (klass)->finalize = views_project_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), VIEWS_PROJECT_PROJECT_PROPERTY, views_project_properties[VIEWS_PROJECT_PROJECT_PROPERTY] = g_param_spec_object ("project", "project", "project", OBJECTS_TYPE_PROJECT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
	g_object_class_install_property (G_OBJECT_CLASS (klass), VIEWS_PROJECT_VIEW_STYLE_PROPERTY, views_project_properties[VIEWS_PROJECT_VIEW_STYLE_PROPERTY] = g_param_spec_enum ("view-style", "view-style", "view-style", TYPE_PROJECT_VIEW_STYLE, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}

static void
views_project_instance_init (ViewsProject * self,
                             gpointer klass)
{
	GeeHashMap* _tmp0_;
	self->priv = views_project_get_instance_private (self);
	_tmp0_ = gee_hash_map_new (G_TYPE_ULONG, NULL, NULL, G_TYPE_OBJECT, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
	self->priv->signal_map = _tmp0_;
}

static void
views_project_finalize (GObject * obj)
{
	ViewsProject * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, VIEWS_TYPE_PROJECT, ViewsProject);
	g_debug ("Project.vala:56: Destroying - Views.Project\n");
	_g_object_unref0 (self->priv->_project);
	_g_object_unref0 (self->priv->headerbar);
	_g_object_unref0 (self->priv->project_view_revealer);
	_g_object_unref0 (self->priv->loading_spinner);
	_g_object_unref0 (self->priv->project_stack);
	_g_object_unref0 (self->priv->toolbar_view);
	_g_object_unref0 (self->priv->expand_all_item);
	_g_object_unref0 (self->priv->priority_filter);
	_g_object_unref0 (self->priv->due_date_item);
	_g_object_unref0 (self->priv->calendar_sync_item);
	_g_object_unref0 (self->priv->multiselect_toolbar);
	_g_object_unref0 (self->priv->indicator_revealer);
	_g_object_unref0 (self->priv->context_menu);
	_g_object_unref0 (self->priv->signal_map);
	G_OBJECT_CLASS (views_project_parent_class)->finalize (obj);
}

static GType
views_project_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ViewsProjectClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) views_project_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ViewsProject), 0, (GInstanceInitFunc) views_project_instance_init, NULL };
	GType views_project_type_id;
	views_project_type_id = g_type_register_static (adw_bin_get_type (), "ViewsProject", &g_define_type_info, 0);
	ViewsProject_private_offset = g_type_add_instance_private (views_project_type_id, sizeof (ViewsProjectPrivate));
	return views_project_type_id;
}

GType
views_project_get_type (void)
{
	static volatile gsize views_project_type_id__once = 0;
	if (g_once_init_enter (&views_project_type_id__once)) {
		GType views_project_type_id;
		views_project_type_id = views_project_get_type_once ();
		g_once_init_leave (&views_project_type_id__once, views_project_type_id);
	}
	return views_project_type_id__once;
}

static void
_vala_views_project_get_property (GObject * object,
                                  guint property_id,
                                  GValue * value,
                                  GParamSpec * pspec)
{
	ViewsProject * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, VIEWS_TYPE_PROJECT, ViewsProject);
	switch (property_id) {
		case VIEWS_PROJECT_PROJECT_PROPERTY:
		g_value_set_object (value, views_project_get_project (self));
		break;
		case VIEWS_PROJECT_VIEW_STYLE_PROPERTY:
		g_value_set_enum (value, views_project_get_view_style (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_views_project_set_property (GObject * object,
                                  guint property_id,
                                  const GValue * value,
                                  GParamSpec * pspec)
{
	ViewsProject * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, VIEWS_TYPE_PROJECT, ViewsProject);
	switch (property_id) {
		case VIEWS_PROJECT_PROJECT_PROPERTY:
		views_project_set_project (self, g_value_get_object (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_array_destroy (gpointer array,
                     gssize array_length,
                     GDestroyNotify destroy_func)
{
	if ((array != NULL) && (destroy_func != NULL)) {
		gssize 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,
                  gssize array_length,
                  GDestroyNotify destroy_func)
{
	_vala_array_destroy (array, array_length, destroy_func);
	g_free (array);
}

