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

/*
 * Copyright © 2025 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 <gtk/gtk.h>
#include <glib-object.h>
#include <glib.h>
#include <gee.h>
#include <adwaita.h>
#include <stdlib.h>
#include <string.h>
#include "planify.h"
#include <libspelling.h>
#include <float.h>
#include <math.h>
#include <gio/gio.h>
#include <gdk/gdk.h>
#include <glib/gi18n-lib.h>
#include <gtksourceview/gtksource.h>
#include <pango/pango.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 LAYOUTS_TYPE_ITEM_BASE (layouts_item_base_get_type ())
#define LAYOUTS_ITEM_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LAYOUTS_TYPE_ITEM_BASE, LayoutsItemBase))
#define LAYOUTS_ITEM_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LAYOUTS_TYPE_ITEM_BASE, LayoutsItemBaseClass))
#define LAYOUTS_IS_ITEM_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LAYOUTS_TYPE_ITEM_BASE))
#define LAYOUTS_IS_ITEM_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LAYOUTS_TYPE_ITEM_BASE))
#define LAYOUTS_ITEM_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LAYOUTS_TYPE_ITEM_BASE, LayoutsItemBaseClass))

typedef struct _LayoutsItemBase LayoutsItemBase;
typedef struct _LayoutsItemBaseClass LayoutsItemBaseClass;
typedef struct _LayoutsItemBasePrivate LayoutsItemBasePrivate;

#define LAYOUTS_TYPE_ITEM_ROW (layouts_item_row_get_type ())
#define LAYOUTS_ITEM_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRow))
#define LAYOUTS_ITEM_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRowClass))
#define LAYOUTS_IS_ITEM_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LAYOUTS_TYPE_ITEM_ROW))
#define LAYOUTS_IS_ITEM_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LAYOUTS_TYPE_ITEM_ROW))
#define LAYOUTS_ITEM_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRowClass))

typedef struct _LayoutsItemRow LayoutsItemRow;
typedef struct _LayoutsItemRowClass LayoutsItemRowClass;
typedef struct _LayoutsItemRowPrivate LayoutsItemRowPrivate;

#define WIDGETS_TYPE_LABELS_SUMMARY (widgets_labels_summary_get_type ())
#define WIDGETS_LABELS_SUMMARY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WIDGETS_TYPE_LABELS_SUMMARY, WidgetsLabelsSummary))
#define WIDGETS_LABELS_SUMMARY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WIDGETS_TYPE_LABELS_SUMMARY, WidgetsLabelsSummaryClass))
#define WIDGETS_IS_LABELS_SUMMARY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WIDGETS_TYPE_LABELS_SUMMARY))
#define WIDGETS_IS_LABELS_SUMMARY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WIDGETS_TYPE_LABELS_SUMMARY))
#define WIDGETS_LABELS_SUMMARY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WIDGETS_TYPE_LABELS_SUMMARY, WidgetsLabelsSummaryClass))

typedef struct _WidgetsLabelsSummary WidgetsLabelsSummary;
typedef struct _WidgetsLabelsSummaryClass WidgetsLabelsSummaryClass;

#define WIDGETS_TYPE_ATTACHMENTS (widgets_attachments_get_type ())
#define WIDGETS_ATTACHMENTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WIDGETS_TYPE_ATTACHMENTS, WidgetsAttachments))
#define WIDGETS_ATTACHMENTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WIDGETS_TYPE_ATTACHMENTS, WidgetsAttachmentsClass))
#define WIDGETS_IS_ATTACHMENTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WIDGETS_TYPE_ATTACHMENTS))
#define WIDGETS_IS_ATTACHMENTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WIDGETS_TYPE_ATTACHMENTS))
#define WIDGETS_ATTACHMENTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WIDGETS_TYPE_ATTACHMENTS, WidgetsAttachmentsClass))

typedef struct _WidgetsAttachments WidgetsAttachments;
typedef struct _WidgetsAttachmentsClass WidgetsAttachmentsClass;

#define WIDGETS_TYPE_SUB_ITEMS (widgets_sub_items_get_type ())
#define WIDGETS_SUB_ITEMS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WIDGETS_TYPE_SUB_ITEMS, WidgetsSubItems))
#define WIDGETS_SUB_ITEMS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WIDGETS_TYPE_SUB_ITEMS, WidgetsSubItemsClass))
#define WIDGETS_IS_SUB_ITEMS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WIDGETS_TYPE_SUB_ITEMS))
#define WIDGETS_IS_SUB_ITEMS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WIDGETS_TYPE_SUB_ITEMS))
#define WIDGETS_SUB_ITEMS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WIDGETS_TYPE_SUB_ITEMS, WidgetsSubItemsClass))

typedef struct _WidgetsSubItems WidgetsSubItems;
typedef struct _WidgetsSubItemsClass WidgetsSubItemsClass;
enum  {
	LAYOUTS_ITEM_ROW_0_PROPERTY,
	LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY,
	LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY,
	LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY,
	LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY,
	LAYOUTS_ITEM_ROW_EDIT_PROPERTY,
	LAYOUTS_ITEM_ROW_REVEAL_PROPERTY,
	LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY,
	LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY,
	LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY,
	LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY,
	LAYOUTS_ITEM_ROW_NUM_PROPERTIES
};
static GParamSpec* layouts_item_row_properties[LAYOUTS_ITEM_ROW_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
typedef struct _Block29Data Block29Data;
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))

#define DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER (dialogs_project_picker_project_picker_get_type ())
#define DIALOGS_PROJECT_PICKER_PROJECT_PICKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER, DialogsProjectPickerProjectPicker))
#define DIALOGS_PROJECT_PICKER_PROJECT_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER, DialogsProjectPickerProjectPickerClass))
#define DIALOGS_PROJECT_PICKER_IS_PROJECT_PICKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER))
#define DIALOGS_PROJECT_PICKER_IS_PROJECT_PICKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER))
#define DIALOGS_PROJECT_PICKER_PROJECT_PICKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_PROJECT_PICKER_TYPE_PROJECT_PICKER, DialogsProjectPickerProjectPickerClass))

typedef struct _DialogsProjectPickerProjectPicker DialogsProjectPickerProjectPicker;
typedef struct _DialogsProjectPickerProjectPickerClass DialogsProjectPickerProjectPickerClass;

#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_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_QUICK_ADD (dialogs_quick_add_get_type ())
#define DIALOGS_QUICK_ADD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_QUICK_ADD, DialogsQuickAdd))
#define DIALOGS_QUICK_ADD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_QUICK_ADD, DialogsQuickAddClass))
#define DIALOGS_IS_QUICK_ADD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_QUICK_ADD))
#define DIALOGS_IS_QUICK_ADD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_QUICK_ADD))
#define DIALOGS_QUICK_ADD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_QUICK_ADD, DialogsQuickAddClass))

typedef struct _DialogsQuickAdd DialogsQuickAdd;
typedef struct _DialogsQuickAddClass DialogsQuickAddClass;

#define DIALOGS_TYPE_ITEM_CHANGE_HISTORY (dialogs_item_change_history_get_type ())
#define DIALOGS_ITEM_CHANGE_HISTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIALOGS_TYPE_ITEM_CHANGE_HISTORY, DialogsItemChangeHistory))
#define DIALOGS_ITEM_CHANGE_HISTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIALOGS_TYPE_ITEM_CHANGE_HISTORY, DialogsItemChangeHistoryClass))
#define DIALOGS_IS_ITEM_CHANGE_HISTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIALOGS_TYPE_ITEM_CHANGE_HISTORY))
#define DIALOGS_IS_ITEM_CHANGE_HISTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIALOGS_TYPE_ITEM_CHANGE_HISTORY))
#define DIALOGS_ITEM_CHANGE_HISTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIALOGS_TYPE_ITEM_CHANGE_HISTORY, DialogsItemChangeHistoryClass))

typedef struct _DialogsItemChangeHistory DialogsItemChangeHistory;
typedef struct _DialogsItemChangeHistoryClass DialogsItemChangeHistoryClass;
typedef struct _Block30Data Block30Data;
#define _http_response_unref0(var) ((var == NULL) ? NULL : (var = (http_response_unref (var), NULL)))
typedef struct _LayoutsItemRowCompleteItemData LayoutsItemRowCompleteItemData;

#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;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _Block31Data Block31Data;
typedef struct _Block32Data Block32Data;
typedef struct _Block33Data Block33Data;
typedef struct _Block34Data Block34Data;
typedef struct _Block35Data Block35Data;
enum  {
	LAYOUTS_ITEM_ROW_ITEM_ADDED_SIGNAL,
	LAYOUTS_ITEM_ROW_NUM_SIGNALS
};
static guint layouts_item_row_signals[LAYOUTS_ITEM_ROW_NUM_SIGNALS] = {0};

struct _LayoutsItemBase {
	GtkListBoxRow parent_instance;
	LayoutsItemBasePrivate * priv;
	GeeHashMap* signals_map;
};

struct _LayoutsItemBaseClass {
	GtkListBoxRowClass parent_class;
	void (*update_request) (LayoutsItemBase* self);
	void (*hide_destroy) (LayoutsItemBase* self);
	void (*delete_request) (LayoutsItemBase* self, gboolean undo);
	void (*select_row) (LayoutsItemBase* self, gboolean active);
	void (*checked_toggled) (LayoutsItemBase* self, gboolean active, guint* time);
	void (*clean_up) (LayoutsItemBase* self);
};

struct _LayoutsItemRow {
	LayoutsItemBase parent_instance;
	LayoutsItemRowPrivate * priv;
	AdwBin* itemrow_box;
};

struct _LayoutsItemRowClass {
	LayoutsItemBaseClass parent_class;
};

struct _LayoutsItemRowPrivate {
	gboolean _is_project_view;
	gchar* _project_id;
	gchar* _section_id;
	gchar* _parent_id;
	GtkGrid* motion_top_grid;
	GtkRevealer* motion_top_revealer;
	GtkCheckButton* checked_button;
	GtkRevealer* checked_button_revealer;
	WidgetsTextView* content_textview;
	GtkRevealer* hide_loading_revealer;
	GtkLabel* project_name_label;
	GtkRevealer* project_name_label_revealer;
	GtkCheckButton* select_checkbutton;
	GtkRevealer* select_revealer;
	GtkLabel* content_label;
	GtkRevealer* content_label_revealer;
	GtkRevealer* content_entry_revealer;
	WidgetsContextMenuMenuSwitch* use_note_item;
	GtkBox* content_box;
	SpellingTextBufferAdapter* spelling_adapter;
	GtkLabel* due_label;
	GtkBox* due_box;
	GtkRevealer* repeat_revealer;
	GtkRevealer* due_box_revealer;
	GtkRevealer* description_image_revealer;
	GtkRevealer* reminder_revealer;
	GtkLabel* reminder_count;
	GtkLabel* deadline_label;
	GtkBox* deadline_box;
	GtkRevealer* deadline_revealer;
	GtkBox* action_box_right;
	GtkBox* dates_box;
	GtkOverlay* attachments_button_overlay;
	GtkRevealer* detail_revealer;
	GtkRevealer* main_revealer;
	GtkPopover* menu_handle_popover;
	WidgetsLoadingButton* hide_loading_button;
	WidgetsMarkdownEditor* markdown_editor;
	GtkRevealer* markdown_revealer;
	WidgetsItemLabels* item_labels;
	WidgetsScheduleButton* schedule_button;
	WidgetsLabelsSummary* labels_summary;
	WidgetsPriorityButton* priority_button;
	WidgetsLabelPickerLabelButton* label_button;
	WidgetsPinButton* pin_button;
	WidgetsReminderPickerReminderButton* reminder_button;
	WidgetsDeadlineButton* deadline_button;
	WidgetsDeadlineButton* deadline_button_detail;
	GtkMenuButton* attachments_button;
	WidgetsAttachments* attachments;
	GtkLabel* attachments_count;
	GtkBox* action_box;
	GtkLabel* show_subtasks_label;
	GtkRevealer* show_subtasks_revealer;
	GtkRevealer* add_subtasks_button_revealer;
	GtkButton* add_subtasks_button;
	WidgetsSubItems* subitems;
	GtkMenuButton* menu_button;
	GtkButton* hide_subtask_button;
	GtkButton* show_subtasks_button;
	GtkRevealer* hide_subtask_revealer;
	WidgetsContextMenuMenuItem* no_date_item;
	WidgetsContextMenuMenuItem* pinboard_item;
	GtkDropControllerMotion* drop_motion_ctrl;
	GtkDragSource* drag_source;
	GtkDropTarget* drop_target;
	GtkDropTarget* drop_order_target;
	GtkDropTarget* drop_magic_button_target;
	GtkDropTarget* drop_order_magic_button_target;
	GeeHashMap* dnd_handlerses;
	GeeHashMap* markdown_handlerses;
	gboolean _edit;
	gboolean _is_loading;
	guint _destroy_timeout;
	guint _complete_timeout;
	gboolean _recurrency_reset;
	gboolean _drag_enabled;
};

struct _Block29Data {
	int _ref_count_;
	LayoutsItemRow* self;
	GtkGestureClick* handle_gesture_click;
	GtkGestureClick* checked_button_gesture;
	GtkGestureClick* menu_handle_gesture;
	GtkGestureClick* multiselect_gesture;
	GtkGestureClick* add_subitem_gesture;
};

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

struct _PlanifyClass {
	AdwApplicationClass parent_class;
};

struct _Block30Data {
	int _ref_count_;
	LayoutsItemRow* self;
	gboolean old_checked;
};

struct _LayoutsItemRowCompleteItemData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	LayoutsItemRow* self;
	gboolean old_checked;
	gchar* old_completed_at;
	GtkCheckButton* _tmp0_;
	WidgetsSubItems* _tmp1_;
	HttpResponse* response;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	HttpResponse* _tmp4_;
	HttpResponse* _tmp5_;
	gboolean _tmp6_;
	gboolean _tmp7_;
	HttpResponse* _tmp8_;
};

struct _Block31Data {
	int _ref_count_;
	LayoutsItemRow* self;
	LayoutsItemRow* picked_widget;
	ObjectsItem* picked_item;
	ObjectsItem* target_item;
	gchar* old_parent_id;
	gchar* old_project_id;
	gchar* old_section_id;
};

struct _Block32Data {
	int _ref_count_;
	Block31Data * _data31_;
	ServicesCalDAVCalDAVClient* caldav_client;
};

struct _Block33Data {
	int _ref_count_;
	LayoutsItemRow* self;
	LayoutsItemRow* picked_widget;
	gchar* old_project_id;
	gchar* old_section_id;
	gchar* old_parent_id;
};

struct _Block34Data {
	int _ref_count_;
	Block33Data * _data33_;
	ServicesCalDAVCalDAVClient* caldav_client;
};

struct _Block35Data {
	int _ref_count_;
	LayoutsItemRow* self;
	GtkGestureClick* description_gesture_click;
};

static gint LayoutsItemRow_private_offset;
static gpointer layouts_item_row_parent_class = NULL;
VALA_EXTERN Planify* planify__instance;

VALA_EXTERN GType layouts_item_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (LayoutsItemBase, g_object_unref)
VALA_EXTERN GType layouts_item_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (LayoutsItemRow, g_object_unref)
VALA_EXTERN GType widgets_labels_summary_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsLabelsSummary, g_object_unref)
VALA_EXTERN GType widgets_attachments_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsAttachments, g_object_unref)
VALA_EXTERN GType widgets_sub_items_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsSubItems, g_object_unref)
VALA_EXTERN void layouts_item_base_select_row (LayoutsItemBase* self,
                                   gboolean active);
VALA_EXTERN void layouts_item_base_update_request (LayoutsItemBase* self);
VALA_EXTERN void layouts_item_base_hide_destroy (LayoutsItemBase* self);
VALA_EXTERN void layouts_item_base_checked_toggled (LayoutsItemBase* self,
                                        gboolean active,
                                        guint* time);
VALA_EXTERN void layouts_item_base_delete_request (LayoutsItemBase* self,
                                       gboolean undo);
VALA_EXTERN void layouts_item_base_clean_up (LayoutsItemBase* self);
VALA_EXTERN ObjectsItem* layouts_item_base_get_item (LayoutsItemBase* self);
VALA_EXTERN LayoutsItemRow* layouts_item_row_new (ObjectsItem* item,
                                      gboolean is_project_view);
VALA_EXTERN LayoutsItemRow* layouts_item_row_construct (GType object_type,
                                            ObjectsItem* item,
                                            gboolean is_project_view);
static void layouts_item_row_connect_signals (LayoutsItemRow* self);
static Block29Data* block29_data_ref (Block29Data* _data29_);
static void block29_data_unref (void * _userdata_);
static void __lambda152_ (Block29Data* _data29_,
                   gint n_press,
                   gdouble x,
                   gdouble y);
VALA_EXTERN gboolean layouts_item_row_get_edit (LayoutsItemRow* self);
static void ___lambda152__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                              gint n_press,
                                              gdouble x,
                                              gdouble y,
                                              gpointer self);
static void __lambda153_ (Block29Data* _data29_,
                   gint n_press,
                   gdouble x,
                   gdouble y);
static gboolean ___lambda154_ (LayoutsItemRow* self);
static void layouts_item_row_selected_toggled (LayoutsItemRow* self,
                                        gboolean active);
static gboolean ____lambda154__gsource_func (gpointer self);
static void layouts_item_row_show_details (LayoutsItemRow* self);
static void ___lambda153__gtk_gesture_click_released (GtkGestureClick* _sender,
                                               gint n_press,
                                               gdouble x,
                                               gdouble y,
                                               gpointer self);
static void __lambda155_ (LayoutsItemRow* self);
static void ___lambda155__gtk_list_box_row_activate (GtkListBoxRow* _sender,
                                              gpointer self);
static void __lambda156_ (LayoutsItemRow* self);
static void ___lambda156__services_event_bus_mobile_mode_change (ServicesEventBus* _sender,
                                                          gpointer self);
static void __lambda157_ (LayoutsItemRow* self,
                   const gchar* item_id);
VALA_EXTERN void layouts_item_row_set_edit (LayoutsItemRow* self,
                                gboolean value);
static void ___lambda157__services_event_bus_item_selected (ServicesEventBus* _sender,
                                                     const gchar* id,
                                                     gpointer self);
static gboolean __lambda158_ (LayoutsItemRow* self,
                       guint keyval,
                       guint keycode,
                       GdkModifierType state);
static gboolean ___lambda158__gtk_event_controller_key_key_pressed (GtkEventControllerKey* _sender,
                                                             guint keyval,
                                                             guint keycode,
                                                             GdkModifierType state,
                                                             gpointer self);
static void __lambda159_ (LayoutsItemRow* self,
                   guint keyval,
                   guint keycode,
                   GdkModifierType state);
static void layouts_item_row_update_content_description (LayoutsItemRow* self);
static void ___lambda159__gtk_event_controller_key_key_released (GtkEventControllerKey* _sender,
                                                          guint keyval,
                                                          guint keycode,
                                                          GdkModifierType state,
                                                          gpointer self);
static void __lambda160_ (Block29Data* _data29_);
static void ___lambda160__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                              gint n_press,
                                              gdouble x,
                                              gdouble y,
                                              gpointer self);
static void __lambda164_ (Block29Data* _data29_);
static void ___lambda164__gtk_check_button_toggled (GtkCheckButton* _sender,
                                             gpointer self);
static void __lambda165_ (LayoutsItemRow* self);
static gboolean __lambda166_ (LayoutsItemRow* self);
static gboolean ___lambda166__gsource_func (gpointer self);
static void ___lambda165__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda167_ (LayoutsItemRow* self);
static void ___lambda167__widgets_pin_button_changed (WidgetsPinButton* _sender,
                                               gpointer self);
static void _layouts_item_base_update_request_g_settings_changed (GSettings* _sender,
                                                           const gchar* key,
                                                           gpointer self);
static void __lambda168_ (Block29Data* _data29_,
                   gint n_press,
                   gdouble x,
                   gdouble y);
static void layouts_item_row_build_handle_context_menu (LayoutsItemRow* self,
                                                 gdouble x,
                                                 gdouble y);
static void ___lambda168__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                              gint n_press,
                                              gdouble x,
                                              gdouble y,
                                              gpointer self);
static void __lambda184_ (Block29Data* _data29_);
static void ___lambda184__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                              gint n_press,
                                              gdouble x,
                                              gdouble y,
                                              gpointer self);
static void __lambda185_ (LayoutsItemRow* self,
                   gboolean active);
VALA_EXTERN gboolean layouts_item_row_get_drag_enabled (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_build_drag_and_drop (LayoutsItemRow* self);
static void ___lambda185__services_event_bus_show_multi_select (ServicesEventBus* _sender,
                                                         gboolean enabled,
                                                         gpointer self);
static void __lambda186_ (Block29Data* _data29_,
                   gint n_press,
                   gdouble x,
                   gdouble y);
VALA_EXTERN void widgets_sub_items_prepare_new_item (WidgetsSubItems* self,
                                         const gchar* content);
static void ___lambda186__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                              gint n_press,
                                              gdouble x,
                                              gdouble y,
                                              gpointer self);
static void __lambda187_ (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_is_loading (LayoutsItemRow* self,
                                      gboolean value);
static void ___lambda187__objects_base_object_loading_change (ObjectsBaseObject* _sender,
                                                       gpointer self);
static void __lambda188_ (LayoutsItemRow* self);
static void ___lambda188__objects_base_object_sensitive_change (ObjectsBaseObject* _sender,
                                                         gpointer self);
static void __lambda189_ (LayoutsItemRow* self);
static void ___lambda189__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda190_ (LayoutsItemRow* self);
static void ___lambda190__gtk_button_clicked (GtkButton* _sender,
                                       gpointer self);
static void __lambda191_ (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_check_hide_subtask_button (LayoutsItemRow* self);
static void ___lambda191__widgets_sub_items_children_changes (WidgetsSubItems* _sender,
                                                       gpointer self);
static void __lambda192_ (LayoutsItemRow* self);
VALA_EXTERN void widgets_sub_items_set_reveal_child (WidgetsSubItems* self,
                                         gboolean value);
static void ___lambda192__objects_item_collapsed_change (ObjectsItem* _sender,
                                                  gpointer self);
static void __lambda193_ (LayoutsItemRow* self);
static void ___lambda193__objects_item_show_item_changed (ObjectsItem* _sender,
                                                   gpointer self);
static void __lambda194_ (LayoutsItemRow* self,
                   ObjectsReminder* reminder);
static void layouts_item_row_check_reminders (LayoutsItemRow* self);
static void ___lambda194__objects_item_reminder_added (ObjectsItem* _sender,
                                                ObjectsReminder* reminder,
                                                gpointer self);
static void __lambda195_ (LayoutsItemRow* self,
                   ObjectsReminder* reminder);
static void ___lambda195__objects_item_reminder_deleted (ObjectsItem* _sender,
                                                  ObjectsReminder* reminder,
                                                  gpointer self);
static void __lambda196_ (LayoutsItemRow* self,
                   const gchar* project_id);
static void ___lambda196__services_event_bus_drag_items_end (ServicesEventBus* _sender,
                                                      const gchar* project_id,
                                                      gpointer self);
static void __lambda197_ (LayoutsItemRow* self);
static void ___lambda197__services_event_bus_close_item_edit (ServicesEventBus* _sender,
                                                       gpointer self);
static void __lambda198_ (LayoutsItemRow* self,
                   gboolean active,
                   const gchar* focused_item_id);
static void ___lambda198__services_event_bus_dim_content (ServicesEventBus* _sender,
                                                   gboolean active,
                                                   const gchar* focused_item_id,
                                                   gpointer self);
static void __lambda199_ (LayoutsItemRow* self,
                   gboolean active,
                   const gchar* focused_item_id);
static void ___lambda199__services_event_bus_dim_content (ServicesEventBus* _sender,
                                                   gboolean active,
                                                   const gchar* focused_item_id,
                                                   gpointer self);
static void __lambda200_ (LayoutsItemRow* self);
static void ___lambda200__services_event_bus_day_changed (ServicesEventBus* _sender,
                                                   gpointer self);
static void __lambda201_ (LayoutsItemRow* self);
static void ___lambda201__g_object_notify (GObject* _sender,
                                    GParamSpec* pspec,
                                    gpointer self);
VALA_EXTERN gboolean widgets_sub_items_get_has_children (WidgetsSubItems* self);
static void layouts_item_row_real_select_row (LayoutsItemBase* base,
                                       gboolean active);
static void _layouts_item_row_verify_item_type (LayoutsItemRow* self);
VALA_EXTERN const gchar* layouts_item_base_get_update_id (LayoutsItemBase* self);
static void layouts_item_row_real_update_request (LayoutsItemBase* base);
VALA_EXTERN guint layouts_item_row_get_complete_timeout (LayoutsItemRow* self);
static void layouts_item_row_destroy_markdown_signals (LayoutsItemRow* self);
static void layouts_item_row_build_markdown_signals (LayoutsItemRow* self);
VALA_EXTERN void widgets_labels_summary_update_request (WidgetsLabelsSummary* self);
static void layouts_item_row_check_due (LayoutsItemRow* self);
static void layouts_item_row_check_description (LayoutsItemRow* self);
static void layouts_item_row_check_deadline (LayoutsItemRow* self);
static void layouts_item_row_real_hide_destroy (LayoutsItemBase* base);
static gboolean __lambda202_ (LayoutsItemRow* self);
static gboolean ___lambda202__gsource_func (gpointer self);
static void ___lambda169_ (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_update_date (LayoutsItemRow* self,
                                   GDateTime* date);
static void ____lambda169__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda170_ (LayoutsItemRow* self);
static void ____lambda170__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda171_ (LayoutsItemRow* self);
static void ____lambda171__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda172_ (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_update_due (LayoutsItemRow* self,
                                  ObjectsDueDate* duedate);
static void ____lambda172__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda173_ (LayoutsItemRow* self);
VALA_EXTERN GType dialogs_project_picker_project_picker_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsProjectPickerProjectPicker, g_object_unref)
VALA_EXTERN DialogsProjectPickerProjectPicker* dialogs_project_picker_project_picker_new_for_projects (void);
VALA_EXTERN DialogsProjectPickerProjectPicker* dialogs_project_picker_project_picker_construct_for_projects (GType object_type);
VALA_EXTERN void dialogs_project_picker_project_picker_set_project (DialogsProjectPickerProjectPicker* self,
                                                        ObjectsProject* value);
static void __lambda174_ (LayoutsItemRow* self,
                   const gchar* type,
                   const gchar* id);
VALA_EXTERN void layouts_item_row_move (LayoutsItemRow* self,
                            ObjectsProject* project,
                            const gchar* section_id);
static void ___lambda174__dialogs_project_picker_project_picker_changed (DialogsProjectPickerProjectPicker* _sender,
                                                                  const gchar* type,
                                                                  const gchar* id,
                                                                  gpointer self);
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 ____lambda173__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda175_ (LayoutsItemRow* 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_set_button_text (DialogsLabelPicker* self,
                                           const gchar* value);
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 __lambda176_ (LayoutsItemRow* self,
                   GeeHashMap* labels);
static void ___lambda176__dialogs_label_picker_labels_changed (DialogsLabelPicker* _sender,
                                                        GeeHashMap* labels,
                                                        gpointer self);
static void ____lambda175__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda177_ (LayoutsItemRow* self);
static void ____lambda177__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda178_ (LayoutsItemRow* self);
static void ____lambda178__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda179_ (LayoutsItemRow* self);
VALA_EXTERN GType dialogs_quick_add_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsQuickAdd, g_object_unref)
VALA_EXTERN DialogsQuickAdd* dialogs_quick_add_new (void);
VALA_EXTERN DialogsQuickAdd* dialogs_quick_add_construct (GType object_type);
VALA_EXTERN void dialogs_quick_add_for_base_object (DialogsQuickAdd* self,
                                        ObjectsBaseObject* base_object);
static void ____lambda179__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static void ___lambda180_ (LayoutsItemRow* self);
static void ____lambda180__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda181_ (LayoutsItemRow* self);
static void ____lambda181__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                  gpointer self);
static GtkPopover* layouts_item_row_build_button_context_menu (LayoutsItemRow* self);
static void ___lambda203_ (LayoutsItemRow* self);
static void ____lambda203__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                                    gpointer self);
static void ___lambda204_ (LayoutsItemRow* self);
static void ____lambda204__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda205_ (LayoutsItemRow* self);
static void ____lambda205__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda206_ (LayoutsItemRow* self);
static void ____lambda206__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void ___lambda207_ (LayoutsItemRow* self);
static void __lambda208_ (LayoutsItemRow* self,
                   const gchar* type,
                   const gchar* id);
static void ___lambda208__dialogs_project_picker_project_picker_changed (DialogsProjectPickerProjectPicker* _sender,
                                                                  const gchar* type,
                                                                  const gchar* id,
                                                                  gpointer self);
static void ____lambda207__gtk_button_clicked (GtkButton* _sender,
                                        gpointer self);
static void __lambda209_ (LayoutsItemRow* self);
static void ___lambda209__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                 gpointer self);
static void __lambda210_ (LayoutsItemRow* self);
VALA_EXTERN GType dialogs_item_change_history_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (DialogsItemChangeHistory, g_object_unref)
VALA_EXTERN DialogsItemChangeHistory* dialogs_item_change_history_new (ObjectsItem* item);
VALA_EXTERN DialogsItemChangeHistory* dialogs_item_change_history_construct (GType object_type,
                                                                 ObjectsItem* item);
static void ___lambda210__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                                 gpointer self);
static void layouts_item_row_real_checked_toggled (LayoutsItemBase* base,
                                            gboolean active,
                                            guint* time);
static void layouts_item_row_complete_item (LayoutsItemRow* self,
                                     gboolean old_checked,
                                     guint* time);
VALA_EXTERN void layouts_item_row_set_complete_timeout (LayoutsItemRow* self,
                                            guint value);
static void _layouts_item_row_complete_item (LayoutsItemRow* self,
                                      gboolean old_checked,
                                      const gchar* old_completed_at,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
static void _layouts_item_row_complete_item_finish (LayoutsItemRow* self,
                                             GAsyncResult* _res_);
static Block30Data* block30_data_ref (Block30Data* _data30_);
static void block30_data_unref (void * _userdata_);
static gboolean __lambda161_ (Block30Data* _data30_);
static void layouts_item_row_update_next_recurrency (LayoutsItemRow* self);
static gboolean ___lambda161__gsource_func (gpointer self);
static void _layouts_item_row_complete_item_data_free (gpointer _data);
static gboolean _layouts_item_row_complete_item_co (LayoutsItemRowCompleteItemData* _data_);
static void _layouts_item_row_complete_item_ready (GObject* source_object,
                                            GAsyncResult* _res_,
                                            gpointer _user_data_);
VALA_EXTERN void _layouts_item_base_show_task_completed_toast (LayoutsItemBase* self);
static void _layouts_item_row_complete_item_error (LayoutsItemRow* self,
                                            HttpResponse* response,
                                            gboolean old_checked,
                                            const gchar* old_completed_at);
VALA_EXTERN void layouts_item_row_update_content (LayoutsItemRow* self,
                                      const gchar* content);
VALA_EXTERN void layouts_item_row_update_priority (LayoutsItemRow* self,
                                       gint priority);
VALA_EXTERN void layouts_item_row_update_deadline (LayoutsItemRow* self,
                                       GDateTime* date);
static void __lambda162_ (LayoutsItemRow* self,
                   GObject* obj,
                   GAsyncResult* res);
static void layouts_item_row_recurrency_update_complete (LayoutsItemRow* self,
                                                  GDateTime* next_recurrency);
static void ___lambda162__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static gboolean __lambda163_ (LayoutsItemRow* self);
static gboolean ___lambda163__gsource_func (gpointer self);
static void layouts_item_row_real_delete_request (LayoutsItemBase* base,
                                           gboolean undo);
static void layouts_item_row_delete_undo (LayoutsItemRow* self);
static void __lambda182_ (LayoutsItemRow* self);
static void ___lambda182__adw_toast_dismissed (AdwToast* _sender,
                                        gpointer self);
static void __lambda183_ (LayoutsItemRow* self);
static void ___lambda183__adw_toast_button_clicked (AdwToast* _sender,
                                             gpointer self);
static void _layouts_item_row_disable_drag_and_drop (LayoutsItemRow* self);
static void layouts_item_row_build_drop_motion (LayoutsItemRow* self);
static void layouts_item_row_build_drag_source (LayoutsItemRow* self);
static void layouts_item_row_build_drop_target (LayoutsItemRow* self);
static void layouts_item_row_build_drop_magic_button_target (LayoutsItemRow* self);
static void layouts_item_row_build_drop_order_target (LayoutsItemRow* self);
static void __lambda135_ (LayoutsItemRow* self,
                   gdouble x,
                   gdouble y);
VALA_EXTERN GType widgets_magic_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WidgetsMagicButton, g_object_unref)
static void ___lambda135__gtk_drop_controller_motion_enter (GtkDropControllerMotion* _sender,
                                                     gdouble x,
                                                     gdouble y,
                                                     gpointer self);
static void __lambda136_ (LayoutsItemRow* self);
static void ___lambda136__gtk_drop_controller_motion_leave (GtkDropControllerMotion* _sender,
                                                     gpointer self);
static GdkContentProvider* __lambda137_ (LayoutsItemRow* self,
                                  GtkDragSource* source,
                                  gdouble x,
                                  gdouble y);
static GdkContentProvider* ___lambda137__gtk_drag_source_prepare (GtkDragSource* _sender,
                                                           gdouble x,
                                                           gdouble y,
                                                           gpointer self);
static void __lambda138_ (LayoutsItemRow* self,
                   GtkDragSource* source,
                   GdkDrag* drag);
VALA_EXTERN void layouts_item_row_drag_begin (LayoutsItemRow* self);
static void ___lambda138__gtk_drag_source_drag_begin (GtkDragSource* _sender,
                                               GdkDrag* drag,
                                               gpointer self);
static void __lambda139_ (LayoutsItemRow* self,
                   GtkDragSource* source,
                   GdkDrag* drag,
                   gboolean delete_data);
VALA_EXTERN void layouts_item_row_drag_end (LayoutsItemRow* self);
static void ___lambda139__gtk_drag_source_drag_end (GtkDragSource* _sender,
                                             GdkDrag* drag,
                                             gboolean delete_data,
                                             gpointer self);
static gboolean __lambda140_ (LayoutsItemRow* self,
                       GtkDragSource* source,
                       GdkDrag* drag,
                       GdkDragCancelReason reason);
static gboolean ___lambda140__gtk_drag_source_drag_cancel (GtkDragSource* _sender,
                                                    GdkDrag* drag,
                                                    GdkDragCancelReason reason,
                                                    gpointer self);
static gboolean __lambda141_ (LayoutsItemRow* self,
                       GValue* value,
                       gdouble x,
                       gdouble y);
static Block31Data* block31_data_ref (Block31Data* _data31_);
static void block31_data_unref (void * _userdata_);
static void ____lambda142_ (Block31Data* _data31_,
                     GObject* obj,
                     GAsyncResult* res);
static void _____lambda142__gasync_ready_callback (GObject* source_object,
                                            GAsyncResult* res,
                                            gpointer self);
static Block32Data* block32_data_ref (Block32Data* _data32_);
static void block32_data_unref (void * _userdata_);
static void _____lambda143_ (Block32Data* _data32_,
                      GObject* obj,
                      GAsyncResult* res);
static void ______lambda143__gasync_ready_callback (GObject* source_object,
                                             GAsyncResult* res,
                                             gpointer self);
static gboolean ___lambda141__gtk_drop_target_drop (GtkDropTarget* _sender,
                                             GValue* value,
                                             gdouble x,
                                             gdouble y,
                                             gpointer self);
static gboolean __lambda144_ (LayoutsItemRow* self,
                       GValue* value,
                       gdouble x,
                       gdouble y);
static gboolean ___lambda144__gtk_drop_target_drop (GtkDropTarget* _sender,
                                             GValue* value,
                                             gdouble x,
                                             gdouble y,
                                             gpointer self);
static gboolean __lambda145_ (LayoutsItemRow* self,
                       GValue* value,
                       gdouble x,
                       gdouble y);
VALA_EXTERN void dialogs_quick_add_set_position (DialogsQuickAdd* self,
                                     gint value);
static void __lambda146_ (LayoutsItemRow* self);
static void ___lambda146__adw_dialog_closed (AdwDialog* _sender,
                                      gpointer self);
static gboolean ___lambda145__gtk_drop_target_drop (GtkDropTarget* _sender,
                                             GValue* value,
                                             gdouble x,
                                             gdouble y,
                                             gpointer self);
static gboolean __lambda147_ (LayoutsItemRow* self,
                       GValue* value,
                       gdouble x,
                       gdouble y);
static Block33Data* block33_data_ref (Block33Data* _data33_);
static void block33_data_unref (void * _userdata_);
static void _____lambda148_ (Block33Data* _data33_,
                      GObject* obj,
                      GAsyncResult* res);
static void ______lambda148__gasync_ready_callback (GObject* source_object,
                                             GAsyncResult* res,
                                             gpointer self);
static Block34Data* block34_data_ref (Block34Data* _data34_);
static void block34_data_unref (void * _userdata_);
static void ______lambda149_ (Block34Data* _data34_,
                       GObject* obj,
                       GAsyncResult* res);
static void _______lambda149__gasync_ready_callback (GObject* source_object,
                                              GAsyncResult* res,
                                              gpointer self);
VALA_EXTERN void utils_task_utils_update_single_item_order (GtkListBox* listbox,
                                                LayoutsItemBase* moved_row,
                                                gint new_index);
static gboolean ___lambda147__gtk_drop_target_drop (GtkDropTarget* _sender,
                                             GValue* value,
                                             gdouble x,
                                             gdouble y,
                                             gpointer self);
VALA_EXTERN void layouts_item_row_disable_drag_and_drop (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_drag_enabled (LayoutsItemRow* self,
                                        gboolean value);
VALA_EXTERN void widgets_sub_items_disable_drag_and_drop (WidgetsSubItems* self);
static void layouts_item_row_build_markdown_editor (LayoutsItemRow* self);
static Block35Data* block35_data_ref (Block35Data* _data35_);
static void block35_data_unref (void * _userdata_);
static void __lambda130_ (Block35Data* _data35_,
                   gint n_press,
                   gdouble x,
                   gdouble y);
static void ___lambda130__gtk_gesture_click_released (GtkGestureClick* _sender,
                                               gint n_press,
                                               gdouble x,
                                               gdouble y,
                                               gpointer self);
static void __lambda131_ (LayoutsItemRow* self);
static void ___lambda131__widgets_markdown_editor_escape_pressed (WidgetsMarkdownEditor* _sender,
                                                           gpointer self);
static void __lambda132_ (LayoutsItemRow* self);
static void ___lambda132__widgets_markdown_editor_text_changed (WidgetsMarkdownEditor* _sender,
                                                         const gchar* text,
                                                         gpointer self);
static void layouts_item_row_build_detail_widgets (LayoutsItemRow* self);
VALA_EXTERN WidgetsAttachments* widgets_attachments_new (gboolean is_board);
VALA_EXTERN WidgetsAttachments* widgets_attachments_construct (GType object_type,
                                                   gboolean is_board);
VALA_EXTERN void widgets_attachments_present_item (WidgetsAttachments* self,
                                       ObjectsItem* _item);
static void __lambda217_ (LayoutsItemRow* self);
static void ___lambda217__widgets_schedule_button_duedate_changed (WidgetsScheduleButton* _sender,
                                                            gpointer self);
static void __lambda218_ (LayoutsItemRow* self,
                   gint priority);
static void ___lambda218__widgets_priority_button_changed (WidgetsPriorityButton* _sender,
                                                    gint priority,
                                                    gpointer self);
static void __lambda219_ (LayoutsItemRow* self,
                   GeeHashMap* labels);
static void ___lambda219__widgets_label_picker_label_button_labels_changed (WidgetsLabelPickerLabelButton* _sender,
                                                                     GeeHashMap* labels,
                                                                     gpointer self);
static void __lambda220_ (LayoutsItemRow* self,
                   ObjectsReminder* reminder);
static void ___lambda220__widgets_reminder_picker_reminder_button_reminder_added (WidgetsReminderPickerReminderButton* _sender,
                                                                           ObjectsReminder* reminder,
                                                                           gpointer self);
static void __lambda221_ (LayoutsItemRow* self,
                   GDateTime* date);
static void ___lambda221__widgets_deadline_button_date_selected (WidgetsDeadlineButton* _sender,
                                                          GDateTime* date,
                                                          gpointer self);
static void __lambda222_ (LayoutsItemRow* self,
                   GDateTime* date);
static void ___lambda222__widgets_deadline_button_date_selected (WidgetsDeadlineButton* _sender,
                                                          GDateTime* date,
                                                          gpointer self);
static void __lambda223_ (LayoutsItemRow* self,
                   gint count);
static void ___lambda223__widgets_attachments_update_count (WidgetsAttachments* _sender,
                                                     gint count,
                                                     gpointer self);
static void __lambda224_ (LayoutsItemRow* self,
                   gboolean active);
static void ___lambda224__widgets_attachments_file_selector_opened (WidgetsAttachments* _sender,
                                                             gboolean active,
                                                             gpointer self);
static void layouts_item_row_init_spelling_adapter (LayoutsItemRow* self);
static void __lambda225_ (LayoutsItemRow* self);
static void ___lambda225__g_settings_changed (GSettings* _sender,
                                       const gchar* key,
                                       gpointer self);
static void layouts_item_row_destroy_markdown_editor (LayoutsItemRow* self);
static gboolean ___lambda134_ (LayoutsItemRow* self);
static gboolean ____lambda134__gsource_func (gpointer self);
static void layouts_item_row_real_clean_up (LayoutsItemBase* base);
VALA_EXTERN void widgets_sub_items_clean_up (WidgetsSubItems* self);
VALA_EXTERN void widgets_attachments_clean_up (WidgetsAttachments* self);
VALA_EXTERN gboolean layouts_item_row_get_is_project_view (LayoutsItemRow* self);
static void layouts_item_row_set_is_project_view (LayoutsItemRow* self,
                                           gboolean value);
VALA_EXTERN const gchar* layouts_item_row_get_project_id (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_project_id (LayoutsItemRow* self,
                                      const gchar* value);
VALA_EXTERN const gchar* layouts_item_row_get_section_id (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_section_id (LayoutsItemRow* self,
                                      const gchar* value);
VALA_EXTERN const gchar* layouts_item_row_get_parent_id (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_parent_id (LayoutsItemRow* self,
                                     const gchar* value);
static gboolean _layouts_item_row_edit____lambda133_ (LayoutsItemRow* self);
static gboolean __layouts_item_row_edit____lambda133__gsource_func (gpointer self);
VALA_EXTERN gboolean layouts_item_row_get_reveal (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_reveal (LayoutsItemRow* self,
                                  gboolean value);
VALA_EXTERN gboolean layouts_item_row_get_is_loading (LayoutsItemRow* self);
VALA_EXTERN guint layouts_item_row_get_destroy_timeout (LayoutsItemRow* self);
VALA_EXTERN void layouts_item_row_set_destroy_timeout (LayoutsItemRow* self,
                                           guint value);
static GObject * layouts_item_row_constructor (GType type,
                                        guint n_construct_properties,
                                        GObjectConstructParam * construct_properties);
VALA_EXTERN WidgetsLabelsSummary* widgets_labels_summary_new (ObjectsItem* item,
                                                  gint max_items,
                                                  gboolean is_board);
VALA_EXTERN WidgetsLabelsSummary* widgets_labels_summary_construct (GType object_type,
                                                        ObjectsItem* item,
                                                        gint max_items,
                                                        gboolean is_board);
VALA_EXTERN void widgets_labels_summary_set_reveal_child (WidgetsLabelsSummary* self,
                                              gboolean value);
VALA_EXTERN void widgets_labels_summary_set_start_margin (WidgetsLabelsSummary* self,
                                              gint value);
static void _layouts_item_row___lambda226_ (LayoutsItemRow* self);
static void __layouts_item_row___lambda226__g_object_notify (GObject* _sender,
                                                      GParamSpec* pspec,
                                                      gpointer self);
VALA_EXTERN WidgetsSubItems* widgets_sub_items_new (gboolean is_project_view);
VALA_EXTERN WidgetsSubItems* widgets_sub_items_construct (GType object_type,
                                              gboolean is_project_view);
VALA_EXTERN void widgets_sub_items_present_item (WidgetsSubItems* self,
                                     ObjectsItem* _item_parent);
static gboolean _layouts_item_row___lambda227_ (LayoutsItemRow* self);
static gboolean __layouts_item_row___lambda227__gsource_func (gpointer self);
static void layouts_item_row_finalize (GObject * obj);
static GType layouts_item_row_get_type_once (void);
static void _vala_layouts_item_row_get_property (GObject * object,
                                          guint property_id,
                                          GValue * value,
                                          GParamSpec * pspec);
static void _vala_layouts_item_row_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
layouts_item_row_get_instance_private (LayoutsItemRow* self)
{
	return G_STRUCT_MEMBER_P (self, LayoutsItemRow_private_offset);
}

LayoutsItemRow*
layouts_item_row_construct (GType object_type,
                            ObjectsItem* item,
                            gboolean is_project_view)
{
	LayoutsItemRow * self = NULL;
	g_return_val_if_fail (item != NULL, NULL);
	self = (LayoutsItemRow*) g_object_new (object_type, "item", item, "is-project-view", is_project_view, NULL);
	return self;
}

LayoutsItemRow*
layouts_item_row_new (ObjectsItem* item,
                      gboolean is_project_view)
{
	return layouts_item_row_construct (LAYOUTS_TYPE_ITEM_ROW, item, is_project_view);
}

static Block29Data*
block29_data_ref (Block29Data* _data29_)
{
	g_atomic_int_inc (&_data29_->_ref_count_);
	return _data29_;
}

static void
block29_data_unref (void * _userdata_)
{
	Block29Data* _data29_;
	_data29_ = (Block29Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data29_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data29_->self;
		_g_object_unref0 (_data29_->add_subitem_gesture);
		_g_object_unref0 (_data29_->multiselect_gesture);
		_g_object_unref0 (_data29_->menu_handle_gesture);
		_g_object_unref0 (_data29_->checked_button_gesture);
		_g_object_unref0 (_data29_->handle_gesture_click);
		_g_object_unref0 (self);
		g_slice_free (Block29Data, _data29_);
	}
}

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

static void
__lambda152_ (Block29Data* _data29_,
              gint n_press,
              gdouble x,
              gdouble y)
{
	LayoutsItemRow* self;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	ServicesSettings* _tmp2_;
	ServicesSettings* _tmp3_;
	GSettings* _tmp4_;
	gboolean _tmp5_;
	self = _data29_->self;
	_tmp2_ = services_settings_get_default ();
	_tmp3_ = _tmp2_;
	_tmp4_ = _tmp3_->settings;
	_tmp5_ = g_settings_get_boolean (_tmp4_, "attention-at-one");
	_g_object_unref0 (_tmp3_);
	if (_tmp5_) {
		ServicesEventBus* _tmp6_;
		ServicesEventBus* _tmp7_;
		_tmp6_ = services_event_bus_get_default ();
		_tmp7_ = _tmp6_;
		_tmp1_ = _tmp7_->item_edit_active;
		_g_object_unref0 (_tmp7_);
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		gboolean _tmp8_;
		gboolean _tmp9_;
		_tmp8_ = layouts_item_row_get_edit (self);
		_tmp9_ = _tmp8_;
		_tmp0_ = !_tmp9_;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		gtk_gesture_set_state ((GtkGesture*) _data29_->handle_gesture_click, GTK_EVENT_SEQUENCE_CLAIMED);
	}
}

static void
___lambda152__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                         gint n_press,
                                         gdouble x,
                                         gdouble y,
                                         gpointer self)
{
	__lambda152_ (self, n_press, x, y);
}

static gboolean
___lambda154_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsProject* _tmp2_;
	ObjectsProject* _tmp3_;
	ServicesEventBus* _tmp4_;
	ServicesEventBus* _tmp5_;
	gboolean _tmp6_;
	GtkCheckButton* _tmp11_;
	GtkCheckButton* _tmp12_;
	gboolean _tmp13_;
	gboolean _tmp14_;
	GtkCheckButton* _tmp15_;
	gboolean _tmp16_;
	gboolean _tmp17_;
	gboolean result;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_project (_tmp1_);
	_tmp3_ = _tmp2_;
	if (_tmp3_ == NULL) {
		result = G_SOURCE_REMOVE;
		return result;
	}
	_tmp4_ = services_event_bus_get_default ();
	_tmp5_ = _tmp4_;
	_tmp6_ = !_tmp5_->multi_select_enabled;
	_g_object_unref0 (_tmp5_);
	if (_tmp6_) {
		ObjectsItem* _tmp7_;
		ObjectsItem* _tmp8_;
		ObjectsProject* _tmp9_;
		ObjectsProject* _tmp10_;
		_tmp7_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp8_ = _tmp7_;
		_tmp9_ = objects_item_get_project (_tmp8_);
		_tmp10_ = _tmp9_;
		objects_project_set_show_multi_select (_tmp10_, TRUE);
	}
	_tmp11_ = self->priv->select_checkbutton;
	_tmp12_ = self->priv->select_checkbutton;
	_tmp13_ = gtk_check_button_get_active (_tmp12_);
	_tmp14_ = _tmp13_;
	gtk_check_button_set_active (_tmp11_, !_tmp14_);
	_tmp15_ = self->priv->select_checkbutton;
	_tmp16_ = gtk_check_button_get_active (_tmp15_);
	_tmp17_ = _tmp16_;
	layouts_item_row_selected_toggled (self, _tmp17_);
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
____lambda154__gsource_func (gpointer self)
{
	gboolean result;
	result = ___lambda154_ ((LayoutsItemRow*) self);
	return result;
}

static void
__lambda153_ (Block29Data* _data29_,
              gint n_press,
              gdouble x,
              gdouble y)
{
	LayoutsItemRow* self;
	GdkModifierType modifier = 0U;
	ServicesEventBus* _tmp0_;
	ServicesEventBus* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp10_;
	gboolean _tmp11_;
	ServicesSettings* _tmp12_;
	ServicesSettings* _tmp13_;
	GSettings* _tmp14_;
	gboolean _tmp15_;
	self = _data29_->self;
	modifier = gtk_event_controller_get_current_event_state ((GtkEventController*) _data29_->handle_gesture_click);
	if ((modifier & GDK_CONTROL_MASK) != 0) {
		g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ____lambda154__gsource_func, g_object_ref (self), g_object_unref);
		return;
	}
	_tmp0_ = services_event_bus_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = _tmp1_->multi_select_enabled;
	_g_object_unref0 (_tmp1_);
	if (_tmp2_) {
		GtkCheckButton* _tmp3_;
		GtkCheckButton* _tmp4_;
		gboolean _tmp5_;
		gboolean _tmp6_;
		GtkCheckButton* _tmp7_;
		gboolean _tmp8_;
		gboolean _tmp9_;
		_tmp3_ = self->priv->select_checkbutton;
		_tmp4_ = self->priv->select_checkbutton;
		_tmp5_ = gtk_check_button_get_active (_tmp4_);
		_tmp6_ = _tmp5_;
		gtk_check_button_set_active (_tmp3_, !_tmp6_);
		_tmp7_ = self->priv->select_checkbutton;
		_tmp8_ = gtk_check_button_get_active (_tmp7_);
		_tmp9_ = _tmp8_;
		layouts_item_row_selected_toggled (self, _tmp9_);
		return;
	}
	_tmp10_ = layouts_item_row_get_edit (self);
	_tmp11_ = _tmp10_;
	if (_tmp11_) {
		return;
	}
	_tmp12_ = services_settings_get_default ();
	_tmp13_ = _tmp12_;
	_tmp14_ = _tmp13_->settings;
	_tmp15_ = g_settings_get_boolean (_tmp14_, "attention-at-one");
	_g_object_unref0 (_tmp13_);
	if (_tmp15_) {
		ServicesEventBus* _tmp16_;
		ServicesEventBus* _tmp17_;
		gboolean _tmp18_;
		_tmp16_ = services_event_bus_get_default ();
		_tmp17_ = _tmp16_;
		_tmp18_ = _tmp17_->item_edit_active;
		_g_object_unref0 (_tmp17_);
		if (_tmp18_) {
			ServicesEventBus* _tmp19_;
			ServicesEventBus* _tmp20_;
			_tmp19_ = services_event_bus_get_default ();
			_tmp20_ = _tmp19_;
			g_signal_emit_by_name (_tmp20_, "close-item-edit");
			_g_object_unref0 (_tmp20_);
			return;
		}
	}
	layouts_item_row_show_details (self);
}

static void
___lambda153__gtk_gesture_click_released (GtkGestureClick* _sender,
                                          gint n_press,
                                          gdouble x,
                                          gdouble y,
                                          gpointer self)
{
	__lambda153_ (self, n_press, x, y);
}

static void
__lambda155_ (LayoutsItemRow* self)
{
	layouts_item_row_show_details (self);
}

static void
___lambda155__gtk_list_box_row_activate (GtkListBoxRow* _sender,
                                         gpointer self)
{
	__lambda155_ ((LayoutsItemRow*) self);
}

static void
__lambda156_ (LayoutsItemRow* self)
{
	ServicesEventBus* _tmp0_;
	ServicesEventBus* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	_tmp0_ = services_event_bus_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = services_event_bus_get_mobile_mode (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = _tmp3_;
	_g_object_unref0 (_tmp1_);
	if (_tmp4_) {
		GtkBox* _tmp5_;
		GtkBox* _tmp6_;
		GtkMenuButton* _tmp7_;
		GtkMenuButton* _tmp8_;
		GtkBox* _tmp9_;
		_tmp5_ = self->priv->action_box_right;
		gtk_widget_set_hexpand ((GtkWidget*) _tmp5_, FALSE);
		_tmp6_ = self->priv->action_box_right;
		gtk_widget_set_halign ((GtkWidget*) _tmp6_, GTK_ALIGN_FILL);
		_tmp7_ = self->priv->menu_button;
		gtk_widget_set_hexpand ((GtkWidget*) _tmp7_, TRUE);
		_tmp8_ = self->priv->menu_button;
		gtk_widget_set_halign ((GtkWidget*) _tmp8_, GTK_ALIGN_END);
		_tmp9_ = self->priv->action_box;
		gtk_orientable_set_orientation ((GtkOrientable*) _tmp9_, GTK_ORIENTATION_VERTICAL);
	} else {
		GtkBox* _tmp10_;
		GtkBox* _tmp11_;
		GtkMenuButton* _tmp12_;
		GtkMenuButton* _tmp13_;
		GtkBox* _tmp14_;
		_tmp10_ = self->priv->action_box_right;
		gtk_widget_set_hexpand ((GtkWidget*) _tmp10_, TRUE);
		_tmp11_ = self->priv->action_box_right;
		gtk_widget_set_halign ((GtkWidget*) _tmp11_, GTK_ALIGN_END);
		_tmp12_ = self->priv->menu_button;
		gtk_widget_set_hexpand ((GtkWidget*) _tmp12_, FALSE);
		_tmp13_ = self->priv->menu_button;
		gtk_widget_set_halign ((GtkWidget*) _tmp13_, GTK_ALIGN_FILL);
		_tmp14_ = self->priv->action_box;
		gtk_orientable_set_orientation ((GtkOrientable*) _tmp14_, GTK_ORIENTATION_HORIZONTAL);
	}
}

static void
___lambda156__services_event_bus_mobile_mode_change (ServicesEventBus* _sender,
                                                     gpointer self)
{
	__lambda156_ ((LayoutsItemRow*) self);
}

static void
__lambda157_ (LayoutsItemRow* self,
              const gchar* item_id)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp1_);
	_tmp3_ = _tmp2_;
	layouts_item_row_set_edit (self, g_strcmp0 (_tmp3_, item_id) == 0);
}

static void
___lambda157__services_event_bus_item_selected (ServicesEventBus* _sender,
                                                const gchar* id,
                                                gpointer self)
{
	__lambda157_ ((LayoutsItemRow*) self, id);
}

static gboolean
__lambda158_ (LayoutsItemRow* self,
              guint keyval,
              guint keycode,
              GdkModifierType state)
{
	gboolean result;
	if (keyval == GDK_KEY_Return) {
		layouts_item_row_set_edit (self, FALSE);
		result = GDK_EVENT_STOP;
		return result;
	} else {
		gboolean _tmp0_ = FALSE;
		if (keyval == GDK_KEY_Tab) {
			WidgetsMarkdownEditor* _tmp1_;
			_tmp1_ = self->priv->markdown_editor;
			_tmp0_ = _tmp1_ != NULL;
		} else {
			_tmp0_ = FALSE;
		}
		if (_tmp0_) {
			WidgetsMarkdownEditor* _tmp2_;
			_tmp2_ = self->priv->markdown_editor;
			widgets_markdown_editor_view_focus (_tmp2_);
			result = GDK_EVENT_STOP;
			return result;
		}
	}
	result = FALSE;
	return result;
}

static gboolean
___lambda158__gtk_event_controller_key_key_pressed (GtkEventControllerKey* _sender,
                                                    guint keyval,
                                                    guint keycode,
                                                    GdkModifierType state,
                                                    gpointer self)
{
	gboolean result;
	result = __lambda158_ ((LayoutsItemRow*) self, keyval, keycode, state);
	return result;
}

static void
__lambda159_ (LayoutsItemRow* self,
              guint keyval,
              guint keycode,
              GdkModifierType state)
{
	if (keyval == GDK_KEY_Escape) {
		layouts_item_row_set_edit (self, FALSE);
	} else {
		layouts_item_row_update_content_description (self);
	}
}

static void
___lambda159__gtk_event_controller_key_key_released (GtkEventControllerKey* _sender,
                                                     guint keyval,
                                                     guint keycode,
                                                     GdkModifierType state,
                                                     gpointer self)
{
	__lambda159_ ((LayoutsItemRow*) self, keyval, keycode, state);
}

static void
__lambda160_ (Block29Data* _data29_)
{
	LayoutsItemRow* self;
	GtkCheckButton* _tmp0_;
	GtkCheckButton* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	GtkCheckButton* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	self = _data29_->self;
	gtk_gesture_set_state ((GtkGesture*) _data29_->checked_button_gesture, GTK_EVENT_SEQUENCE_CLAIMED);
	_tmp0_ = self->priv->checked_button;
	_tmp1_ = self->priv->checked_button;
	_tmp2_ = gtk_check_button_get_active (_tmp1_);
	_tmp3_ = _tmp2_;
	gtk_check_button_set_active (_tmp0_, !_tmp3_);
	_tmp4_ = self->priv->checked_button;
	_tmp5_ = gtk_check_button_get_active (_tmp4_);
	_tmp6_ = _tmp5_;
	layouts_item_base_checked_toggled ((LayoutsItemBase*) self, _tmp6_, NULL);
}

static void
___lambda160__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                         gint n_press,
                                         gdouble x,
                                         gdouble y,
                                         gpointer self)
{
	__lambda160_ (self);
}

static void
__lambda164_ (Block29Data* _data29_)
{
	LayoutsItemRow* self;
	gboolean _tmp0_ = FALSE;
	self = _data29_->self;
	if (!gtk_gesture_is_active ((GtkGesture*) _data29_->checked_button_gesture)) {
		_tmp0_ = !self->priv->_recurrency_reset;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		GtkCheckButton* _tmp1_;
		gboolean _tmp2_;
		gboolean _tmp3_;
		_tmp1_ = self->priv->checked_button;
		_tmp2_ = gtk_check_button_get_active (_tmp1_);
		_tmp3_ = _tmp2_;
		layouts_item_base_checked_toggled ((LayoutsItemBase*) self, _tmp3_, NULL);
	}
}

static void
___lambda164__gtk_check_button_toggled (GtkCheckButton* _sender,
                                        gpointer self)
{
	__lambda164_ (self);
}

static gboolean
__lambda166_ (LayoutsItemRow* self)
{
	gboolean result;
	layouts_item_row_set_edit (self, FALSE);
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
___lambda166__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda166_ ((LayoutsItemRow*) self);
	return result;
}

static void
__lambda165_ (LayoutsItemRow* self)
{
	g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 100, ___lambda166__gsource_func, g_object_ref (self), g_object_unref);
}

static void
___lambda165__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda165_ ((LayoutsItemRow*) self);
}

static void
__lambda167_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_ = FALSE;
	ServicesSettings* _tmp7_;
	ServicesSettings* _tmp8_;
	GSettings* _tmp9_;
	gboolean _tmp10_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_pinned (_tmp3_);
	_tmp5_ = _tmp4_;
	objects_item_update_pin (_tmp1_, !_tmp5_);
	_tmp7_ = services_settings_get_default ();
	_tmp8_ = _tmp7_;
	_tmp9_ = _tmp8_->settings;
	_tmp10_ = g_settings_get_boolean (_tmp9_, "attention-at-one");
	_g_object_unref0 (_tmp8_);
	if (_tmp10_) {
		gboolean _tmp11_;
		gboolean _tmp12_;
		_tmp11_ = layouts_item_row_get_edit (self);
		_tmp12_ = _tmp11_;
		_tmp6_ = _tmp12_;
	} else {
		_tmp6_ = FALSE;
	}
	if (_tmp6_) {
		ServicesEventBus* _tmp13_;
		ServicesEventBus* _tmp14_;
		ServicesEventBus* _tmp15_;
		ServicesEventBus* _tmp16_;
		_tmp13_ = services_event_bus_get_default ();
		_tmp14_ = _tmp13_;
		_tmp14_->item_edit_active = FALSE;
		_g_object_unref0 (_tmp14_);
		_tmp15_ = services_event_bus_get_default ();
		_tmp16_ = _tmp15_;
		g_signal_emit_by_name (_tmp16_, "dim-content", FALSE, "");
		_g_object_unref0 (_tmp16_);
	}
}

static void
___lambda167__widgets_pin_button_changed (WidgetsPinButton* _sender,
                                          gpointer self)
{
	__lambda167_ ((LayoutsItemRow*) self);
}

static void
_layouts_item_base_update_request_g_settings_changed (GSettings* _sender,
                                                      const gchar* key,
                                                      gpointer self)
{
	layouts_item_base_update_request ((LayoutsItemBase*) self);
}

static void
__lambda168_ (Block29Data* _data29_,
              gint n_press,
              gdouble x,
              gdouble y)
{
	LayoutsItemRow* self;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsProject* _tmp2_;
	ObjectsProject* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	self = _data29_->self;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_project (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_project_get_is_deck (_tmp3_);
	_tmp5_ = _tmp4_;
	if (!_tmp5_) {
		gtk_gesture_set_state ((GtkGesture*) _data29_->menu_handle_gesture, GTK_EVENT_SEQUENCE_CLAIMED);
		layouts_item_row_build_handle_context_menu (self, x, y);
	}
}

static void
___lambda168__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                         gint n_press,
                                         gdouble x,
                                         gdouble y,
                                         gpointer self)
{
	__lambda168_ (self, n_press, x, y);
}

static void
__lambda184_ (Block29Data* _data29_)
{
	LayoutsItemRow* self;
	GtkCheckButton* _tmp0_;
	GtkCheckButton* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	GtkCheckButton* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	self = _data29_->self;
	gtk_gesture_set_state ((GtkGesture*) _data29_->multiselect_gesture, GTK_EVENT_SEQUENCE_CLAIMED);
	_tmp0_ = self->priv->select_checkbutton;
	_tmp1_ = self->priv->select_checkbutton;
	_tmp2_ = gtk_check_button_get_active (_tmp1_);
	_tmp3_ = _tmp2_;
	gtk_check_button_set_active (_tmp0_, !_tmp3_);
	_tmp4_ = self->priv->select_checkbutton;
	_tmp5_ = gtk_check_button_get_active (_tmp4_);
	_tmp6_ = _tmp5_;
	layouts_item_row_selected_toggled (self, _tmp6_);
}

static void
___lambda184__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                         gint n_press,
                                         gdouble x,
                                         gdouble y,
                                         gpointer self)
{
	__lambda184_ (self);
}

static void
__lambda185_ (LayoutsItemRow* self,
              gboolean active)
{
	if (active) {
		GtkRevealer* _tmp0_;
		GtkCheckButton* _tmp1_;
		GtkDragSource* _tmp2_;
		_tmp0_ = self->priv->select_revealer;
		gtk_revealer_set_reveal_child (_tmp0_, TRUE);
		_tmp1_ = self->priv->checked_button;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp1_, FALSE);
		_tmp2_ = self->priv->drag_source;
		if (_tmp2_ != NULL) {
			AdwBin* _tmp3_;
			GtkDragSource* _tmp4_;
			_tmp3_ = self->itemrow_box;
			_tmp4_ = self->priv->drag_source;
			gtk_widget_remove_controller ((GtkWidget*) _tmp3_, (GtkEventController*) _tmp4_);
			_g_object_unref0 (self->priv->drag_source);
			self->priv->drag_source = NULL;
		}
	} else {
		GtkRevealer* _tmp5_;
		GtkCheckButton* _tmp6_;
		gboolean _tmp7_;
		GtkCheckButton* _tmp8_;
		_tmp5_ = self->priv->select_revealer;
		gtk_revealer_set_reveal_child (_tmp5_, FALSE);
		_tmp6_ = self->priv->checked_button;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp6_, TRUE);
		_tmp7_ = self->priv->_drag_enabled;
		if (_tmp7_) {
			layouts_item_row_build_drag_and_drop (self);
		}
		_tmp8_ = self->priv->select_checkbutton;
		gtk_check_button_set_active (_tmp8_, FALSE);
	}
}

static void
___lambda185__services_event_bus_show_multi_select (ServicesEventBus* _sender,
                                                    gboolean enabled,
                                                    gpointer self)
{
	__lambda185_ ((LayoutsItemRow*) self, enabled);
}

static void
__lambda186_ (Block29Data* _data29_,
              gint n_press,
              gdouble x,
              gdouble y)
{
	LayoutsItemRow* self;
	WidgetsSubItems* _tmp0_;
	self = _data29_->self;
	gtk_gesture_set_state ((GtkGesture*) _data29_->add_subitem_gesture, GTK_EVENT_SEQUENCE_CLAIMED);
	_tmp0_ = self->priv->subitems;
	widgets_sub_items_prepare_new_item (_tmp0_, "");
}

static void
___lambda186__gtk_gesture_click_pressed (GtkGestureClick* _sender,
                                         gint n_press,
                                         gdouble x,
                                         gdouble y,
                                         gpointer self)
{
	__lambda186_ (self, n_press, x, y);
}

static void
__lambda187_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_base_object_get_loading ((ObjectsBaseObject*) _tmp1_);
	_tmp3_ = _tmp2_;
	layouts_item_row_set_is_loading (self, _tmp3_);
}

static void
___lambda187__objects_base_object_loading_change (ObjectsBaseObject* _sender,
                                                  gpointer self)
{
	__lambda187_ ((LayoutsItemRow*) self);
}

static void
__lambda188_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_base_object_get_sensitive ((ObjectsBaseObject*) _tmp1_);
	_tmp3_ = _tmp2_;
	gtk_widget_set_sensitive ((GtkWidget*) self, _tmp3_);
}

static void
___lambda188__objects_base_object_sensitive_change (ObjectsBaseObject* _sender,
                                                    gpointer self)
{
	__lambda188_ ((LayoutsItemRow*) self);
}

static void
__lambda189_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	ObjectsItem* _tmp6_;
	ObjectsItem* _tmp7_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_collapsed (_tmp3_);
	_tmp5_ = _tmp4_;
	objects_item_set_collapsed (_tmp1_, !_tmp5_);
	_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp7_ = _tmp6_;
	objects_item_update_local (_tmp7_);
}

static void
___lambda189__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda189_ ((LayoutsItemRow*) self);
}

static void
__lambda190_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	ObjectsItem* _tmp6_;
	ObjectsItem* _tmp7_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_collapsed (_tmp3_);
	_tmp5_ = _tmp4_;
	objects_item_set_collapsed (_tmp1_, !_tmp5_);
	_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp7_ = _tmp6_;
	objects_item_update_local (_tmp7_);
}

static void
___lambda190__gtk_button_clicked (GtkButton* _sender,
                                  gpointer self)
{
	__lambda190_ ((LayoutsItemRow*) self);
}

static void
__lambda191_ (LayoutsItemRow* self)
{
	layouts_item_row_check_hide_subtask_button (self);
}

static void
___lambda191__widgets_sub_items_children_changes (WidgetsSubItems* _sender,
                                                  gpointer self)
{
	__lambda191_ ((LayoutsItemRow*) self);
}

static void
__lambda192_ (LayoutsItemRow* self)
{
	WidgetsSubItems* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	ObjectsItem* _tmp5_;
	ObjectsItem* _tmp6_;
	gboolean _tmp7_;
	gboolean _tmp8_;
	_tmp0_ = self->priv->subitems;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_collapsed (_tmp2_);
	_tmp4_ = _tmp3_;
	widgets_sub_items_set_reveal_child (_tmp0_, _tmp4_);
	_tmp5_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp6_ = _tmp5_;
	_tmp7_ = objects_item_get_collapsed (_tmp6_);
	_tmp8_ = _tmp7_;
	if (_tmp8_) {
		GtkButton* _tmp9_;
		GtkButton* _tmp10_;
		_tmp9_ = self->priv->hide_subtask_button;
		gtk_widget_add_css_class ((GtkWidget*) _tmp9_, "opened");
		_tmp10_ = self->priv->show_subtasks_button;
		gtk_widget_add_css_class ((GtkWidget*) _tmp10_, "opened");
	} else {
		GtkButton* _tmp11_;
		GtkButton* _tmp12_;
		_tmp11_ = self->priv->hide_subtask_button;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp11_, "opened");
		_tmp12_ = self->priv->show_subtasks_button;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp12_, "opened");
	}
}

static void
___lambda192__objects_item_collapsed_change (ObjectsItem* _sender,
                                             gpointer self)
{
	__lambda192_ ((LayoutsItemRow*) self);
}

static void
__lambda193_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	_tmp0_ = self->priv->main_revealer;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_show_item (_tmp2_);
	_tmp4_ = _tmp3_;
	gtk_revealer_set_reveal_child (_tmp0_, _tmp4_);
}

static void
___lambda193__objects_item_show_item_changed (ObjectsItem* _sender,
                                              gpointer self)
{
	__lambda193_ ((LayoutsItemRow*) self);
}

static void
__lambda194_ (LayoutsItemRow* self,
              ObjectsReminder* reminder)
{
	WidgetsReminderPickerReminderButton* _tmp0_;
	g_return_if_fail (reminder != NULL);
	_tmp0_ = self->priv->reminder_button;
	if (_tmp0_ != NULL) {
		WidgetsReminderPickerReminderButton* _tmp1_;
		ObjectsItem* _tmp2_;
		ObjectsItem* _tmp3_;
		GeeArrayList* _tmp4_;
		GeeArrayList* _tmp5_;
		_tmp1_ = self->priv->reminder_button;
		_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp3_ = _tmp2_;
		_tmp4_ = objects_item_get_reminders (_tmp3_);
		_tmp5_ = _tmp4_;
		widgets_reminder_picker_reminder_button_add_reminder (_tmp1_, reminder, _tmp5_);
	}
	layouts_item_row_check_reminders (self);
}

static void
___lambda194__objects_item_reminder_added (ObjectsItem* _sender,
                                           ObjectsReminder* reminder,
                                           gpointer self)
{
	__lambda194_ ((LayoutsItemRow*) self, reminder);
}

static void
__lambda195_ (LayoutsItemRow* self,
              ObjectsReminder* reminder)
{
	WidgetsReminderPickerReminderButton* _tmp0_;
	g_return_if_fail (reminder != NULL);
	_tmp0_ = self->priv->reminder_button;
	if (_tmp0_ != NULL) {
		WidgetsReminderPickerReminderButton* _tmp1_;
		ObjectsItem* _tmp2_;
		ObjectsItem* _tmp3_;
		GeeArrayList* _tmp4_;
		GeeArrayList* _tmp5_;
		_tmp1_ = self->priv->reminder_button;
		_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp3_ = _tmp2_;
		_tmp4_ = objects_item_get_reminders (_tmp3_);
		_tmp5_ = _tmp4_;
		widgets_reminder_picker_reminder_button_delete_reminder (_tmp1_, reminder, _tmp5_);
	}
	layouts_item_row_check_reminders (self);
}

static void
___lambda195__objects_item_reminder_deleted (ObjectsItem* _sender,
                                             ObjectsReminder* reminder,
                                             gpointer self)
{
	__lambda195_ ((LayoutsItemRow*) self, reminder);
}

static void
__lambda196_ (LayoutsItemRow* self,
              const gchar* project_id)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	g_return_if_fail (project_id != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_project_id (_tmp1_);
	_tmp3_ = _tmp2_;
	if (g_strcmp0 (_tmp3_, project_id) == 0) {
		GtkRevealer* _tmp4_;
		_tmp4_ = self->priv->motion_top_revealer;
		gtk_revealer_set_reveal_child (_tmp4_, FALSE);
	}
}

static void
___lambda196__services_event_bus_drag_items_end (ServicesEventBus* _sender,
                                                 const gchar* project_id,
                                                 gpointer self)
{
	__lambda196_ ((LayoutsItemRow*) self, project_id);
}

static void
__lambda197_ (LayoutsItemRow* self)
{
	gboolean _tmp0_;
	gboolean _tmp1_;
	_tmp0_ = layouts_item_row_get_edit (self);
	_tmp1_ = _tmp0_;
	if (_tmp1_) {
		layouts_item_row_set_edit (self, FALSE);
	}
}

static void
___lambda197__services_event_bus_close_item_edit (ServicesEventBus* _sender,
                                                  gpointer self)
{
	__lambda197_ ((LayoutsItemRow*) self);
}

static void
__lambda198_ (LayoutsItemRow* self,
              gboolean active,
              const gchar* focused_item_id)
{
	gboolean _tmp0_;
	gboolean _tmp1_;
	g_return_if_fail (focused_item_id != NULL);
	_tmp0_ = layouts_item_row_get_edit (self);
	_tmp1_ = _tmp0_;
	if (!_tmp1_) {
		if (active) {
			ObjectsItem* _tmp2_;
			ObjectsItem* _tmp3_;
			const gchar* _tmp4_;
			const gchar* _tmp5_;
			_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp3_ = _tmp2_;
			_tmp4_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp3_);
			_tmp5_ = _tmp4_;
			if (g_strcmp0 (_tmp5_, focused_item_id) != 0) {
				AdwBin* _tmp6_;
				_tmp6_ = self->itemrow_box;
				gtk_widget_add_css_class ((GtkWidget*) _tmp6_, "dimmed");
			}
		} else {
			AdwBin* _tmp7_;
			_tmp7_ = self->itemrow_box;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp7_, "dimmed");
		}
	} else {
		gboolean _tmp8_ = FALSE;
		if (!active) {
			gboolean _tmp9_;
			gboolean _tmp10_;
			_tmp9_ = layouts_item_row_get_edit (self);
			_tmp10_ = _tmp9_;
			_tmp8_ = _tmp10_;
		} else {
			_tmp8_ = FALSE;
		}
		if (_tmp8_) {
			layouts_item_row_set_edit (self, FALSE);
		}
	}
}

static void
___lambda198__services_event_bus_dim_content (ServicesEventBus* _sender,
                                              gboolean active,
                                              const gchar* focused_item_id,
                                              gpointer self)
{
	__lambda198_ ((LayoutsItemRow*) self, active, focused_item_id);
}

static void
__lambda199_ (LayoutsItemRow* self,
              gboolean active,
              const gchar* focused_item_id)
{
	g_return_if_fail (focused_item_id != NULL);
	if (active) {
		GtkButton* _tmp0_;
		_tmp0_ = self->priv->show_subtasks_button;
		gtk_widget_add_css_class ((GtkWidget*) _tmp0_, "dimmed");
	} else {
		GtkButton* _tmp1_;
		_tmp1_ = self->priv->show_subtasks_button;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp1_, "dimmed");
	}
}

static void
___lambda199__services_event_bus_dim_content (ServicesEventBus* _sender,
                                              gboolean active,
                                              const gchar* focused_item_id,
                                              gpointer self)
{
	__lambda199_ ((LayoutsItemRow*) self, active, focused_item_id);
}

static void
__lambda200_ (LayoutsItemRow* self)
{
	layouts_item_base_update_request ((LayoutsItemBase*) self);
}

static void
___lambda200__services_event_bus_day_changed (ServicesEventBus* _sender,
                                              gpointer self)
{
	__lambda200_ ((LayoutsItemRow*) self);
}

static void
__lambda201_ (LayoutsItemRow* self)
{
	gboolean _tmp0_;
	gboolean _tmp1_;
	_tmp0_ = layouts_item_row_get_edit (self);
	_tmp1_ = _tmp0_;
	if (!_tmp1_) {
		ServicesSettings* _tmp2_;
		ServicesSettings* _tmp3_;
		GSettings* _tmp4_;
		gboolean _tmp5_;
		_tmp2_ = services_settings_get_default ();
		_tmp3_ = _tmp2_;
		_tmp4_ = _tmp3_->settings;
		_tmp5_ = g_settings_get_boolean (_tmp4_, "attention-at-one");
		_g_object_unref0 (_tmp3_);
		if (_tmp5_) {
			ServicesEventBus* _tmp6_;
			ServicesEventBus* _tmp7_;
			ServicesEventBus* _tmp8_;
			ServicesEventBus* _tmp9_;
			_tmp6_ = services_event_bus_get_default ();
			_tmp7_ = _tmp6_;
			_tmp7_->item_edit_active = FALSE;
			_g_object_unref0 (_tmp7_);
			_tmp8_ = services_event_bus_get_default ();
			_tmp9_ = _tmp8_;
			g_signal_emit_by_name (_tmp9_, "dim-content", FALSE, "");
			_g_object_unref0 (_tmp9_);
		}
	}
}

static void
___lambda201__g_object_notify (GObject* _sender,
                               GParamSpec* pspec,
                               gpointer self)
{
	__lambda201_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_connect_signals (LayoutsItemRow* self)
{
	Block29Data* _data29_;
	GtkGestureClick* _tmp0_;
	AdwBin* _tmp1_;
	GtkEventController* _tmp2_;
	GeeHashMap* _tmp3_;
	gulong _tmp4_;
	GeeHashMap* _tmp5_;
	gulong _tmp6_;
	GeeHashMap* _tmp7_;
	gulong _tmp8_;
	GeeHashMap* _tmp9_;
	ServicesEventBus* _tmp10_;
	ServicesEventBus* _tmp11_;
	gulong _tmp12_;
	ServicesEventBus* _tmp13_;
	ServicesEventBus* _tmp14_;
	GeeHashMap* _tmp15_;
	ServicesEventBus* _tmp16_;
	ServicesEventBus* _tmp17_;
	gulong _tmp18_;
	ServicesEventBus* _tmp19_;
	ServicesEventBus* _tmp20_;
	GtkEventControllerKey* content_controller_key = NULL;
	GtkEventControllerKey* _tmp21_;
	WidgetsTextView* _tmp22_;
	GtkEventController* _tmp23_;
	GeeHashMap* _tmp24_;
	gulong _tmp25_;
	GeeHashMap* _tmp26_;
	gulong _tmp27_;
	GtkGestureClick* _tmp28_;
	GtkCheckButton* _tmp29_;
	GtkEventController* _tmp30_;
	GeeHashMap* _tmp31_;
	gulong _tmp32_;
	GeeHashMap* _tmp33_;
	GtkCheckButton* _tmp34_;
	gulong _tmp35_;
	GtkCheckButton* _tmp36_;
	GeeHashMap* _tmp37_;
	WidgetsLoadingButton* _tmp38_;
	gulong _tmp39_;
	WidgetsLoadingButton* _tmp40_;
	GeeHashMap* _tmp41_;
	WidgetsPinButton* _tmp42_;
	gulong _tmp43_;
	WidgetsPinButton* _tmp44_;
	GeeHashMap* _tmp45_;
	ServicesSettings* _tmp46_;
	ServicesSettings* _tmp47_;
	GSettings* _tmp48_;
	gulong _tmp49_;
	ServicesSettings* _tmp50_;
	ServicesSettings* _tmp51_;
	GeeHashMap* _tmp52_;
	ServicesSettings* _tmp53_;
	ServicesSettings* _tmp54_;
	GSettings* _tmp55_;
	gulong _tmp56_;
	ServicesSettings* _tmp57_;
	ServicesSettings* _tmp58_;
	GtkGestureClick* _tmp59_;
	AdwBin* _tmp60_;
	GtkEventController* _tmp61_;
	GeeHashMap* _tmp62_;
	gulong _tmp63_;
	GtkGestureClick* _tmp64_;
	GtkCheckButton* _tmp65_;
	GtkEventController* _tmp66_;
	GeeHashMap* _tmp67_;
	gulong _tmp68_;
	GeeHashMap* _tmp69_;
	ServicesEventBus* _tmp70_;
	ServicesEventBus* _tmp71_;
	gulong _tmp72_;
	ServicesEventBus* _tmp73_;
	ServicesEventBus* _tmp74_;
	GtkGestureClick* _tmp75_;
	GtkButton* _tmp76_;
	GtkEventController* _tmp77_;
	GeeHashMap* _tmp78_;
	gulong _tmp79_;
	GeeHashMap* _tmp80_;
	ObjectsItem* _tmp81_;
	ObjectsItem* _tmp82_;
	gulong _tmp83_;
	ObjectsItem* _tmp84_;
	ObjectsItem* _tmp85_;
	GeeHashMap* _tmp86_;
	ObjectsItem* _tmp87_;
	ObjectsItem* _tmp88_;
	gulong _tmp89_;
	ObjectsItem* _tmp90_;
	ObjectsItem* _tmp91_;
	GeeHashMap* _tmp92_;
	GtkButton* _tmp93_;
	gulong _tmp94_;
	GtkButton* _tmp95_;
	GeeHashMap* _tmp96_;
	GtkButton* _tmp97_;
	gulong _tmp98_;
	GtkButton* _tmp99_;
	GeeHashMap* _tmp100_;
	WidgetsSubItems* _tmp101_;
	gulong _tmp102_;
	WidgetsSubItems* _tmp103_;
	GeeHashMap* _tmp104_;
	ObjectsItem* _tmp105_;
	ObjectsItem* _tmp106_;
	gulong _tmp107_;
	ObjectsItem* _tmp108_;
	ObjectsItem* _tmp109_;
	GeeHashMap* _tmp110_;
	ObjectsItem* _tmp111_;
	ObjectsItem* _tmp112_;
	gulong _tmp113_;
	ObjectsItem* _tmp114_;
	ObjectsItem* _tmp115_;
	GeeHashMap* _tmp116_;
	ObjectsItem* _tmp117_;
	ObjectsItem* _tmp118_;
	gulong _tmp119_;
	ObjectsItem* _tmp120_;
	ObjectsItem* _tmp121_;
	GeeHashMap* _tmp122_;
	ObjectsItem* _tmp123_;
	ObjectsItem* _tmp124_;
	gulong _tmp125_;
	ObjectsItem* _tmp126_;
	ObjectsItem* _tmp127_;
	GeeHashMap* _tmp128_;
	ServicesEventBus* _tmp129_;
	ServicesEventBus* _tmp130_;
	gulong _tmp131_;
	ServicesEventBus* _tmp132_;
	ServicesEventBus* _tmp133_;
	GeeHashMap* _tmp134_;
	ServicesEventBus* _tmp135_;
	ServicesEventBus* _tmp136_;
	gulong _tmp137_;
	ServicesEventBus* _tmp138_;
	ServicesEventBus* _tmp139_;
	GeeHashMap* _tmp140_;
	ServicesEventBus* _tmp141_;
	ServicesEventBus* _tmp142_;
	gulong _tmp143_;
	ServicesEventBus* _tmp144_;
	ServicesEventBus* _tmp145_;
	GeeHashMap* _tmp146_;
	ServicesEventBus* _tmp147_;
	ServicesEventBus* _tmp148_;
	gulong _tmp149_;
	ServicesEventBus* _tmp150_;
	ServicesEventBus* _tmp151_;
	GeeHashMap* _tmp152_;
	ServicesEventBus* _tmp153_;
	ServicesEventBus* _tmp154_;
	gulong _tmp155_;
	ServicesEventBus* _tmp156_;
	ServicesEventBus* _tmp157_;
	GeeHashMap* _tmp158_;
	gulong _tmp159_;
	g_return_if_fail (self != NULL);
	_data29_ = g_slice_new0 (Block29Data);
	_data29_->_ref_count_ = 1;
	_data29_->self = g_object_ref (self);
	_tmp0_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data29_->handle_gesture_click = _tmp0_;
	_tmp1_ = self->itemrow_box;
	_tmp2_ = _g_object_ref0 ((GtkEventController*) _data29_->handle_gesture_click);
	gtk_widget_add_controller ((GtkWidget*) _tmp1_, _tmp2_);
	_tmp3_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp4_ = g_signal_connect_data (_data29_->handle_gesture_click, "pressed", (GCallback) ___lambda152__gtk_gesture_click_pressed, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp3_, (gpointer) ((guintptr) _tmp4_), (GObject*) _data29_->handle_gesture_click);
	_tmp5_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp6_ = g_signal_connect_data (_data29_->handle_gesture_click, "released", (GCallback) ___lambda153__gtk_gesture_click_released, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp5_, (gpointer) ((guintptr) _tmp6_), (GObject*) _data29_->handle_gesture_click);
	_tmp7_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp8_ = g_signal_connect_object ((GtkListBoxRow*) self, "activate", (GCallback) ___lambda155__gtk_list_box_row_activate, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp7_, (gpointer) ((guintptr) _tmp8_), (GObject*) self);
	_tmp9_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp10_ = services_event_bus_get_default ();
	_tmp11_ = _tmp10_;
	_tmp12_ = g_signal_connect_object (_tmp11_, "mobile-mode-change", (GCallback) ___lambda156__services_event_bus_mobile_mode_change, self, 0);
	_tmp13_ = services_event_bus_get_default ();
	_tmp14_ = _tmp13_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp9_, (gpointer) ((guintptr) _tmp12_), (GObject*) _tmp14_);
	_g_object_unref0 (_tmp14_);
	_g_object_unref0 (_tmp11_);
	_tmp15_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp16_ = services_event_bus_get_default ();
	_tmp17_ = _tmp16_;
	_tmp18_ = g_signal_connect_object (_tmp17_, "item-selected", (GCallback) ___lambda157__services_event_bus_item_selected, self, 0);
	_tmp19_ = services_event_bus_get_default ();
	_tmp20_ = _tmp19_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp15_, (gpointer) ((guintptr) _tmp18_), (GObject*) _tmp20_);
	_g_object_unref0 (_tmp20_);
	_g_object_unref0 (_tmp17_);
	_tmp21_ = (GtkEventControllerKey*) gtk_event_controller_key_new ();
	content_controller_key = _tmp21_;
	_tmp22_ = self->priv->content_textview;
	_tmp23_ = _g_object_ref0 ((GtkEventController*) content_controller_key);
	gtk_widget_add_controller ((GtkWidget*) _tmp22_, _tmp23_);
	_tmp24_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp25_ = g_signal_connect_object (content_controller_key, "key-pressed", (GCallback) ___lambda158__gtk_event_controller_key_key_pressed, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp24_, (gpointer) ((guintptr) _tmp25_), (GObject*) content_controller_key);
	_tmp26_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp27_ = g_signal_connect_object (content_controller_key, "key-released", (GCallback) ___lambda159__gtk_event_controller_key_key_released, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp26_, (gpointer) ((guintptr) _tmp27_), (GObject*) content_controller_key);
	_tmp28_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data29_->checked_button_gesture = _tmp28_;
	_tmp29_ = self->priv->checked_button;
	_tmp30_ = _g_object_ref0 ((GtkEventController*) _data29_->checked_button_gesture);
	gtk_widget_add_controller ((GtkWidget*) _tmp29_, _tmp30_);
	_tmp31_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp32_ = g_signal_connect_data (_data29_->checked_button_gesture, "pressed", (GCallback) ___lambda160__gtk_gesture_click_pressed, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp31_, (gpointer) ((guintptr) _tmp32_), (GObject*) _data29_->checked_button_gesture);
	_tmp33_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp34_ = self->priv->checked_button;
	_tmp35_ = g_signal_connect_data (_tmp34_, "toggled", (GCallback) ___lambda164__gtk_check_button_toggled, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	_tmp36_ = self->priv->checked_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp33_, (gpointer) ((guintptr) _tmp35_), (GObject*) _tmp36_);
	_tmp37_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp38_ = self->priv->hide_loading_button;
	_tmp39_ = g_signal_connect_object ((GtkButton*) _tmp38_, "clicked", (GCallback) ___lambda165__gtk_button_clicked, self, 0);
	_tmp40_ = self->priv->hide_loading_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp37_, (gpointer) ((guintptr) _tmp39_), (GObject*) _tmp40_);
	_tmp41_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp42_ = self->priv->pin_button;
	_tmp43_ = g_signal_connect_object (_tmp42_, "changed", (GCallback) ___lambda167__widgets_pin_button_changed, self, 0);
	_tmp44_ = self->priv->pin_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp41_, (gpointer) ((guintptr) _tmp43_), (GObject*) _tmp44_);
	_tmp45_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp46_ = services_settings_get_default ();
	_tmp47_ = _tmp46_;
	_tmp48_ = _tmp47_->settings;
	_tmp49_ = g_signal_connect_object (_tmp48_, "changed::underline-completed-tasks", (GCallback) _layouts_item_base_update_request_g_settings_changed, (LayoutsItemBase*) self, 0);
	_tmp50_ = services_settings_get_default ();
	_tmp51_ = _tmp50_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp45_, (gpointer) ((guintptr) _tmp49_), (GObject*) _tmp51_);
	_g_object_unref0 (_tmp51_);
	_g_object_unref0 (_tmp47_);
	_tmp52_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp53_ = services_settings_get_default ();
	_tmp54_ = _tmp53_;
	_tmp55_ = _tmp54_->settings;
	_tmp56_ = g_signal_connect_object (_tmp55_, "changed::clock-format", (GCallback) _layouts_item_base_update_request_g_settings_changed, (LayoutsItemBase*) self, 0);
	_tmp57_ = services_settings_get_default ();
	_tmp58_ = _tmp57_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp52_, (gpointer) ((guintptr) _tmp56_), (GObject*) _tmp58_);
	_g_object_unref0 (_tmp58_);
	_g_object_unref0 (_tmp54_);
	_tmp59_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data29_->menu_handle_gesture = _tmp59_;
	gtk_gesture_single_set_button ((GtkGestureSingle*) _data29_->menu_handle_gesture, (guint) 3);
	_tmp60_ = self->itemrow_box;
	_tmp61_ = _g_object_ref0 ((GtkEventController*) _data29_->menu_handle_gesture);
	gtk_widget_add_controller ((GtkWidget*) _tmp60_, _tmp61_);
	_tmp62_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp63_ = g_signal_connect_data (_data29_->menu_handle_gesture, "pressed", (GCallback) ___lambda168__gtk_gesture_click_pressed, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp62_, (gpointer) ((guintptr) _tmp63_), (GObject*) _data29_->menu_handle_gesture);
	_tmp64_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data29_->multiselect_gesture = _tmp64_;
	_tmp65_ = self->priv->select_checkbutton;
	_tmp66_ = _g_object_ref0 ((GtkEventController*) _data29_->multiselect_gesture);
	gtk_widget_add_controller ((GtkWidget*) _tmp65_, _tmp66_);
	_tmp67_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp68_ = g_signal_connect_data (_data29_->multiselect_gesture, "pressed", (GCallback) ___lambda184__gtk_gesture_click_pressed, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp67_, (gpointer) ((guintptr) _tmp68_), (GObject*) _data29_->multiselect_gesture);
	_tmp69_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp70_ = services_event_bus_get_default ();
	_tmp71_ = _tmp70_;
	_tmp72_ = g_signal_connect_object (_tmp71_, "show-multi-select", (GCallback) ___lambda185__services_event_bus_show_multi_select, self, 0);
	_tmp73_ = services_event_bus_get_default ();
	_tmp74_ = _tmp73_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp69_, (gpointer) ((guintptr) _tmp72_), (GObject*) _tmp74_);
	_g_object_unref0 (_tmp74_);
	_g_object_unref0 (_tmp71_);
	_tmp75_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data29_->add_subitem_gesture = _tmp75_;
	_tmp76_ = self->priv->add_subtasks_button;
	_tmp77_ = _g_object_ref0 ((GtkEventController*) _data29_->add_subitem_gesture);
	gtk_widget_add_controller ((GtkWidget*) _tmp76_, _tmp77_);
	_tmp78_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp79_ = g_signal_connect_data (_data29_->add_subitem_gesture, "pressed", (GCallback) ___lambda186__gtk_gesture_click_pressed, block29_data_ref (_data29_), (GClosureNotify) block29_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp78_, (gpointer) ((guintptr) _tmp79_), (GObject*) _data29_->add_subitem_gesture);
	_tmp80_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp81_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp82_ = _tmp81_;
	_tmp83_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp82_, "loading-change", (GCallback) ___lambda187__objects_base_object_loading_change, self, 0);
	_tmp84_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp85_ = _tmp84_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp80_, (gpointer) ((guintptr) _tmp83_), (GObject*) _tmp85_);
	_tmp86_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp87_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp88_ = _tmp87_;
	_tmp89_ = g_signal_connect_object ((ObjectsBaseObject*) _tmp88_, "sensitive-change", (GCallback) ___lambda188__objects_base_object_sensitive_change, self, 0);
	_tmp90_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp91_ = _tmp90_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp86_, (gpointer) ((guintptr) _tmp89_), (GObject*) _tmp91_);
	_tmp92_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp93_ = self->priv->hide_subtask_button;
	_tmp94_ = g_signal_connect_object (_tmp93_, "clicked", (GCallback) ___lambda189__gtk_button_clicked, self, 0);
	_tmp95_ = self->priv->hide_subtask_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp92_, (gpointer) ((guintptr) _tmp94_), (GObject*) _tmp95_);
	_tmp96_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp97_ = self->priv->show_subtasks_button;
	_tmp98_ = g_signal_connect_object (_tmp97_, "clicked", (GCallback) ___lambda190__gtk_button_clicked, self, 0);
	_tmp99_ = self->priv->show_subtasks_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp96_, (gpointer) ((guintptr) _tmp98_), (GObject*) _tmp99_);
	_tmp100_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp101_ = self->priv->subitems;
	_tmp102_ = g_signal_connect_object (_tmp101_, "children-changes", (GCallback) ___lambda191__widgets_sub_items_children_changes, self, 0);
	_tmp103_ = self->priv->subitems;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp100_, (gpointer) ((guintptr) _tmp102_), (GObject*) _tmp103_);
	_tmp104_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp105_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp106_ = _tmp105_;
	_tmp107_ = g_signal_connect_object (_tmp106_, "collapsed-change", (GCallback) ___lambda192__objects_item_collapsed_change, self, 0);
	_tmp108_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp109_ = _tmp108_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp104_, (gpointer) ((guintptr) _tmp107_), (GObject*) _tmp109_);
	_tmp110_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp111_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp112_ = _tmp111_;
	_tmp113_ = g_signal_connect_object (_tmp112_, "show-item-changed", (GCallback) ___lambda193__objects_item_show_item_changed, self, 0);
	_tmp114_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp115_ = _tmp114_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp110_, (gpointer) ((guintptr) _tmp113_), (GObject*) _tmp115_);
	_tmp116_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp117_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp118_ = _tmp117_;
	_tmp119_ = g_signal_connect_object (_tmp118_, "reminder-added", (GCallback) ___lambda194__objects_item_reminder_added, self, 0);
	_tmp120_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp121_ = _tmp120_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp116_, (gpointer) ((guintptr) _tmp119_), (GObject*) _tmp121_);
	_tmp122_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp123_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp124_ = _tmp123_;
	_tmp125_ = g_signal_connect_object (_tmp124_, "reminder-deleted", (GCallback) ___lambda195__objects_item_reminder_deleted, self, 0);
	_tmp126_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp127_ = _tmp126_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp122_, (gpointer) ((guintptr) _tmp125_), (GObject*) _tmp127_);
	_tmp128_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp129_ = services_event_bus_get_default ();
	_tmp130_ = _tmp129_;
	_tmp131_ = g_signal_connect_object (_tmp130_, "drag-items-end", (GCallback) ___lambda196__services_event_bus_drag_items_end, self, 0);
	_tmp132_ = services_event_bus_get_default ();
	_tmp133_ = _tmp132_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp128_, (gpointer) ((guintptr) _tmp131_), (GObject*) _tmp133_);
	_g_object_unref0 (_tmp133_);
	_g_object_unref0 (_tmp130_);
	_tmp134_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp135_ = services_event_bus_get_default ();
	_tmp136_ = _tmp135_;
	_tmp137_ = g_signal_connect_object (_tmp136_, "close-item-edit", (GCallback) ___lambda197__services_event_bus_close_item_edit, self, 0);
	_tmp138_ = services_event_bus_get_default ();
	_tmp139_ = _tmp138_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp134_, (gpointer) ((guintptr) _tmp137_), (GObject*) _tmp139_);
	_g_object_unref0 (_tmp139_);
	_g_object_unref0 (_tmp136_);
	_tmp140_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp141_ = services_event_bus_get_default ();
	_tmp142_ = _tmp141_;
	_tmp143_ = g_signal_connect_object (_tmp142_, "dim-content", (GCallback) ___lambda198__services_event_bus_dim_content, self, 0);
	_tmp144_ = services_event_bus_get_default ();
	_tmp145_ = _tmp144_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp140_, (gpointer) ((guintptr) _tmp143_), (GObject*) _tmp145_);
	_g_object_unref0 (_tmp145_);
	_g_object_unref0 (_tmp142_);
	_tmp146_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp147_ = services_event_bus_get_default ();
	_tmp148_ = _tmp147_;
	_tmp149_ = g_signal_connect_object (_tmp148_, "dim-content", (GCallback) ___lambda199__services_event_bus_dim_content, self, 0);
	_tmp150_ = services_event_bus_get_default ();
	_tmp151_ = _tmp150_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp146_, (gpointer) ((guintptr) _tmp149_), (GObject*) _tmp151_);
	_g_object_unref0 (_tmp151_);
	_g_object_unref0 (_tmp148_);
	_tmp152_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp153_ = services_event_bus_get_default ();
	_tmp154_ = _tmp153_;
	_tmp155_ = g_signal_connect_object (_tmp154_, "day-changed", (GCallback) ___lambda200__services_event_bus_day_changed, self, 0);
	_tmp156_ = services_event_bus_get_default ();
	_tmp157_ = _tmp156_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp152_, (gpointer) ((guintptr) _tmp155_), (GObject*) _tmp157_);
	_g_object_unref0 (_tmp157_);
	_g_object_unref0 (_tmp154_);
	_tmp158_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp159_ = g_signal_connect_object ((GObject*) self, "notify::edit", (GCallback) ___lambda201__g_object_notify, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp158_, (gpointer) ((guintptr) _tmp159_), (GObject*) self);
	_g_object_unref0 (content_controller_key);
	block29_data_unref (_data29_);
	_data29_ = NULL;
}

static void
layouts_item_row_show_details (LayoutsItemRow* self)
{
	ServicesSettings* _tmp0_;
	ServicesSettings* _tmp1_;
	GSettings* _tmp2_;
	gboolean _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = services_settings_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = _tmp1_->settings;
	_tmp3_ = g_settings_get_boolean (_tmp2_, "open-task-sidebar");
	_g_object_unref0 (_tmp1_);
	if (_tmp3_) {
		ServicesEventBus* _tmp4_;
		ServicesEventBus* _tmp5_;
		ObjectsItem* _tmp6_;
		ObjectsItem* _tmp7_;
		_tmp4_ = services_event_bus_get_default ();
		_tmp5_ = _tmp4_;
		_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp7_ = _tmp6_;
		g_signal_emit_by_name (_tmp5_, "open-item", _tmp7_);
		_g_object_unref0 (_tmp5_);
	} else {
		ServicesSettings* _tmp8_;
		ServicesSettings* _tmp9_;
		GSettings* _tmp10_;
		gboolean _tmp11_;
		_tmp8_ = services_settings_get_default ();
		_tmp9_ = _tmp8_;
		_tmp10_ = _tmp9_->settings;
		_tmp11_ = g_settings_get_boolean (_tmp10_, "attention-at-one");
		_g_object_unref0 (_tmp9_);
		if (_tmp11_) {
			ServicesEventBus* _tmp12_;
			ServicesEventBus* _tmp13_;
			ServicesEventBus* _tmp14_;
			ServicesEventBus* _tmp15_;
			ObjectsItem* _tmp16_;
			ObjectsItem* _tmp17_;
			const gchar* _tmp18_;
			const gchar* _tmp19_;
			layouts_item_row_set_edit (self, TRUE);
			_tmp12_ = services_event_bus_get_default ();
			_tmp13_ = _tmp12_;
			_tmp13_->item_edit_active = TRUE;
			_g_object_unref0 (_tmp13_);
			_tmp14_ = services_event_bus_get_default ();
			_tmp15_ = _tmp14_;
			_tmp16_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp17_ = _tmp16_;
			_tmp18_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp17_);
			_tmp19_ = _tmp18_;
			g_signal_emit_by_name (_tmp15_, "dim-content", TRUE, _tmp19_);
			_g_object_unref0 (_tmp15_);
		} else {
			layouts_item_row_set_edit (self, TRUE);
		}
	}
}

void
layouts_item_row_check_hide_subtask_button (LayoutsItemRow* self)
{
	gboolean _tmp0_;
	gboolean _tmp1_;
	g_return_if_fail (self != NULL);
	_tmp0_ = layouts_item_row_get_edit (self);
	_tmp1_ = _tmp0_;
	if (!_tmp1_) {
		GtkRevealer* _tmp2_;
		WidgetsSubItems* _tmp3_;
		gboolean _tmp4_;
		gboolean _tmp5_;
		_tmp2_ = self->priv->hide_subtask_revealer;
		_tmp3_ = self->priv->subitems;
		_tmp4_ = widgets_sub_items_get_has_children (_tmp3_);
		_tmp5_ = _tmp4_;
		gtk_revealer_set_reveal_child (_tmp2_, _tmp5_);
	}
}

static void
layouts_item_row_selected_toggled (LayoutsItemRow* self,
                                   gboolean active)
{
	GtkCheckButton* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->select_checkbutton;
	_tmp1_ = gtk_check_button_get_active (_tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		ServicesEventBus* _tmp3_;
		ServicesEventBus* _tmp4_;
		_tmp3_ = services_event_bus_get_default ();
		_tmp4_ = _tmp3_;
		g_signal_emit_by_name (_tmp4_, "select-item", (GtkWidget*) self);
		_g_object_unref0 (_tmp4_);
	} else {
		ServicesEventBus* _tmp5_;
		ServicesEventBus* _tmp6_;
		_tmp5_ = services_event_bus_get_default ();
		_tmp6_ = _tmp5_;
		g_signal_emit_by_name (_tmp6_, "unselect-item", (GtkWidget*) self);
		_g_object_unref0 (_tmp6_);
	}
}

static void
layouts_item_row_real_select_row (LayoutsItemBase* base,
                                  gboolean active)
{
	LayoutsItemRow * self;
	self = (LayoutsItemRow*) base;
	if (active) {
		AdwBin* _tmp0_;
		_tmp0_ = self->itemrow_box;
		gtk_widget_add_css_class ((GtkWidget*) _tmp0_, "complete");
	} else {
		AdwBin* _tmp1_;
		_tmp1_ = self->itemrow_box;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp1_, "complete");
	}
}

static gchar*
string_strip (const gchar* self)
{
	gchar* _result_ = NULL;
	gchar* _tmp0_;
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = g_strdup (self);
	_result_ = _tmp0_;
	g_strstrip (_result_);
	result = _result_;
	return result;
}

static gchar*
string_chomp (const gchar* self)
{
	gchar* _result_ = NULL;
	gchar* _tmp0_;
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = g_strdup (self);
	_result_ = _tmp0_;
	g_strchomp (_result_);
	result = _result_;
	return result;
}

static void
layouts_item_row_update_content_description (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	WidgetsTextView* _tmp4_;
	GtkTextBuffer* _tmp5_;
	GtkTextBuffer* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gboolean _tmp10_;
	gboolean _tmp51_ = FALSE;
	WidgetsMarkdownEditor* _tmp52_;
	g_return_if_fail (self != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_content (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = self->priv->content_textview;
	_tmp5_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp4_);
	_tmp6_ = _tmp5_;
	g_object_get (_tmp6_, "text", &_tmp7_, NULL);
	_tmp8_ = _tmp7_;
	_tmp9_ = _tmp8_;
	_tmp10_ = g_strcmp0 (_tmp3_, _tmp9_) != 0;
	_g_free0 (_tmp9_);
	if (_tmp10_) {
		ObjectsItem* _tmp11_;
		ObjectsItem* _tmp12_;
		WidgetsTextView* _tmp13_;
		GtkTextBuffer* _tmp14_;
		GtkTextBuffer* _tmp15_;
		gchar* _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		ItemType _tmp19_ = 0;
		ObjectsItem* _tmp20_;
		ObjectsItem* _tmp21_;
		const gchar* _tmp22_;
		const gchar* _tmp23_;
		ObjectsItem* _tmp24_;
		ObjectsItem* _tmp25_;
		GtkLabel* _tmp26_;
		MarkdownProcessor* _tmp27_;
		MarkdownProcessor* _tmp28_;
		ObjectsItem* _tmp29_;
		ObjectsItem* _tmp30_;
		const gchar* _tmp31_;
		const gchar* _tmp32_;
		gchar* _tmp33_;
		gchar* _tmp34_;
		GtkLabel* _tmp35_;
		ObjectsItem* _tmp36_;
		ObjectsItem* _tmp37_;
		const gchar* _tmp38_;
		const gchar* _tmp39_;
		gchar* _tmp40_;
		gchar* _tmp41_;
		GtkLabel* _tmp42_;
		ObjectsItem* _tmp43_;
		ObjectsItem* _tmp44_;
		const gchar* _tmp45_;
		const gchar* _tmp46_;
		ObjectsItem* _tmp47_;
		ObjectsItem* _tmp48_;
		const gchar* _tmp49_;
		const gchar* _tmp50_;
		_tmp11_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp12_ = _tmp11_;
		_tmp13_ = self->priv->content_textview;
		_tmp14_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp13_);
		_tmp15_ = _tmp14_;
		g_object_get (_tmp15_, "text", &_tmp16_, NULL);
		_tmp17_ = _tmp16_;
		_tmp18_ = _tmp17_;
		objects_item_set_content (_tmp12_, _tmp18_);
		_g_free0 (_tmp18_);
		_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp21_ = _tmp20_;
		_tmp22_ = objects_item_get_content (_tmp21_);
		_tmp23_ = _tmp22_;
		if (g_str_has_prefix (_tmp23_, "* ")) {
			_tmp19_ = ITEM_TYPE_NOTE;
		} else {
			_tmp19_ = ITEM_TYPE_TASK;
		}
		_tmp24_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp25_ = _tmp24_;
		objects_item_set_item_type (_tmp25_, _tmp19_);
		_tmp26_ = self->priv->content_label;
		_tmp27_ = markdown_processor_get_default ();
		_tmp28_ = _tmp27_;
		_tmp29_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp30_ = _tmp29_;
		_tmp31_ = objects_item_get_content (_tmp30_);
		_tmp32_ = _tmp31_;
		_tmp33_ = markdown_processor_markup_string (_tmp28_, _tmp32_);
		_tmp34_ = _tmp33_;
		gtk_label_set_label (_tmp26_, _tmp34_);
		_g_free0 (_tmp34_);
		_g_object_unref0 (_tmp28_);
		_tmp35_ = self->priv->content_label;
		_tmp36_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp37_ = _tmp36_;
		_tmp38_ = objects_item_get_content (_tmp37_);
		_tmp39_ = _tmp38_;
		_tmp40_ = string_strip (_tmp39_);
		_tmp41_ = _tmp40_;
		gtk_widget_set_tooltip_text ((GtkWidget*) _tmp35_, _tmp41_);
		_g_free0 (_tmp41_);
		_tmp42_ = self->priv->content_label;
		_tmp43_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp44_ = _tmp43_;
		_tmp45_ = objects_item_get_content (_tmp44_);
		_tmp46_ = _tmp45_;
		gtk_accessible_update_property ((GtkAccessible*) _tmp42_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp46_, -1, -1);
		_layouts_item_row_verify_item_type (self);
		_tmp47_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp48_ = _tmp47_;
		_tmp49_ = layouts_item_base_get_update_id ((LayoutsItemBase*) self);
		_tmp50_ = _tmp49_;
		objects_item_update_async_timeout (_tmp48_, _tmp50_);
		return;
	}
	_tmp52_ = self->priv->markdown_editor;
	if (_tmp52_ != NULL) {
		ObjectsItem* _tmp53_;
		ObjectsItem* _tmp54_;
		const gchar* _tmp55_;
		const gchar* _tmp56_;
		WidgetsMarkdownEditor* _tmp57_;
		gchar* _tmp58_;
		gchar* _tmp59_;
		gchar* _tmp60_;
		gchar* _tmp61_;
		_tmp53_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp54_ = _tmp53_;
		_tmp55_ = objects_item_get_description (_tmp54_);
		_tmp56_ = _tmp55_;
		_tmp57_ = self->priv->markdown_editor;
		_tmp58_ = widgets_markdown_editor_get_text (_tmp57_);
		_tmp59_ = _tmp58_;
		_tmp60_ = string_chomp (_tmp59_);
		_tmp61_ = _tmp60_;
		_tmp51_ = g_strcmp0 (_tmp56_, _tmp61_) != 0;
		_g_free0 (_tmp61_);
		_g_free0 (_tmp59_);
	} else {
		_tmp51_ = FALSE;
	}
	if (_tmp51_) {
		ObjectsItem* _tmp62_;
		ObjectsItem* _tmp63_;
		WidgetsMarkdownEditor* _tmp64_;
		gchar* _tmp65_;
		gchar* _tmp66_;
		gchar* _tmp67_;
		gchar* _tmp68_;
		ObjectsItem* _tmp69_;
		ObjectsItem* _tmp70_;
		const gchar* _tmp71_;
		const gchar* _tmp72_;
		_tmp62_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp63_ = _tmp62_;
		_tmp64_ = self->priv->markdown_editor;
		_tmp65_ = widgets_markdown_editor_get_text (_tmp64_);
		_tmp66_ = _tmp65_;
		_tmp67_ = string_chomp (_tmp66_);
		_tmp68_ = _tmp67_;
		objects_item_set_description (_tmp63_, _tmp68_);
		_g_free0 (_tmp68_);
		_g_free0 (_tmp66_);
		_tmp69_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp70_ = _tmp69_;
		_tmp71_ = layouts_item_base_get_update_id ((LayoutsItemBase*) self);
		_tmp72_ = _tmp71_;
		objects_item_update_async_timeout (_tmp70_, _tmp72_);
		return;
	}
}

static void
layouts_item_row_real_update_request (LayoutsItemBase* base)
{
	LayoutsItemRow * self;
	guint _tmp0_;
	GtkLabel* _tmp31_;
	MarkdownProcessor* _tmp32_;
	MarkdownProcessor* _tmp33_;
	ObjectsItem* _tmp34_;
	ObjectsItem* _tmp35_;
	const gchar* _tmp36_;
	const gchar* _tmp37_;
	gchar* _tmp38_;
	gchar* _tmp39_;
	GtkLabel* _tmp40_;
	ObjectsItem* _tmp41_;
	ObjectsItem* _tmp42_;
	const gchar* _tmp43_;
	const gchar* _tmp44_;
	GtkLabel* _tmp45_;
	ObjectsItem* _tmp46_;
	ObjectsItem* _tmp47_;
	const gchar* _tmp48_;
	const gchar* _tmp49_;
	WidgetsTextView* _tmp50_;
	ObjectsItem* _tmp51_;
	ObjectsItem* _tmp52_;
	const gchar* _tmp53_;
	const gchar* _tmp54_;
	WidgetsMarkdownEditor* _tmp55_;
	GtkLabel* _tmp61_;
	ObjectsItem* _tmp62_;
	ObjectsItem* _tmp63_;
	ObjectsProject* _tmp64_;
	ObjectsProject* _tmp65_;
	const gchar* _tmp66_;
	const gchar* _tmp67_;
	ObjectsItem* _tmp68_;
	ObjectsItem* _tmp69_;
	gboolean _tmp70_;
	gboolean _tmp71_;
	GtkLabel* _tmp106_;
	GtkLabel* _tmp107_;
	const gchar* _tmp108_;
	const gchar* _tmp109_;
	WidgetsLabelsSummary* _tmp110_;
	WidgetsLabelPickerLabelButton* _tmp111_;
	WidgetsScheduleButton* _tmp117_;
	WidgetsPriorityButton* _tmp121_;
	WidgetsPinButton* _tmp125_;
	ObjectsItem* _tmp126_;
	ObjectsItem* _tmp127_;
	WidgetsReminderPickerReminderButton* _tmp128_;
	WidgetsDeadlineButton* _tmp134_;
	WidgetsDeadlineButton* _tmp145_;
	const gchar* _tmp156_ = NULL;
	ObjectsItem* _tmp157_;
	ObjectsItem* _tmp158_;
	gboolean _tmp159_;
	gboolean _tmp160_;
	GtkLabel* _tmp161_;
	gboolean _tmp162_;
	gboolean _tmp163_;
	gboolean _tmp253_ = FALSE;
	ObjectsItem* _tmp254_;
	ObjectsItem* _tmp255_;
	gboolean _tmp256_;
	gboolean _tmp257_;
	self = (LayoutsItemRow*) base;
	if (self->priv->_recurrency_reset) {
		return;
	}
	_tmp0_ = self->priv->_complete_timeout;
	if (_tmp0_ <= ((guint) 0)) {
		Util* _tmp1_;
		Util* _tmp2_;
		ObjectsItem* _tmp3_;
		ObjectsItem* _tmp4_;
		gint _tmp5_;
		gint _tmp6_;
		GtkCheckButton* _tmp7_;
		GtkCheckButton* _tmp8_;
		ObjectsItem* _tmp9_;
		ObjectsItem* _tmp10_;
		gboolean _tmp11_;
		gboolean _tmp12_;
		gboolean _tmp13_ = FALSE;
		ObjectsItem* _tmp14_;
		ObjectsItem* _tmp15_;
		gboolean _tmp16_;
		gboolean _tmp17_;
		_tmp1_ = util_get_default ();
		_tmp2_ = _tmp1_;
		_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp4_ = _tmp3_;
		_tmp5_ = objects_item_get_priority (_tmp4_);
		_tmp6_ = _tmp5_;
		_tmp7_ = self->priv->checked_button;
		util_set_widget_priority (_tmp2_, _tmp6_, (GtkWidget*) _tmp7_);
		_g_object_unref0 (_tmp2_);
		_tmp8_ = self->priv->checked_button;
		_tmp9_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp10_ = _tmp9_;
		_tmp11_ = objects_item_get_completed (_tmp10_);
		_tmp12_ = _tmp11_;
		gtk_check_button_set_active (_tmp8_, _tmp12_);
		_tmp14_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp15_ = _tmp14_;
		_tmp16_ = objects_item_get_completed (_tmp15_);
		_tmp17_ = _tmp16_;
		if (_tmp17_) {
			ServicesSettings* _tmp18_;
			ServicesSettings* _tmp19_;
			GSettings* _tmp20_;
			_tmp18_ = services_settings_get_default ();
			_tmp19_ = _tmp18_;
			_tmp20_ = _tmp19_->settings;
			_tmp13_ = g_settings_get_boolean (_tmp20_, "underline-completed-tasks");
			_g_object_unref0 (_tmp19_);
		} else {
			_tmp13_ = FALSE;
		}
		if (_tmp13_) {
			GtkLabel* _tmp21_;
			_tmp21_ = self->priv->content_label;
			gtk_widget_add_css_class ((GtkWidget*) _tmp21_, "line-through");
		} else {
			gboolean _tmp22_ = FALSE;
			ObjectsItem* _tmp23_;
			ObjectsItem* _tmp24_;
			gboolean _tmp25_;
			gboolean _tmp26_;
			_tmp23_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp24_ = _tmp23_;
			_tmp25_ = objects_item_get_completed (_tmp24_);
			_tmp26_ = _tmp25_;
			if (_tmp26_) {
				ServicesSettings* _tmp27_;
				ServicesSettings* _tmp28_;
				GSettings* _tmp29_;
				_tmp27_ = services_settings_get_default ();
				_tmp28_ = _tmp27_;
				_tmp29_ = _tmp28_->settings;
				_tmp22_ = !g_settings_get_boolean (_tmp29_, "underline-completed-tasks");
				_g_object_unref0 (_tmp28_);
			} else {
				_tmp22_ = FALSE;
			}
			if (_tmp22_) {
				GtkLabel* _tmp30_;
				_tmp30_ = self->priv->content_label;
				gtk_widget_remove_css_class ((GtkWidget*) _tmp30_, "line-through");
			}
		}
	}
	_tmp31_ = self->priv->content_label;
	_tmp32_ = markdown_processor_get_default ();
	_tmp33_ = _tmp32_;
	_tmp34_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp35_ = _tmp34_;
	_tmp36_ = objects_item_get_content (_tmp35_);
	_tmp37_ = _tmp36_;
	_tmp38_ = markdown_processor_markup_string (_tmp33_, _tmp37_);
	_tmp39_ = _tmp38_;
	gtk_label_set_label (_tmp31_, _tmp39_);
	_g_free0 (_tmp39_);
	_g_object_unref0 (_tmp33_);
	_tmp40_ = self->priv->content_label;
	_tmp41_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp42_ = _tmp41_;
	_tmp43_ = objects_item_get_content (_tmp42_);
	_tmp44_ = _tmp43_;
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp40_, _tmp44_);
	_tmp45_ = self->priv->content_label;
	_tmp46_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp47_ = _tmp46_;
	_tmp48_ = objects_item_get_content (_tmp47_);
	_tmp49_ = _tmp48_;
	gtk_accessible_update_property ((GtkAccessible*) _tmp45_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp49_, -1, -1);
	_tmp50_ = self->priv->content_textview;
	_tmp51_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp52_ = _tmp51_;
	_tmp53_ = objects_item_get_content (_tmp52_);
	_tmp54_ = _tmp53_;
	widgets_text_view_set_text (_tmp50_, _tmp54_);
	_layouts_item_row_verify_item_type (self);
	_tmp55_ = self->priv->markdown_editor;
	if (_tmp55_ != NULL) {
		WidgetsMarkdownEditor* _tmp56_;
		ObjectsItem* _tmp57_;
		ObjectsItem* _tmp58_;
		const gchar* _tmp59_;
		const gchar* _tmp60_;
		layouts_item_row_destroy_markdown_signals (self);
		_tmp56_ = self->priv->markdown_editor;
		_tmp57_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp58_ = _tmp57_;
		_tmp59_ = objects_item_get_description (_tmp58_);
		_tmp60_ = _tmp59_;
		widgets_markdown_editor_set_text (_tmp56_, _tmp60_);
		layouts_item_row_build_markdown_signals (self);
	}
	_tmp61_ = self->priv->project_name_label;
	_tmp62_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp63_ = _tmp62_;
	_tmp64_ = objects_item_get_project (_tmp63_);
	_tmp65_ = _tmp64_;
	_tmp66_ = objects_base_object_get_name ((ObjectsBaseObject*) _tmp65_);
	_tmp67_ = _tmp66_;
	gtk_label_set_label (_tmp61_, _tmp67_);
	_tmp68_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp69_ = _tmp68_;
	_tmp70_ = objects_item_get_has_parent (_tmp69_);
	_tmp71_ = _tmp70_;
	if (_tmp71_) {
		ObjectsItem* _tmp72_;
		ObjectsItem* _tmp73_;
		ObjectsItem* _tmp74_;
		ObjectsItem* _tmp75_;
		gboolean _tmp76_;
		gboolean _tmp77_;
		_tmp72_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp73_ = _tmp72_;
		_tmp74_ = objects_item_get_parent (_tmp73_);
		_tmp75_ = _tmp74_;
		_tmp76_ = objects_item_get_has_parent (_tmp75_);
		_tmp77_ = _tmp76_;
		if (_tmp77_) {
			GtkLabel* _tmp78_;
			GtkLabel* _tmp79_;
			const gchar* _tmp80_;
			const gchar* _tmp81_;
			ObjectsItem* _tmp82_;
			ObjectsItem* _tmp83_;
			ObjectsItem* _tmp84_;
			ObjectsItem* _tmp85_;
			const gchar* _tmp86_;
			const gchar* _tmp87_;
			gchar* _tmp88_;
			gchar* _tmp89_;
			gchar* _tmp90_;
			gchar* _tmp91_;
			_tmp78_ = self->priv->project_name_label;
			_tmp79_ = self->priv->project_name_label;
			_tmp80_ = gtk_label_get_label (_tmp79_);
			_tmp81_ = _tmp80_;
			_tmp82_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp83_ = _tmp82_;
			_tmp84_ = objects_item_get_parent (_tmp83_);
			_tmp85_ = _tmp84_;
			_tmp86_ = objects_item_get_content (_tmp85_);
			_tmp87_ = _tmp86_;
			_tmp88_ = g_strconcat (" /…/ ", _tmp87_, NULL);
			_tmp89_ = _tmp88_;
			_tmp90_ = g_strconcat (_tmp81_, _tmp89_, NULL);
			_tmp91_ = _tmp90_;
			gtk_label_set_label (_tmp79_, _tmp91_);
			_g_free0 (_tmp91_);
			_g_free0 (_tmp89_);
		} else {
			GtkLabel* _tmp92_;
			GtkLabel* _tmp93_;
			const gchar* _tmp94_;
			const gchar* _tmp95_;
			ObjectsItem* _tmp96_;
			ObjectsItem* _tmp97_;
			ObjectsItem* _tmp98_;
			ObjectsItem* _tmp99_;
			const gchar* _tmp100_;
			const gchar* _tmp101_;
			gchar* _tmp102_;
			gchar* _tmp103_;
			gchar* _tmp104_;
			gchar* _tmp105_;
			_tmp92_ = self->priv->project_name_label;
			_tmp93_ = self->priv->project_name_label;
			_tmp94_ = gtk_label_get_label (_tmp93_);
			_tmp95_ = _tmp94_;
			_tmp96_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp97_ = _tmp96_;
			_tmp98_ = objects_item_get_parent (_tmp97_);
			_tmp99_ = _tmp98_;
			_tmp100_ = objects_item_get_content (_tmp99_);
			_tmp101_ = _tmp100_;
			_tmp102_ = g_strconcat (" / ", _tmp101_, NULL);
			_tmp103_ = _tmp102_;
			_tmp104_ = g_strconcat (_tmp95_, _tmp103_, NULL);
			_tmp105_ = _tmp104_;
			gtk_label_set_label (_tmp93_, _tmp105_);
			_g_free0 (_tmp105_);
			_g_free0 (_tmp103_);
		}
	}
	_tmp106_ = self->priv->project_name_label;
	_tmp107_ = self->priv->project_name_label;
	_tmp108_ = gtk_label_get_label (_tmp107_);
	_tmp109_ = _tmp108_;
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp106_, _tmp109_);
	_tmp110_ = self->priv->labels_summary;
	widgets_labels_summary_update_request (_tmp110_);
	_tmp111_ = self->priv->label_button;
	if (_tmp111_ != NULL) {
		WidgetsLabelPickerLabelButton* _tmp112_;
		ObjectsItem* _tmp113_;
		ObjectsItem* _tmp114_;
		GeeArrayList* _tmp115_;
		GeeArrayList* _tmp116_;
		_tmp112_ = self->priv->label_button;
		_tmp113_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp114_ = _tmp113_;
		_tmp115_ = objects_item_get_labels_list (_tmp114_);
		_tmp116_ = _tmp115_;
		widgets_label_picker_label_button_set_labels (_tmp112_, _tmp116_);
		_g_object_unref0 (_tmp116_);
	}
	_tmp117_ = self->priv->schedule_button;
	if (_tmp117_ != NULL) {
		WidgetsScheduleButton* _tmp118_;
		ObjectsItem* _tmp119_;
		ObjectsItem* _tmp120_;
		_tmp118_ = self->priv->schedule_button;
		_tmp119_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp120_ = _tmp119_;
		widgets_schedule_button_update_from_item (_tmp118_, _tmp120_);
	}
	_tmp121_ = self->priv->priority_button;
	if (_tmp121_ != NULL) {
		WidgetsPriorityButton* _tmp122_;
		ObjectsItem* _tmp123_;
		ObjectsItem* _tmp124_;
		_tmp122_ = self->priv->priority_button;
		_tmp123_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp124_ = _tmp123_;
		widgets_priority_button_update_from_item (_tmp122_, _tmp124_);
	}
	_tmp125_ = self->priv->pin_button;
	_tmp126_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp127_ = _tmp126_;
	widgets_pin_button_update_from_item (_tmp125_, _tmp127_);
	_tmp128_ = self->priv->reminder_button;
	if (_tmp128_ != NULL) {
		WidgetsReminderPickerReminderButton* _tmp129_;
		ObjectsItem* _tmp130_;
		ObjectsItem* _tmp131_;
		GeeArrayList* _tmp132_;
		GeeArrayList* _tmp133_;
		_tmp129_ = self->priv->reminder_button;
		_tmp130_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp131_ = _tmp130_;
		_tmp132_ = objects_item_get_reminders (_tmp131_);
		_tmp133_ = _tmp132_;
		widgets_reminder_picker_reminder_button_set_reminders (_tmp129_, _tmp133_);
	}
	_tmp134_ = self->priv->deadline_button;
	if (_tmp134_ != NULL) {
		WidgetsDeadlineButton* _tmp135_;
		ObjectsItem* _tmp136_;
		ObjectsItem* _tmp137_;
		GDateTime* _tmp138_;
		GDateTime* _tmp139_;
		WidgetsDeadlineButton* _tmp140_;
		ObjectsItem* _tmp141_;
		ObjectsItem* _tmp142_;
		gboolean _tmp143_;
		gboolean _tmp144_;
		_tmp135_ = self->priv->deadline_button;
		_tmp136_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp137_ = _tmp136_;
		_tmp138_ = objects_item_get_deadline_datetime (_tmp137_);
		_tmp139_ = _tmp138_;
		widgets_deadline_button_set_datetime (_tmp135_, _tmp139_);
		_tmp140_ = self->priv->deadline_button;
		_tmp141_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp142_ = _tmp141_;
		_tmp143_ = objects_item_get_has_deadline (_tmp142_);
		_tmp144_ = _tmp143_;
		widgets_deadline_button_set_reveal_content (_tmp140_, !_tmp144_);
	}
	_tmp145_ = self->priv->deadline_button_detail;
	if (_tmp145_ != NULL) {
		WidgetsDeadlineButton* _tmp146_;
		ObjectsItem* _tmp147_;
		ObjectsItem* _tmp148_;
		GDateTime* _tmp149_;
		GDateTime* _tmp150_;
		WidgetsDeadlineButton* _tmp151_;
		ObjectsItem* _tmp152_;
		ObjectsItem* _tmp153_;
		gboolean _tmp154_;
		gboolean _tmp155_;
		_tmp146_ = self->priv->deadline_button_detail;
		_tmp147_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp148_ = _tmp147_;
		_tmp149_ = objects_item_get_deadline_datetime (_tmp148_);
		_tmp150_ = _tmp149_;
		widgets_deadline_button_set_datetime (_tmp146_, _tmp150_);
		_tmp151_ = self->priv->deadline_button_detail;
		_tmp152_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp153_ = _tmp152_;
		_tmp154_ = objects_item_get_has_deadline (_tmp153_);
		_tmp155_ = _tmp154_;
		widgets_deadline_button_set_reveal_content (_tmp151_, _tmp155_);
	}
	_tmp157_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp158_ = _tmp157_;
	_tmp159_ = objects_item_get_collapsed (_tmp158_);
	_tmp160_ = _tmp159_;
	if (_tmp160_) {
		_tmp156_ = _ ("Hide Sub-tasks");
	} else {
		_tmp156_ = _ ("Show Sub-tasks");
	}
	_tmp161_ = self->priv->show_subtasks_label;
	gtk_label_set_label (_tmp161_, _tmp156_);
	layouts_item_row_check_due (self);
	layouts_item_row_check_description (self);
	layouts_item_row_check_reminders (self);
	layouts_item_row_check_deadline (self);
	_tmp162_ = layouts_item_row_get_edit (self);
	_tmp163_ = _tmp162_;
	if (_tmp163_) {
		gboolean _tmp164_ = FALSE;
		ObjectsItem* _tmp165_;
		ObjectsItem* _tmp166_;
		gboolean _tmp167_;
		gboolean _tmp168_;
		WidgetsTextView* _tmp175_;
		WidgetsMarkdownEditor* _tmp176_;
		gboolean _tmp189_ = FALSE;
		ObjectsItem* _tmp190_;
		ObjectsItem* _tmp191_;
		gboolean _tmp192_;
		gboolean _tmp193_;
		WidgetsItemLabels* _tmp200_;
		WidgetsScheduleButton* _tmp201_;
		WidgetsPriorityButton* _tmp207_;
		WidgetsLabelPickerLabelButton* _tmp213_;
		WidgetsPinButton* _tmp219_;
		ObjectsItem* _tmp220_;
		ObjectsItem* _tmp221_;
		gboolean _tmp222_;
		gboolean _tmp223_;
		WidgetsReminderPickerReminderButton* _tmp224_;
		GtkButton* _tmp230_;
		ObjectsItem* _tmp231_;
		ObjectsItem* _tmp232_;
		gboolean _tmp233_;
		gboolean _tmp234_;
		GtkMenuButton* _tmp235_;
		WidgetsDeadlineButton* _tmp241_;
		WidgetsDeadlineButton* _tmp247_;
		gtk_widget_add_css_class ((GtkWidget*) self, "task-editing");
		_tmp165_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp166_ = _tmp165_;
		_tmp167_ = objects_item_get_completed (_tmp166_);
		_tmp168_ = _tmp167_;
		if (!_tmp168_) {
			ObjectsItem* _tmp169_;
			ObjectsItem* _tmp170_;
			ObjectsProject* _tmp171_;
			ObjectsProject* _tmp172_;
			gboolean _tmp173_;
			gboolean _tmp174_;
			_tmp169_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp170_ = _tmp169_;
			_tmp171_ = objects_item_get_project (_tmp170_);
			_tmp172_ = _tmp171_;
			_tmp173_ = objects_project_get_is_deck (_tmp172_);
			_tmp174_ = _tmp173_;
			_tmp164_ = !_tmp174_;
		} else {
			_tmp164_ = FALSE;
		}
		_tmp175_ = self->priv->content_textview;
		gtk_text_view_set_editable ((GtkTextView*) _tmp175_, _tmp164_);
		_tmp176_ = self->priv->markdown_editor;
		if (_tmp176_ != NULL) {
			gboolean _tmp177_ = FALSE;
			ObjectsItem* _tmp178_;
			ObjectsItem* _tmp179_;
			gboolean _tmp180_;
			gboolean _tmp181_;
			WidgetsMarkdownEditor* _tmp188_;
			_tmp178_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp179_ = _tmp178_;
			_tmp180_ = objects_item_get_completed (_tmp179_);
			_tmp181_ = _tmp180_;
			if (!_tmp181_) {
				ObjectsItem* _tmp182_;
				ObjectsItem* _tmp183_;
				ObjectsProject* _tmp184_;
				ObjectsProject* _tmp185_;
				gboolean _tmp186_;
				gboolean _tmp187_;
				_tmp182_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
				_tmp183_ = _tmp182_;
				_tmp184_ = objects_item_get_project (_tmp183_);
				_tmp185_ = _tmp184_;
				_tmp186_ = objects_project_get_is_deck (_tmp185_);
				_tmp187_ = _tmp186_;
				_tmp177_ = !_tmp187_;
			} else {
				_tmp177_ = FALSE;
			}
			_tmp188_ = self->priv->markdown_editor;
			widgets_markdown_editor_set_is_editable (_tmp188_, _tmp177_);
		}
		_tmp190_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp191_ = _tmp190_;
		_tmp192_ = objects_item_get_completed (_tmp191_);
		_tmp193_ = _tmp192_;
		if (!_tmp193_) {
			ObjectsItem* _tmp194_;
			ObjectsItem* _tmp195_;
			ObjectsProject* _tmp196_;
			ObjectsProject* _tmp197_;
			gboolean _tmp198_;
			gboolean _tmp199_;
			_tmp194_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp195_ = _tmp194_;
			_tmp196_ = objects_item_get_project (_tmp195_);
			_tmp197_ = _tmp196_;
			_tmp198_ = objects_project_get_is_deck (_tmp197_);
			_tmp199_ = _tmp198_;
			_tmp189_ = !_tmp199_;
		} else {
			_tmp189_ = FALSE;
		}
		_tmp200_ = self->priv->item_labels;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp200_, _tmp189_);
		_tmp201_ = self->priv->schedule_button;
		if (_tmp201_ != NULL) {
			WidgetsScheduleButton* _tmp202_;
			ObjectsItem* _tmp203_;
			ObjectsItem* _tmp204_;
			gboolean _tmp205_;
			gboolean _tmp206_;
			_tmp202_ = self->priv->schedule_button;
			_tmp203_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp204_ = _tmp203_;
			_tmp205_ = objects_item_get_completed (_tmp204_);
			_tmp206_ = _tmp205_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp202_, !_tmp206_);
		}
		_tmp207_ = self->priv->priority_button;
		if (_tmp207_ != NULL) {
			WidgetsPriorityButton* _tmp208_;
			ObjectsItem* _tmp209_;
			ObjectsItem* _tmp210_;
			gboolean _tmp211_;
			gboolean _tmp212_;
			_tmp208_ = self->priv->priority_button;
			_tmp209_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp210_ = _tmp209_;
			_tmp211_ = objects_item_get_completed (_tmp210_);
			_tmp212_ = _tmp211_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp208_, !_tmp212_);
		}
		_tmp213_ = self->priv->label_button;
		if (_tmp213_ != NULL) {
			WidgetsLabelPickerLabelButton* _tmp214_;
			ObjectsItem* _tmp215_;
			ObjectsItem* _tmp216_;
			gboolean _tmp217_;
			gboolean _tmp218_;
			_tmp214_ = self->priv->label_button;
			_tmp215_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp216_ = _tmp215_;
			_tmp217_ = objects_item_get_completed (_tmp216_);
			_tmp218_ = _tmp217_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp214_, !_tmp218_);
		}
		_tmp219_ = self->priv->pin_button;
		_tmp220_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp221_ = _tmp220_;
		_tmp222_ = objects_item_get_completed (_tmp221_);
		_tmp223_ = _tmp222_;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp219_, !_tmp223_);
		_tmp224_ = self->priv->reminder_button;
		if (_tmp224_ != NULL) {
			WidgetsReminderPickerReminderButton* _tmp225_;
			ObjectsItem* _tmp226_;
			ObjectsItem* _tmp227_;
			gboolean _tmp228_;
			gboolean _tmp229_;
			_tmp225_ = self->priv->reminder_button;
			_tmp226_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp227_ = _tmp226_;
			_tmp228_ = objects_item_get_completed (_tmp227_);
			_tmp229_ = _tmp228_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp225_, !_tmp229_);
		}
		_tmp230_ = self->priv->add_subtasks_button;
		_tmp231_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp232_ = _tmp231_;
		_tmp233_ = objects_item_get_completed (_tmp232_);
		_tmp234_ = _tmp233_;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp230_, !_tmp234_);
		_tmp235_ = self->priv->attachments_button;
		if (_tmp235_ != NULL) {
			GtkMenuButton* _tmp236_;
			ObjectsItem* _tmp237_;
			ObjectsItem* _tmp238_;
			gboolean _tmp239_;
			gboolean _tmp240_;
			_tmp236_ = self->priv->attachments_button;
			_tmp237_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp238_ = _tmp237_;
			_tmp239_ = objects_item_get_completed (_tmp238_);
			_tmp240_ = _tmp239_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp236_, !_tmp240_);
		}
		_tmp241_ = self->priv->deadline_button;
		if (_tmp241_ != NULL) {
			WidgetsDeadlineButton* _tmp242_;
			ObjectsItem* _tmp243_;
			ObjectsItem* _tmp244_;
			gboolean _tmp245_;
			gboolean _tmp246_;
			_tmp242_ = self->priv->deadline_button;
			_tmp243_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp244_ = _tmp243_;
			_tmp245_ = objects_item_get_completed (_tmp244_);
			_tmp246_ = _tmp245_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp242_, !_tmp246_);
		}
		_tmp247_ = self->priv->deadline_button_detail;
		if (_tmp247_ != NULL) {
			WidgetsDeadlineButton* _tmp248_;
			ObjectsItem* _tmp249_;
			ObjectsItem* _tmp250_;
			gboolean _tmp251_;
			gboolean _tmp252_;
			_tmp248_ = self->priv->deadline_button_detail;
			_tmp249_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp250_ = _tmp249_;
			_tmp251_ = objects_item_get_completed (_tmp250_);
			_tmp252_ = _tmp251_;
			gtk_widget_set_sensitive ((GtkWidget*) _tmp248_, !_tmp252_);
		}
	} else {
		gtk_widget_remove_css_class ((GtkWidget*) self, "task-editing");
	}
	_tmp254_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp255_ = _tmp254_;
	_tmp256_ = objects_item_get_completed (_tmp255_);
	_tmp257_ = _tmp256_;
	if (_tmp257_) {
		WidgetsDeadlineButton* _tmp258_;
		_tmp258_ = self->priv->deadline_button_detail;
		_tmp253_ = _tmp258_ != NULL;
	} else {
		_tmp253_ = FALSE;
	}
	if (_tmp253_) {
		WidgetsDeadlineButton* _tmp259_;
		_tmp259_ = self->priv->deadline_button_detail;
		widgets_deadline_button_remove_error_style (_tmp259_);
	}
}

static void
_layouts_item_row_verify_item_type (LayoutsItemRow* self)
{
	gboolean _tmp0_ = FALSE;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ItemType _tmp3_;
	ItemType _tmp4_;
	gboolean is_task = FALSE;
	WidgetsMarkdownEditor* _tmp17_;
	WidgetsContextMenuMenuSwitch* _tmp20_;
	g_return_if_fail (self != NULL);
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_item_type (_tmp2_);
	_tmp4_ = _tmp3_;
	if (_tmp4_ == ITEM_TYPE_TASK) {
		ObjectsItem* _tmp5_;
		ObjectsItem* _tmp6_;
		const gchar* _tmp7_;
		const gchar* _tmp8_;
		_tmp5_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp6_ = _tmp5_;
		_tmp7_ = objects_item_get_content (_tmp6_);
		_tmp8_ = _tmp7_;
		_tmp0_ = !g_str_has_prefix (_tmp8_, "* ");
	} else {
		_tmp0_ = FALSE;
	}
	is_task = _tmp0_;
	if (is_task) {
		GtkRevealer* _tmp9_;
		GtkBox* _tmp10_;
		GtkBox* _tmp11_;
		WidgetsItemLabels* _tmp12_;
		_tmp9_ = self->priv->checked_button_revealer;
		gtk_revealer_set_reveal_child (_tmp9_, TRUE);
		_tmp10_ = self->priv->action_box;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp10_, 16);
		_tmp11_ = self->priv->content_box;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp11_, 6);
		_tmp12_ = self->priv->item_labels;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp12_, 24);
	} else {
		GtkRevealer* _tmp13_;
		GtkBox* _tmp14_;
		GtkBox* _tmp15_;
		WidgetsItemLabels* _tmp16_;
		_tmp13_ = self->priv->checked_button_revealer;
		gtk_revealer_set_reveal_child (_tmp13_, FALSE);
		_tmp14_ = self->priv->action_box;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp14_, 0);
		_tmp15_ = self->priv->content_box;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp15_, 0);
		_tmp16_ = self->priv->item_labels;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp16_, 6);
	}
	_tmp17_ = self->priv->markdown_editor;
	if (_tmp17_ != NULL) {
		gint _tmp18_ = 0;
		WidgetsMarkdownEditor* _tmp19_;
		if (is_task) {
			_tmp18_ = 24;
		} else {
			_tmp18_ = 0;
		}
		_tmp19_ = self->priv->markdown_editor;
		gtk_widget_set_margin_start ((GtkWidget*) _tmp19_, _tmp18_);
	}
	_tmp20_ = self->priv->use_note_item;
	if (_tmp20_ != NULL) {
		WidgetsContextMenuMenuSwitch* _tmp21_;
		_tmp21_ = self->priv->use_note_item;
		widgets_context_menu_menu_switch_set_active (_tmp21_, !is_task);
	}
}

static void
layouts_item_row_check_description (LayoutsItemRow* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_;
	gboolean _tmp3_;
	GtkRevealer* _tmp18_;
	g_return_if_fail (self != NULL);
	_tmp2_ = layouts_item_row_get_edit (self);
	_tmp3_ = _tmp2_;
	if (!_tmp3_) {
		ObjectsItem* _tmp4_;
		ObjectsItem* _tmp5_;
		const gchar* _tmp6_;
		const gchar* _tmp7_;
		_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp5_ = _tmp4_;
		_tmp6_ = objects_item_get_description (_tmp5_);
		_tmp7_ = _tmp6_;
		_tmp1_ = _tmp7_ != NULL;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		Util* _tmp8_;
		Util* _tmp9_;
		ObjectsItem* _tmp10_;
		ObjectsItem* _tmp11_;
		const gchar* _tmp12_;
		const gchar* _tmp13_;
		gchar* _tmp14_;
		gchar* _tmp15_;
		gint _tmp16_;
		gint _tmp17_;
		_tmp8_ = util_get_default ();
		_tmp9_ = _tmp8_;
		_tmp10_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp11_ = _tmp10_;
		_tmp12_ = objects_item_get_description (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp14_ = util_line_break_to_space (_tmp9_, _tmp13_);
		_tmp15_ = _tmp14_;
		_tmp16_ = strlen (_tmp15_);
		_tmp17_ = _tmp16_;
		_tmp0_ = _tmp17_ > 0;
		_g_free0 (_tmp15_);
		_g_object_unref0 (_tmp9_);
	} else {
		_tmp0_ = FALSE;
	}
	_tmp18_ = self->priv->description_image_revealer;
	gtk_revealer_set_reveal_child (_tmp18_, _tmp0_);
}

static void
layouts_item_row_check_reminders (LayoutsItemRow* self)
{
	GtkLabel* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	GeeArrayList* _tmp3_;
	GeeArrayList* _tmp4_;
	gint _tmp5_;
	gint _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gboolean _tmp9_ = FALSE;
	gboolean _tmp10_;
	gboolean _tmp11_;
	GtkRevealer* _tmp18_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->reminder_count;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_reminders (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp4_);
	_tmp6_ = _tmp5_;
	_tmp7_ = g_strdup_printf ("%i", _tmp6_);
	_tmp8_ = _tmp7_;
	gtk_label_set_label (_tmp0_, _tmp8_);
	_g_free0 (_tmp8_);
	_tmp10_ = layouts_item_row_get_edit (self);
	_tmp11_ = _tmp10_;
	if (!_tmp11_) {
		ObjectsItem* _tmp12_;
		ObjectsItem* _tmp13_;
		GeeArrayList* _tmp14_;
		GeeArrayList* _tmp15_;
		gint _tmp16_;
		gint _tmp17_;
		_tmp12_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp13_ = _tmp12_;
		_tmp14_ = objects_item_get_reminders (_tmp13_);
		_tmp15_ = _tmp14_;
		_tmp16_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp15_);
		_tmp17_ = _tmp16_;
		_tmp9_ = _tmp17_ > 0;
	} else {
		_tmp9_ = FALSE;
	}
	_tmp18_ = self->priv->reminder_revealer;
	gtk_revealer_set_reveal_child (_tmp18_, _tmp9_);
}

static void
layouts_item_row_check_deadline (LayoutsItemRow* self)
{
	GtkBox* _tmp0_;
	GtkBox* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp26_ = FALSE;
	gboolean _tmp27_;
	gboolean _tmp28_;
	GtkRevealer* _tmp33_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->deadline_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp0_, "error");
	_tmp1_ = self->priv->deadline_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp1_, "dimmed");
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_has_deadline (_tmp3_);
	_tmp5_ = _tmp4_;
	if (_tmp5_) {
		GtkLabel* _tmp6_;
		ObjectsItem* _tmp7_;
		ObjectsItem* _tmp8_;
		GDateTime* _tmp9_;
		GDateTime* _tmp10_;
		gchar* _tmp11_;
		gchar* _tmp12_;
		GDateTime* date_only = NULL;
		ObjectsItem* _tmp13_;
		ObjectsItem* _tmp14_;
		GDateTime* _tmp15_;
		GDateTime* _tmp16_;
		GDateTime* _tmp17_;
		gboolean _tmp18_ = FALSE;
		gboolean _tmp19_ = FALSE;
		GDateTime* _tmp20_;
		gboolean is_overdue = FALSE;
		_tmp6_ = self->priv->deadline_label;
		_tmp7_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp8_ = _tmp7_;
		_tmp9_ = objects_item_get_deadline_datetime (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = utils_datetime_get_relative_time_from_date (_tmp10_);
		_tmp12_ = _tmp11_;
		gtk_label_set_label (_tmp6_, _tmp12_);
		_g_free0 (_tmp12_);
		_tmp13_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp14_ = _tmp13_;
		_tmp15_ = objects_item_get_deadline_datetime (_tmp14_);
		_tmp16_ = _tmp15_;
		_tmp17_ = utils_datetime_get_date_only (_tmp16_);
		date_only = _tmp17_;
		_tmp20_ = date_only;
		if (utils_datetime_is_today (_tmp20_)) {
			_tmp19_ = TRUE;
		} else {
			GDateTime* _tmp21_;
			_tmp21_ = date_only;
			_tmp19_ = utils_datetime_is_yesterday (_tmp21_);
		}
		if (_tmp19_) {
			_tmp18_ = TRUE;
		} else {
			GDateTime* _tmp22_;
			_tmp22_ = date_only;
			_tmp18_ = utils_datetime_is_overdue (_tmp22_);
		}
		is_overdue = _tmp18_;
		if (is_overdue) {
			GtkBox* _tmp23_;
			_tmp23_ = self->priv->deadline_box;
			gtk_widget_add_css_class ((GtkWidget*) _tmp23_, "error");
		} else {
			GtkBox* _tmp24_;
			_tmp24_ = self->priv->deadline_box;
			gtk_widget_add_css_class ((GtkWidget*) _tmp24_, "dimmed");
		}
		_g_date_time_unref0 (date_only);
	} else {
		GtkLabel* _tmp25_;
		_tmp25_ = self->priv->deadline_label;
		gtk_label_set_label (_tmp25_, "");
	}
	_tmp27_ = layouts_item_row_get_edit (self);
	_tmp28_ = _tmp27_;
	if (!_tmp28_) {
		ObjectsItem* _tmp29_;
		ObjectsItem* _tmp30_;
		gboolean _tmp31_;
		gboolean _tmp32_;
		_tmp29_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp30_ = _tmp29_;
		_tmp31_ = objects_item_get_has_deadline (_tmp30_);
		_tmp32_ = _tmp31_;
		_tmp26_ = _tmp32_;
	} else {
		_tmp26_ = FALSE;
	}
	_tmp33_ = self->priv->deadline_revealer;
	gtk_revealer_set_reveal_child (_tmp33_, _tmp26_);
}

static void
layouts_item_row_check_due (LayoutsItemRow* self)
{
	GtkBox* _tmp0_;
	GtkBox* _tmp1_;
	GtkBox* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	ObjectsItem* _tmp18_;
	ObjectsItem* _tmp19_;
	gboolean _tmp20_;
	gboolean _tmp21_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->due_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp0_, "overdue-grid");
	_tmp1_ = self->priv->due_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp1_, "today-grid");
	_tmp2_ = self->priv->due_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp2_, "upcoming-grid");
	_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp4_ = _tmp3_;
	_tmp5_ = objects_item_get_completed (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_) {
		GtkLabel* _tmp7_;
		ObjectsItem* _tmp8_;
		ObjectsItem* _tmp9_;
		const gchar* _tmp10_;
		const gchar* _tmp11_;
		GDateTime* _tmp12_;
		GDateTime* _tmp13_;
		gchar* _tmp14_;
		gchar* _tmp15_;
		GtkBox* _tmp16_;
		GtkRevealer* _tmp17_;
		_tmp7_ = self->priv->due_label;
		_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp9_ = _tmp8_;
		_tmp10_ = objects_item_get_completed_at (_tmp9_);
		_tmp11_ = _tmp10_;
		_tmp12_ = utils_datetime_get_date_from_string (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp14_ = utils_datetime_get_relative_date_from_date (_tmp13_);
		_tmp15_ = _tmp14_;
		gtk_label_set_label (_tmp7_, _tmp15_);
		_g_free0 (_tmp15_);
		_g_date_time_unref0 (_tmp13_);
		_tmp16_ = self->priv->due_box;
		gtk_widget_add_css_class ((GtkWidget*) _tmp16_, "completed-grid");
		_tmp17_ = self->priv->due_box_revealer;
		gtk_revealer_set_reveal_child (_tmp17_, TRUE);
		return;
	}
	_tmp18_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp19_ = _tmp18_;
	_tmp20_ = objects_item_get_has_due (_tmp19_);
	_tmp21_ = _tmp20_;
	if (_tmp21_) {
		GtkLabel* _tmp22_;
		ObjectsItem* _tmp23_;
		ObjectsItem* _tmp24_;
		ObjectsDueDate* _tmp25_;
		ObjectsDueDate* _tmp26_;
		GDateTime* _tmp27_;
		GDateTime* _tmp28_;
		gchar* _tmp29_;
		gchar* _tmp30_;
		gboolean _tmp31_;
		gboolean _tmp32_;
		GtkRevealer* _tmp34_;
		ObjectsItem* _tmp35_;
		ObjectsItem* _tmp36_;
		ObjectsDueDate* _tmp37_;
		ObjectsDueDate* _tmp38_;
		gboolean _tmp39_;
		gboolean _tmp40_;
		ObjectsItem* _tmp41_;
		ObjectsItem* _tmp42_;
		ObjectsDueDate* _tmp43_;
		ObjectsDueDate* _tmp44_;
		gboolean _tmp45_;
		gboolean _tmp46_;
		ObjectsItem* _tmp118_;
		ObjectsItem* _tmp119_;
		ObjectsDueDate* _tmp120_;
		ObjectsDueDate* _tmp121_;
		GDateTime* _tmp122_;
		GDateTime* _tmp123_;
		_tmp22_ = self->priv->due_label;
		_tmp23_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp24_ = _tmp23_;
		_tmp25_ = objects_item_get_due (_tmp24_);
		_tmp26_ = _tmp25_;
		_tmp27_ = objects_due_date_get_datetime (_tmp26_);
		_tmp28_ = _tmp27_;
		_tmp29_ = utils_datetime_get_relative_date_from_date (_tmp28_);
		_tmp30_ = _tmp29_;
		gtk_label_set_label (_tmp22_, _tmp30_);
		_g_free0 (_tmp30_);
		_tmp31_ = layouts_item_row_get_edit (self);
		_tmp32_ = _tmp31_;
		if (!_tmp32_) {
			GtkRevealer* _tmp33_;
			_tmp33_ = self->priv->due_box_revealer;
			gtk_revealer_set_reveal_child (_tmp33_, TRUE);
		}
		_tmp34_ = self->priv->repeat_revealer;
		_tmp35_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp36_ = _tmp35_;
		_tmp37_ = objects_item_get_due (_tmp36_);
		_tmp38_ = _tmp37_;
		_tmp39_ = objects_due_date_get_is_recurring (_tmp38_);
		_tmp40_ = _tmp39_;
		gtk_revealer_set_reveal_child (_tmp34_, _tmp40_);
		_tmp41_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp42_ = _tmp41_;
		_tmp43_ = objects_item_get_due (_tmp42_);
		_tmp44_ = _tmp43_;
		_tmp45_ = objects_due_date_get_is_recurring (_tmp44_);
		_tmp46_ = _tmp45_;
		if (_tmp46_) {
			gchar* end_label = NULL;
			gchar* _tmp47_;
			ObjectsItem* _tmp48_;
			ObjectsItem* _tmp49_;
			ObjectsDueDate* _tmp50_;
			ObjectsDueDate* _tmp51_;
			RecurrencyEndType _tmp52_;
			RecurrencyEndType _tmp53_;
			GtkBox* _tmp88_;
			ObjectsItem* _tmp89_;
			ObjectsItem* _tmp90_;
			ObjectsDueDate* _tmp91_;
			ObjectsDueDate* _tmp92_;
			RecurrencyType _tmp93_;
			RecurrencyType _tmp94_;
			ObjectsItem* _tmp95_;
			ObjectsItem* _tmp96_;
			ObjectsDueDate* _tmp97_;
			ObjectsDueDate* _tmp98_;
			gint _tmp99_;
			gint _tmp100_;
			ObjectsItem* _tmp101_;
			ObjectsItem* _tmp102_;
			ObjectsDueDate* _tmp103_;
			ObjectsDueDate* _tmp104_;
			const gchar* _tmp105_;
			const gchar* _tmp106_;
			const gchar* _tmp107_;
			ObjectsItem* _tmp108_;
			ObjectsItem* _tmp109_;
			ObjectsDueDate* _tmp110_;
			ObjectsDueDate* _tmp111_;
			gboolean _tmp112_;
			gboolean _tmp113_;
			gchar* _tmp114_;
			gchar* _tmp115_;
			gchar* _tmp116_;
			gchar* _tmp117_;
			_tmp47_ = g_strdup ("");
			end_label = _tmp47_;
			_tmp48_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp49_ = _tmp48_;
			_tmp50_ = objects_item_get_due (_tmp49_);
			_tmp51_ = _tmp50_;
			_tmp52_ = objects_due_date_get_end_type (_tmp51_);
			_tmp53_ = _tmp52_;
			if (_tmp53_ == RECURRENCY_END_TYPE_ON_DATE) {
				gchar* date_label = NULL;
				ObjectsItem* _tmp54_;
				ObjectsItem* _tmp55_;
				ObjectsDueDate* _tmp56_;
				ObjectsDueDate* _tmp57_;
				const gchar* _tmp58_;
				const gchar* _tmp59_;
				GDateTime* _tmp60_;
				GDateTime* _tmp61_;
				GDateTime* _tmp62_;
				GDateTime* _tmp63_;
				gchar* _tmp64_;
				gchar* _tmp65_;
				gchar* _tmp66_;
				gchar* _tmp67_;
				const gchar* _tmp68_;
				gchar* _tmp69_;
				_tmp54_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
				_tmp55_ = _tmp54_;
				_tmp56_ = objects_item_get_due (_tmp55_);
				_tmp57_ = _tmp56_;
				_tmp58_ = objects_due_date_get_recurrency_end (_tmp57_);
				_tmp59_ = _tmp58_;
				_tmp60_ = utils_datetime_get_date_from_string (_tmp59_);
				_tmp61_ = _tmp60_;
				_tmp62_ = utils_datetime_get_date_only (_tmp61_);
				_tmp63_ = _tmp62_;
				_tmp64_ = utils_datetime_get_default_date_format_from_date (_tmp63_);
				_tmp65_ = _tmp64_;
				_g_date_time_unref0 (_tmp63_);
				_g_date_time_unref0 (_tmp61_);
				date_label = _tmp65_;
				_tmp66_ = g_strconcat (_ ("until"), " ", NULL);
				_tmp67_ = _tmp66_;
				_tmp68_ = date_label;
				_tmp69_ = g_strconcat (_tmp67_, _tmp68_, NULL);
				_g_free0 (end_label);
				end_label = _tmp69_;
				_g_free0 (_tmp67_);
				_g_free0 (date_label);
			} else {
				ObjectsItem* _tmp70_;
				ObjectsItem* _tmp71_;
				ObjectsDueDate* _tmp72_;
				ObjectsDueDate* _tmp73_;
				RecurrencyEndType _tmp74_;
				RecurrencyEndType _tmp75_;
				_tmp70_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
				_tmp71_ = _tmp70_;
				_tmp72_ = objects_item_get_due (_tmp71_);
				_tmp73_ = _tmp72_;
				_tmp74_ = objects_due_date_get_end_type (_tmp73_);
				_tmp75_ = _tmp74_;
				if (_tmp75_ == RECURRENCY_END_TYPE_AFTER) {
					gint count = 0;
					ObjectsItem* _tmp76_;
					ObjectsItem* _tmp77_;
					ObjectsDueDate* _tmp78_;
					ObjectsDueDate* _tmp79_;
					gint _tmp80_;
					gint _tmp81_;
					const gchar* _tmp82_ = NULL;
					gchar* _tmp83_;
					gchar* _tmp84_;
					gchar* _tmp85_;
					gchar* _tmp86_;
					gchar* _tmp87_;
					_tmp76_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
					_tmp77_ = _tmp76_;
					_tmp78_ = objects_item_get_due (_tmp77_);
					_tmp79_ = _tmp78_;
					_tmp80_ = objects_due_date_get_recurrency_count (_tmp79_);
					_tmp81_ = _tmp80_;
					count = _tmp81_;
					if (count > 1) {
						_tmp82_ = _ ("times");
					} else {
						_tmp82_ = _ ("time");
					}
					_tmp83_ = g_strconcat (_ ("for"), " ", NULL);
					_tmp84_ = _tmp83_;
					_tmp85_ = g_strdup_printf ("%d %s", count, _tmp82_);
					_tmp86_ = _tmp85_;
					_tmp87_ = g_strconcat (_tmp84_, _tmp86_, NULL);
					_g_free0 (end_label);
					end_label = _tmp87_;
					_g_free0 (_tmp86_);
					_g_free0 (_tmp84_);
				}
			}
			_tmp88_ = self->priv->due_box;
			_tmp89_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp90_ = _tmp89_;
			_tmp91_ = objects_item_get_due (_tmp90_);
			_tmp92_ = _tmp91_;
			_tmp93_ = objects_due_date_get_recurrency_type (_tmp92_);
			_tmp94_ = _tmp93_;
			_tmp95_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp96_ = _tmp95_;
			_tmp97_ = objects_item_get_due (_tmp96_);
			_tmp98_ = _tmp97_;
			_tmp99_ = objects_due_date_get_recurrency_interval (_tmp98_);
			_tmp100_ = _tmp99_;
			_tmp101_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp102_ = _tmp101_;
			_tmp103_ = objects_item_get_due (_tmp102_);
			_tmp104_ = _tmp103_;
			_tmp105_ = objects_due_date_get_recurrency_weeks (_tmp104_);
			_tmp106_ = _tmp105_;
			_tmp107_ = end_label;
			_tmp108_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp109_ = _tmp108_;
			_tmp110_ = objects_item_get_due (_tmp109_);
			_tmp111_ = _tmp110_;
			_tmp112_ = objects_due_date_get_recurrency_last_day_of_month (_tmp111_);
			_tmp113_ = _tmp112_;
			_tmp114_ = utils_datetime_get_recurrency_weeks (_tmp94_, _tmp100_, _tmp106_, _tmp107_, _tmp113_);
			_tmp115_ = _tmp114_;
			_tmp116_ = g_utf8_strdown (_tmp115_, (gssize) -1);
			_tmp117_ = _tmp116_;
			gtk_widget_set_tooltip_text ((GtkWidget*) _tmp88_, _tmp117_);
			_g_free0 (_tmp117_);
			_g_free0 (_tmp115_);
			_g_free0 (end_label);
		}
		_tmp118_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp119_ = _tmp118_;
		_tmp120_ = objects_item_get_due (_tmp119_);
		_tmp121_ = _tmp120_;
		_tmp122_ = objects_due_date_get_datetime (_tmp121_);
		_tmp123_ = _tmp122_;
		if (utils_datetime_is_today (_tmp123_)) {
			GtkBox* _tmp124_;
			_tmp124_ = self->priv->due_box;
			gtk_widget_add_css_class ((GtkWidget*) _tmp124_, "today-grid");
		} else {
			ObjectsItem* _tmp125_;
			ObjectsItem* _tmp126_;
			ObjectsDueDate* _tmp127_;
			ObjectsDueDate* _tmp128_;
			GDateTime* _tmp129_;
			GDateTime* _tmp130_;
			_tmp125_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp126_ = _tmp125_;
			_tmp127_ = objects_item_get_due (_tmp126_);
			_tmp128_ = _tmp127_;
			_tmp129_ = objects_due_date_get_datetime (_tmp128_);
			_tmp130_ = _tmp129_;
			if (utils_datetime_is_overdue (_tmp130_)) {
				GtkBox* _tmp131_;
				_tmp131_ = self->priv->due_box;
				gtk_widget_add_css_class ((GtkWidget*) _tmp131_, "overdue-grid");
			} else {
				GtkBox* _tmp132_;
				_tmp132_ = self->priv->due_box;
				gtk_widget_add_css_class ((GtkWidget*) _tmp132_, "upcoming-grid");
			}
		}
	} else {
		GtkLabel* _tmp133_;
		GtkBox* _tmp134_;
		GtkRevealer* _tmp135_;
		GtkRevealer* _tmp136_;
		_tmp133_ = self->priv->due_label;
		gtk_label_set_label (_tmp133_, "");
		_tmp134_ = self->priv->due_box;
		gtk_widget_set_tooltip_text ((GtkWidget*) _tmp134_, "");
		_tmp135_ = self->priv->due_box_revealer;
		gtk_revealer_set_reveal_child (_tmp135_, FALSE);
		_tmp136_ = self->priv->repeat_revealer;
		gtk_revealer_set_reveal_child (_tmp136_, FALSE);
	}
}

static gboolean
__lambda202_ (LayoutsItemRow* self)
{
	GtkListBox* list_parent = NULL;
	GtkWidget* _tmp0_;
	GtkWidget* _tmp1_;
	GtkListBox* _tmp2_;
	gboolean result;
	_tmp0_ = gtk_widget_get_parent ((GtkWidget*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_list_box_get_type (), GtkListBox));
	list_parent = _tmp2_;
	gtk_list_box_remove (list_parent, (GtkWidget*) self);
	result = G_SOURCE_REMOVE;
	_g_object_unref0 (list_parent);
	return result;
}

static gboolean
___lambda202__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda202_ ((LayoutsItemRow*) self);
	return result;
}

static void
layouts_item_row_real_hide_destroy (LayoutsItemBase* base)
{
	LayoutsItemRow * self;
	GtkRevealer* _tmp0_;
	GtkRevealer* _tmp1_;
	guint _tmp2_;
	guint _tmp3_;
	self = (LayoutsItemRow*) base;
	layouts_item_base_clean_up ((LayoutsItemBase*) self);
	_tmp0_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, FALSE);
	_tmp1_ = self->priv->main_revealer;
	_tmp2_ = gtk_revealer_get_transition_duration (_tmp1_);
	_tmp3_ = _tmp2_;
	g_timeout_add_full (G_PRIORITY_DEFAULT, _tmp3_, ___lambda202__gsource_func, g_object_ref (self), g_object_unref);
}

static void
___lambda169_ (LayoutsItemRow* self)
{
	GDateTime* _tmp0_;
	GDateTime* _tmp1_;
	GDateTime* _tmp2_;
	GDateTime* _tmp3_;
	_tmp0_ = g_date_time_new_now_local ();
	_tmp1_ = _tmp0_;
	_tmp2_ = utils_datetime_get_date_only (_tmp1_);
	_tmp3_ = _tmp2_;
	layouts_item_row_update_date (self, _tmp3_);
	_g_date_time_unref0 (_tmp3_);
	_g_date_time_unref0 (_tmp1_);
}

static void
____lambda169__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda169_ ((LayoutsItemRow*) self);
}

static void
___lambda170_ (LayoutsItemRow* self)
{
	GDateTime* _tmp0_;
	GDateTime* _tmp1_;
	GDateTime* _tmp2_;
	GDateTime* _tmp3_;
	GDateTime* _tmp4_;
	GDateTime* _tmp5_;
	_tmp0_ = g_date_time_new_now_local ();
	_tmp1_ = _tmp0_;
	_tmp2_ = g_date_time_add_days (_tmp1_, 1);
	_tmp3_ = _tmp2_;
	_tmp4_ = utils_datetime_get_date_only (_tmp3_);
	_tmp5_ = _tmp4_;
	layouts_item_row_update_date (self, _tmp5_);
	_g_date_time_unref0 (_tmp5_);
	_g_date_time_unref0 (_tmp3_);
	_g_date_time_unref0 (_tmp1_);
}

static void
____lambda170__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda170_ ((LayoutsItemRow*) self);
}

static void
___lambda171_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_pinned (_tmp3_);
	_tmp5_ = _tmp4_;
	objects_item_update_pin (_tmp1_, !_tmp5_);
}

static void
____lambda171__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda171_ ((LayoutsItemRow*) self);
}

static void
___lambda172_ (LayoutsItemRow* self)
{
	ObjectsDueDate* _tmp0_;
	ObjectsDueDate* _tmp1_;
	_tmp0_ = objects_due_date_new ();
	_tmp1_ = _tmp0_;
	layouts_item_row_update_due (self, _tmp1_);
	_g_object_unref0 (_tmp1_);
}

static void
____lambda172__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda172_ ((LayoutsItemRow*) self);
}

static void
__lambda174_ (LayoutsItemRow* self,
              const gchar* type,
              const gchar* id)
{
	g_return_if_fail (type != NULL);
	g_return_if_fail (id != NULL);
	if (g_strcmp0 (type, "project") == 0) {
		ServicesStore* _tmp0_;
		ObjectsProject* _tmp1_;
		ObjectsProject* _tmp2_;
		_tmp0_ = services_store_instance ();
		_tmp1_ = services_store_get_project (_tmp0_, id);
		_tmp2_ = _tmp1_;
		layouts_item_row_move (self, _tmp2_, "");
		_g_object_unref0 (_tmp2_);
	} else {
		ObjectsItem* _tmp3_;
		ObjectsItem* _tmp4_;
		ObjectsProject* _tmp5_;
		ObjectsProject* _tmp6_;
		_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp4_ = _tmp3_;
		_tmp5_ = objects_item_get_project (_tmp4_);
		_tmp6_ = _tmp5_;
		layouts_item_row_move (self, _tmp6_, id);
	}
}

static void
___lambda174__dialogs_project_picker_project_picker_changed (DialogsProjectPickerProjectPicker* _sender,
                                                             const gchar* type,
                                                             const gchar* id,
                                                             gpointer self)
{
	__lambda174_ ((LayoutsItemRow*) self, type, id);
}

static void
___lambda173_ (LayoutsItemRow* self)
{
	DialogsProjectPickerProjectPicker* dialog = NULL;
	DialogsProjectPickerProjectPicker* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsProject* _tmp3_;
	ObjectsProject* _tmp4_;
	GeeHashMap* _tmp5_;
	gulong _tmp6_;
	Planify* _tmp7_;
	MainWindow* _tmp8_;
	_tmp0_ = dialogs_project_picker_project_picker_new_for_projects ();
	g_object_ref_sink (_tmp0_);
	dialog = _tmp0_;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_project (_tmp2_);
	_tmp4_ = _tmp3_;
	dialogs_project_picker_project_picker_set_project (dialog, _tmp4_);
	_tmp5_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp6_ = g_signal_connect_object (dialog, "changed", (GCallback) ___lambda174__dialogs_project_picker_project_picker_changed, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp5_, (gpointer) ((guintptr) _tmp6_), (GObject*) dialog);
	_tmp7_ = planify__instance;
	_tmp8_ = _tmp7_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp8_);
	_g_object_unref0 (dialog);
}

static void
____lambda173__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda173_ ((LayoutsItemRow*) self);
}

static void
__lambda176_ (LayoutsItemRow* self,
              GeeHashMap* labels)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (labels != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_update_labels (_tmp1_, labels);
}

static void
___lambda176__dialogs_label_picker_labels_changed (DialogsLabelPicker* _sender,
                                                   GeeHashMap* labels,
                                                   gpointer self)
{
	__lambda176_ ((LayoutsItemRow*) self, labels);
}

static void
___lambda175_ (LayoutsItemRow* self)
{
	DialogsLabelPicker* dialog = NULL;
	gchar* _tmp0_;
	DialogsLabelPicker* _tmp1_ = NULL;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsSource* _tmp4_;
	ObjectsSource* _tmp5_;
	ObjectsItem* _tmp6_;
	ObjectsItem* _tmp7_;
	GeeArrayList* _tmp8_;
	GeeArrayList* _tmp9_;
	GeeHashMap* _tmp10_;
	gulong _tmp11_;
	Planify* _tmp12_;
	MainWindow* _tmp13_;
	_tmp0_ = g_strdup (_ ("Apply"));
	_tmp1_ = dialogs_label_picker_new (LABEL_PICKER_TYPE_FILTER_AND_CREATE);
	dialogs_label_picker_set_button_text (_tmp1_, _tmp0_);
	_g_free0 (_tmp0_);
	g_object_ref_sink (_tmp1_);
	dialog = _tmp1_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_base_object_get_source ((ObjectsBaseObject*) _tmp3_);
	_tmp5_ = _tmp4_;
	dialogs_label_picker_add_labels (dialog, _tmp5_);
	_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp7_ = _tmp6_;
	_tmp8_ = objects_item_get_labels (_tmp7_);
	_tmp9_ = _tmp8_;
	dialogs_label_picker_set_labels (dialog, _tmp9_);
	_tmp10_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp11_ = g_signal_connect_object (dialog, "labels-changed", (GCallback) ___lambda176__dialogs_label_picker_labels_changed, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp10_, (gpointer) ((guintptr) _tmp11_), (GObject*) dialog);
	_tmp12_ = planify__instance;
	_tmp13_ = _tmp12_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp13_);
	_g_object_unref0 (dialog);
}

static void
____lambda175__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda175_ ((LayoutsItemRow*) self);
}

static void
___lambda177_ (LayoutsItemRow* self)
{
	GtkCheckButton* _tmp0_;
	GtkCheckButton* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	GtkCheckButton* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	_tmp0_ = self->priv->checked_button;
	_tmp1_ = self->priv->checked_button;
	_tmp2_ = gtk_check_button_get_active (_tmp1_);
	_tmp3_ = _tmp2_;
	gtk_check_button_set_active (_tmp0_, !_tmp3_);
	_tmp4_ = self->priv->checked_button;
	_tmp5_ = gtk_check_button_get_active (_tmp4_);
	_tmp6_ = _tmp5_;
	layouts_item_base_checked_toggled ((LayoutsItemBase*) self, _tmp6_, NULL);
}

static void
____lambda177__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda177_ ((LayoutsItemRow*) self);
}

static void
___lambda178_ (LayoutsItemRow* self)
{
	ServicesEventBus* _tmp0_;
	ServicesEventBus* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	_tmp0_ = services_event_bus_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	g_signal_emit_by_name (_tmp1_, "open-item", _tmp3_);
	_g_object_unref0 (_tmp1_);
}

static void
____lambda178__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda178_ ((LayoutsItemRow*) self);
}

static void
___lambda179_ (LayoutsItemRow* self)
{
	DialogsQuickAdd* dialog = NULL;
	DialogsQuickAdd* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	Planify* _tmp3_;
	MainWindow* _tmp4_;
	_tmp0_ = dialogs_quick_add_new ();
	g_object_ref_sink (_tmp0_);
	dialog = _tmp0_;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	dialogs_quick_add_for_base_object (dialog, (ObjectsBaseObject*) _tmp2_);
	_tmp3_ = planify__instance;
	_tmp4_ = _tmp3_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp4_);
	_g_object_unref0 (dialog);
}

static void
____lambda179__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda179_ ((LayoutsItemRow*) self);
}

static void
___lambda180_ (LayoutsItemRow* self)
{
	Util* _tmp0_;
	Util* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	ObjectsItem* _tmp8_;
	ObjectsItem* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	ObjectsItem* _tmp12_;
	ObjectsItem* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	_tmp0_ = util_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp5_ = _tmp4_;
	_tmp6_ = objects_item_get_project_id (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp9_ = _tmp8_;
	_tmp10_ = objects_item_get_section_id (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp13_ = _tmp12_;
	_tmp14_ = objects_item_get_parent_id (_tmp13_);
	_tmp15_ = _tmp14_;
	util_duplicate_item (_tmp1_, _tmp3_, _tmp7_, _tmp11_, _tmp15_, TRUE, NULL, NULL);
	_g_object_unref0 (_tmp1_);
}

static void
____lambda180__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda180_ ((LayoutsItemRow*) self);
}

static void
___lambda181_ (LayoutsItemRow* self)
{
	layouts_item_base_delete_request ((LayoutsItemBase*) self, TRUE);
}

static void
____lambda181__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                             gpointer self)
{
	___lambda181_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_build_handle_context_menu (LayoutsItemRow* self,
                                            gdouble x,
                                            gdouble y)
{
	GtkPopover* _tmp0_;
	WidgetsContextMenuMenuItem* today_item = NULL;
	WidgetsContextMenuMenuItem* _tmp16_;
	WidgetsContextMenuMenuItem* _tmp17_;
	GDateTime* _tmp18_;
	GDateTime* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	WidgetsContextMenuMenuItem* tomorrow_item = NULL;
	WidgetsContextMenuMenuItem* _tmp22_;
	WidgetsContextMenuMenuItem* _tmp23_;
	GDateTime* _tmp24_;
	GDateTime* _tmp25_;
	GDateTime* _tmp26_;
	GDateTime* _tmp27_;
	gchar* _tmp28_;
	gchar* _tmp29_;
	const gchar* _tmp30_ = NULL;
	ObjectsItem* _tmp31_;
	ObjectsItem* _tmp32_;
	gboolean _tmp33_;
	gboolean _tmp34_;
	WidgetsContextMenuMenuItem* _tmp35_;
	WidgetsContextMenuMenuItem* _tmp36_;
	WidgetsContextMenuMenuItem* _tmp37_;
	ObjectsItem* _tmp38_;
	ObjectsItem* _tmp39_;
	gboolean _tmp40_;
	gboolean _tmp41_;
	WidgetsContextMenuMenuItem* move_item = NULL;
	WidgetsContextMenuMenuItem* _tmp42_;
	WidgetsContextMenuMenuItem* labels_item = NULL;
	WidgetsContextMenuMenuItem* _tmp43_;
	WidgetsContextMenuMenuItem* add_item = NULL;
	WidgetsContextMenuMenuItem* _tmp44_;
	WidgetsContextMenuMenuItem* complete_item = NULL;
	WidgetsContextMenuMenuItem* _tmp45_;
	WidgetsContextMenuMenuItem* edit_item = NULL;
	WidgetsContextMenuMenuItem* _tmp46_;
	WidgetsContextMenuMenuItem* duplicate_item = NULL;
	WidgetsContextMenuMenuItem* _tmp47_;
	WidgetsContextMenuMenuItem* delete_item = NULL;
	WidgetsContextMenuMenuItem* _tmp48_;
	WidgetsContextMenuMenuItem* _tmp49_;
	GtkBox* menu_box = NULL;
	GtkBox* _tmp50_;
	GtkBox* _tmp51_;
	GtkBox* _tmp52_;
	gboolean _tmp53_ = FALSE;
	ObjectsItem* _tmp54_;
	ObjectsItem* _tmp55_;
	gboolean _tmp56_;
	gboolean _tmp57_;
	ObjectsItem* _tmp136_;
	ObjectsItem* _tmp137_;
	ObjectsProject* _tmp138_;
	ObjectsProject* _tmp139_;
	gboolean _tmp140_;
	gboolean _tmp141_;
	GtkBox* _tmp148_;
	GtkWidget* _tmp149_;
	GtkPopover* _tmp150_ = NULL;
	GtkPopover* _tmp151_;
	GtkPopover* _tmp152_;
	GdkRectangle _tmp153_ = {0};
	GtkPopover* _tmp154_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->menu_handle_popover;
	if (_tmp0_ != NULL) {
		ObjectsItem* _tmp1_;
		ObjectsItem* _tmp2_;
		gboolean _tmp3_;
		gboolean _tmp4_;
		const gchar* _tmp7_ = NULL;
		ObjectsItem* _tmp8_;
		ObjectsItem* _tmp9_;
		gboolean _tmp10_;
		gboolean _tmp11_;
		WidgetsContextMenuMenuItem* _tmp12_;
		GtkPopover* _tmp13_;
		GdkRectangle _tmp14_ = {0};
		GtkPopover* _tmp15_;
		_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp2_ = _tmp1_;
		_tmp3_ = objects_item_get_has_due (_tmp2_);
		_tmp4_ = _tmp3_;
		if (_tmp4_) {
			WidgetsContextMenuMenuItem* _tmp5_;
			_tmp5_ = self->priv->no_date_item;
			gtk_widget_set_visible ((GtkWidget*) _tmp5_, TRUE);
		} else {
			WidgetsContextMenuMenuItem* _tmp6_;
			_tmp6_ = self->priv->no_date_item;
			gtk_widget_set_visible ((GtkWidget*) _tmp6_, FALSE);
		}
		_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp9_ = _tmp8_;
		_tmp10_ = objects_item_get_pinned (_tmp9_);
		_tmp11_ = _tmp10_;
		if (_tmp11_) {
			_tmp7_ = _ ("Unpin");
		} else {
			_tmp7_ = _ ("Pin");
		}
		_tmp12_ = self->priv->pinboard_item;
		widgets_context_menu_menu_item_set_title (_tmp12_, _tmp7_);
		_tmp13_ = self->priv->menu_handle_popover;
		_tmp14_.x = (gint) x;
		_tmp14_.y = (gint) y;
		_tmp14_.width = 1;
		_tmp14_.height = 1;
		g_object_set (_tmp13_, "pointing-to", &_tmp14_, NULL);
		_tmp15_ = self->priv->menu_handle_popover;
		gtk_popover_popup (_tmp15_);
		return;
	}
	_tmp16_ = widgets_context_menu_menu_item_new (_ ("Today"), "star-outline-thick-symbolic");
	g_object_ref_sink (_tmp16_);
	today_item = _tmp16_;
	_tmp17_ = today_item;
	_tmp18_ = g_date_time_new_now_local ();
	_tmp19_ = _tmp18_;
	_tmp20_ = g_date_time_format (_tmp19_, "%a");
	_tmp21_ = _tmp20_;
	widgets_context_menu_menu_item_set_secondary_text (_tmp17_, _tmp21_);
	_g_free0 (_tmp21_);
	_g_date_time_unref0 (_tmp19_);
	_tmp22_ = widgets_context_menu_menu_item_new (_ ("Tomorrow"), "month-symbolic");
	g_object_ref_sink (_tmp22_);
	tomorrow_item = _tmp22_;
	_tmp23_ = tomorrow_item;
	_tmp24_ = g_date_time_new_now_local ();
	_tmp25_ = _tmp24_;
	_tmp26_ = g_date_time_add_days (_tmp25_, 1);
	_tmp27_ = _tmp26_;
	_tmp28_ = g_date_time_format (_tmp27_, "%a");
	_tmp29_ = _tmp28_;
	widgets_context_menu_menu_item_set_secondary_text (_tmp23_, _tmp29_);
	_g_free0 (_tmp29_);
	_g_date_time_unref0 (_tmp27_);
	_g_date_time_unref0 (_tmp25_);
	_tmp31_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp32_ = _tmp31_;
	_tmp33_ = objects_item_get_pinned (_tmp32_);
	_tmp34_ = _tmp33_;
	if (_tmp34_) {
		_tmp30_ = _ ("Unpin");
	} else {
		_tmp30_ = _ ("Pin");
	}
	_tmp35_ = widgets_context_menu_menu_item_new (_tmp30_, "pin-symbolic");
	g_object_ref_sink (_tmp35_);
	_g_object_unref0 (self->priv->pinboard_item);
	self->priv->pinboard_item = _tmp35_;
	_tmp36_ = widgets_context_menu_menu_item_new (_ ("No Date"), "cross-large-circle-filled-symbolic");
	g_object_ref_sink (_tmp36_);
	_g_object_unref0 (self->priv->no_date_item);
	self->priv->no_date_item = _tmp36_;
	_tmp37_ = self->priv->no_date_item;
	_tmp38_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp39_ = _tmp38_;
	_tmp40_ = objects_item_get_has_due (_tmp39_);
	_tmp41_ = _tmp40_;
	gtk_widget_set_visible ((GtkWidget*) _tmp37_, _tmp41_);
	_tmp42_ = widgets_context_menu_menu_item_new (_ ("Move"), "arrow3-right-symbolic");
	g_object_ref_sink (_tmp42_);
	move_item = _tmp42_;
	_tmp43_ = widgets_context_menu_menu_item_new (_ ("Labels"), "tag-outline-symbolic");
	g_object_ref_sink (_tmp43_);
	labels_item = _tmp43_;
	_tmp44_ = widgets_context_menu_menu_item_new (_ ("Add Subtask"), "plus-large-symbolic");
	g_object_ref_sink (_tmp44_);
	add_item = _tmp44_;
	_tmp45_ = widgets_context_menu_menu_item_new (_ ("Complete"), "check-round-outline-symbolic");
	g_object_ref_sink (_tmp45_);
	complete_item = _tmp45_;
	_tmp46_ = widgets_context_menu_menu_item_new (_ ("Edit"), "edit-symbolic");
	g_object_ref_sink (_tmp46_);
	edit_item = _tmp46_;
	_tmp47_ = widgets_context_menu_menu_item_new (_ ("Duplicate"), "tabs-stack-symbolic");
	g_object_ref_sink (_tmp47_);
	duplicate_item = _tmp47_;
	_tmp48_ = widgets_context_menu_menu_item_new (_ ("Delete Task"), "user-trash-symbolic");
	g_object_ref_sink (_tmp48_);
	delete_item = _tmp48_;
	_tmp49_ = delete_item;
	gtk_widget_add_css_class ((GtkWidget*) _tmp49_, "menu-item-danger");
	_tmp50_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp50_);
	menu_box = _tmp50_;
	_tmp51_ = menu_box;
	_tmp52_ = menu_box;
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp52_, 3);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp51_, 3);
	_tmp54_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp55_ = _tmp54_;
	_tmp56_ = objects_item_get_completed (_tmp55_);
	_tmp57_ = _tmp56_;
	if (!_tmp57_) {
		ObjectsItem* _tmp58_;
		ObjectsItem* _tmp59_;
		ObjectsProject* _tmp60_;
		ObjectsProject* _tmp61_;
		gboolean _tmp62_;
		gboolean _tmp63_;
		_tmp58_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp59_ = _tmp58_;
		_tmp60_ = objects_item_get_project (_tmp59_);
		_tmp61_ = _tmp60_;
		_tmp62_ = objects_project_get_is_deck (_tmp61_);
		_tmp63_ = _tmp62_;
		_tmp53_ = !_tmp63_;
	} else {
		_tmp53_ = FALSE;
	}
	if (_tmp53_) {
		GtkBox* _tmp64_;
		WidgetsContextMenuMenuItem* _tmp65_;
		GtkBox* _tmp66_;
		WidgetsContextMenuMenuItem* _tmp67_;
		GtkBox* _tmp68_;
		WidgetsContextMenuMenuSeparator* _tmp69_;
		WidgetsContextMenuMenuSeparator* _tmp70_;
		GtkBox* _tmp71_;
		WidgetsContextMenuMenuItem* _tmp72_;
		GtkBox* _tmp73_;
		WidgetsContextMenuMenuItem* _tmp74_;
		GtkBox* _tmp75_;
		WidgetsContextMenuMenuItem* _tmp76_;
		GtkBox* _tmp77_;
		WidgetsContextMenuMenuSeparator* _tmp78_;
		WidgetsContextMenuMenuSeparator* _tmp79_;
		GtkBox* _tmp80_;
		WidgetsContextMenuMenuItem* _tmp81_;
		GtkBox* _tmp82_;
		WidgetsContextMenuMenuItem* _tmp83_;
		GtkBox* _tmp84_;
		WidgetsContextMenuMenuItem* _tmp85_;
		GtkBox* _tmp86_;
		WidgetsContextMenuMenuSeparator* _tmp87_;
		WidgetsContextMenuMenuSeparator* _tmp88_;
		GtkBox* _tmp89_;
		WidgetsContextMenuMenuItem* _tmp90_;
		GtkBox* _tmp91_;
		WidgetsContextMenuMenuItem* _tmp92_;
		GtkBox* _tmp93_;
		WidgetsContextMenuMenuSeparator* _tmp94_;
		WidgetsContextMenuMenuSeparator* _tmp95_;
		GeeHashMap* _tmp96_;
		WidgetsContextMenuMenuItem* _tmp97_;
		gulong _tmp98_;
		WidgetsContextMenuMenuItem* _tmp99_;
		GeeHashMap* _tmp100_;
		WidgetsContextMenuMenuItem* _tmp101_;
		gulong _tmp102_;
		WidgetsContextMenuMenuItem* _tmp103_;
		GeeHashMap* _tmp104_;
		WidgetsContextMenuMenuItem* _tmp105_;
		gulong _tmp106_;
		WidgetsContextMenuMenuItem* _tmp107_;
		GeeHashMap* _tmp108_;
		WidgetsContextMenuMenuItem* _tmp109_;
		gulong _tmp110_;
		WidgetsContextMenuMenuItem* _tmp111_;
		GeeHashMap* _tmp112_;
		WidgetsContextMenuMenuItem* _tmp113_;
		gulong _tmp114_;
		WidgetsContextMenuMenuItem* _tmp115_;
		GeeHashMap* _tmp116_;
		WidgetsContextMenuMenuItem* _tmp117_;
		gulong _tmp118_;
		WidgetsContextMenuMenuItem* _tmp119_;
		GeeHashMap* _tmp120_;
		WidgetsContextMenuMenuItem* _tmp121_;
		gulong _tmp122_;
		WidgetsContextMenuMenuItem* _tmp123_;
		GeeHashMap* _tmp124_;
		WidgetsContextMenuMenuItem* _tmp125_;
		gulong _tmp126_;
		WidgetsContextMenuMenuItem* _tmp127_;
		GeeHashMap* _tmp128_;
		WidgetsContextMenuMenuItem* _tmp129_;
		gulong _tmp130_;
		WidgetsContextMenuMenuItem* _tmp131_;
		GeeHashMap* _tmp132_;
		WidgetsContextMenuMenuItem* _tmp133_;
		gulong _tmp134_;
		WidgetsContextMenuMenuItem* _tmp135_;
		_tmp64_ = menu_box;
		_tmp65_ = complete_item;
		gtk_box_append (_tmp64_, (GtkWidget*) _tmp65_);
		_tmp66_ = menu_box;
		_tmp67_ = edit_item;
		gtk_box_append (_tmp66_, (GtkWidget*) _tmp67_);
		_tmp68_ = menu_box;
		_tmp69_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp69_);
		_tmp70_ = _tmp69_;
		gtk_box_append (_tmp68_, (GtkWidget*) _tmp70_);
		_g_object_unref0 (_tmp70_);
		_tmp71_ = menu_box;
		_tmp72_ = today_item;
		gtk_box_append (_tmp71_, (GtkWidget*) _tmp72_);
		_tmp73_ = menu_box;
		_tmp74_ = tomorrow_item;
		gtk_box_append (_tmp73_, (GtkWidget*) _tmp74_);
		_tmp75_ = menu_box;
		_tmp76_ = self->priv->no_date_item;
		gtk_box_append (_tmp75_, (GtkWidget*) _tmp76_);
		_tmp77_ = menu_box;
		_tmp78_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp78_);
		_tmp79_ = _tmp78_;
		gtk_box_append (_tmp77_, (GtkWidget*) _tmp79_);
		_g_object_unref0 (_tmp79_);
		_tmp80_ = menu_box;
		_tmp81_ = self->priv->pinboard_item;
		gtk_box_append (_tmp80_, (GtkWidget*) _tmp81_);
		_tmp82_ = menu_box;
		_tmp83_ = move_item;
		gtk_box_append (_tmp82_, (GtkWidget*) _tmp83_);
		_tmp84_ = menu_box;
		_tmp85_ = labels_item;
		gtk_box_append (_tmp84_, (GtkWidget*) _tmp85_);
		_tmp86_ = menu_box;
		_tmp87_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp87_);
		_tmp88_ = _tmp87_;
		gtk_box_append (_tmp86_, (GtkWidget*) _tmp88_);
		_g_object_unref0 (_tmp88_);
		_tmp89_ = menu_box;
		_tmp90_ = add_item;
		gtk_box_append (_tmp89_, (GtkWidget*) _tmp90_);
		_tmp91_ = menu_box;
		_tmp92_ = duplicate_item;
		gtk_box_append (_tmp91_, (GtkWidget*) _tmp92_);
		_tmp93_ = menu_box;
		_tmp94_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp94_);
		_tmp95_ = _tmp94_;
		gtk_box_append (_tmp93_, (GtkWidget*) _tmp95_);
		_g_object_unref0 (_tmp95_);
		_tmp96_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp97_ = today_item;
		_tmp98_ = g_signal_connect_object (_tmp97_, "activate-item", (GCallback) ____lambda169__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp99_ = today_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp96_, (gpointer) ((guintptr) _tmp98_), (GObject*) _tmp99_);
		_tmp100_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp101_ = tomorrow_item;
		_tmp102_ = g_signal_connect_object (_tmp101_, "activate-item", (GCallback) ____lambda170__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp103_ = tomorrow_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp100_, (gpointer) ((guintptr) _tmp102_), (GObject*) _tmp103_);
		_tmp104_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp105_ = self->priv->pinboard_item;
		_tmp106_ = g_signal_connect_object (_tmp105_, "activate-item", (GCallback) ____lambda171__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp107_ = self->priv->pinboard_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp104_, (gpointer) ((guintptr) _tmp106_), (GObject*) _tmp107_);
		_tmp108_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp109_ = self->priv->no_date_item;
		_tmp110_ = g_signal_connect_object (_tmp109_, "activate-item", (GCallback) ____lambda172__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp111_ = self->priv->no_date_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp108_, (gpointer) ((guintptr) _tmp110_), (GObject*) _tmp111_);
		_tmp112_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp113_ = move_item;
		_tmp114_ = g_signal_connect_object (_tmp113_, "activate-item", (GCallback) ____lambda173__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp115_ = move_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp112_, (gpointer) ((guintptr) _tmp114_), (GObject*) _tmp115_);
		_tmp116_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp117_ = labels_item;
		_tmp118_ = g_signal_connect_object (_tmp117_, "activate-item", (GCallback) ____lambda175__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp119_ = labels_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp116_, (gpointer) ((guintptr) _tmp118_), (GObject*) _tmp119_);
		_tmp120_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp121_ = complete_item;
		_tmp122_ = g_signal_connect_object (_tmp121_, "activate-item", (GCallback) ____lambda177__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp123_ = complete_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp120_, (gpointer) ((guintptr) _tmp122_), (GObject*) _tmp123_);
		_tmp124_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp125_ = edit_item;
		_tmp126_ = g_signal_connect_object (_tmp125_, "activate-item", (GCallback) ____lambda178__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp127_ = edit_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp124_, (gpointer) ((guintptr) _tmp126_), (GObject*) _tmp127_);
		_tmp128_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp129_ = add_item;
		_tmp130_ = g_signal_connect_object (_tmp129_, "activate-item", (GCallback) ____lambda179__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp131_ = add_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp128_, (gpointer) ((guintptr) _tmp130_), (GObject*) _tmp131_);
		_tmp132_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp133_ = duplicate_item;
		_tmp134_ = g_signal_connect_object ((GtkButton*) _tmp133_, "clicked", (GCallback) ____lambda180__gtk_button_clicked, self, 0);
		_tmp135_ = duplicate_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp132_, (gpointer) ((guintptr) _tmp134_), (GObject*) _tmp135_);
	}
	_tmp136_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp137_ = _tmp136_;
	_tmp138_ = objects_item_get_project (_tmp137_);
	_tmp139_ = _tmp138_;
	_tmp140_ = objects_project_get_is_deck (_tmp139_);
	_tmp141_ = _tmp140_;
	if (!_tmp141_) {
		GtkBox* _tmp142_;
		WidgetsContextMenuMenuItem* _tmp143_;
		GeeHashMap* _tmp144_;
		WidgetsContextMenuMenuItem* _tmp145_;
		gulong _tmp146_;
		WidgetsContextMenuMenuItem* _tmp147_;
		_tmp142_ = menu_box;
		_tmp143_ = delete_item;
		gtk_box_append (_tmp142_, (GtkWidget*) _tmp143_);
		_tmp144_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp145_ = delete_item;
		_tmp146_ = g_signal_connect_object (_tmp145_, "activate-item", (GCallback) ____lambda181__widgets_context_menu_menu_item_activate_item, self, 0);
		_tmp147_ = delete_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp144_, (gpointer) ((guintptr) _tmp146_), (GObject*) _tmp147_);
	}
	_tmp148_ = menu_box;
	_tmp149_ = _g_object_ref0 ((GtkWidget*) _tmp148_);
	_tmp150_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp150_, FALSE);
	gtk_popover_set_child (_tmp150_, _tmp149_);
	_g_object_unref0 (_tmp149_);
	gtk_widget_set_halign ((GtkWidget*) _tmp150_, GTK_ALIGN_START);
	g_object_set ((GtkWidget*) _tmp150_, "width-request", 275, NULL);
	g_object_ref_sink (_tmp150_);
	_g_object_unref0 (self->priv->menu_handle_popover);
	self->priv->menu_handle_popover = _tmp150_;
	_tmp151_ = self->priv->menu_handle_popover;
	gtk_widget_set_parent ((GtkWidget*) _tmp151_, (GtkWidget*) self);
	_tmp152_ = self->priv->menu_handle_popover;
	_tmp153_.x = (gint) x;
	_tmp153_.y = (gint) y;
	_tmp153_.width = 1;
	_tmp153_.height = 1;
	g_object_set (_tmp152_, "pointing-to", &_tmp153_, NULL);
	_tmp154_ = self->priv->menu_handle_popover;
	gtk_popover_popup (_tmp154_);
	_g_object_unref0 (menu_box);
	_g_object_unref0 (delete_item);
	_g_object_unref0 (duplicate_item);
	_g_object_unref0 (edit_item);
	_g_object_unref0 (complete_item);
	_g_object_unref0 (add_item);
	_g_object_unref0 (labels_item);
	_g_object_unref0 (move_item);
	_g_object_unref0 (tomorrow_item);
	_g_object_unref0 (today_item);
}

static void
___lambda203_ (LayoutsItemRow* self)
{
	ItemType _tmp0_ = 0;
	WidgetsContextMenuMenuSwitch* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	ObjectsItem* _tmp6_;
	ObjectsItem* _tmp7_;
	_tmp1_ = self->priv->use_note_item;
	_tmp2_ = widgets_context_menu_menu_switch_get_active (_tmp1_);
	_tmp3_ = _tmp2_;
	if (_tmp3_) {
		_tmp0_ = ITEM_TYPE_NOTE;
	} else {
		_tmp0_ = ITEM_TYPE_TASK;
	}
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp5_ = _tmp4_;
	objects_item_set_item_type (_tmp5_, _tmp0_);
	_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp7_ = _tmp6_;
	objects_item_update_local (_tmp7_);
}

static void
____lambda203__widgets_context_menu_menu_switch_activate_item (WidgetsContextMenuMenuSwitch* _sender,
                                                               gpointer self)
{
	___lambda203_ ((LayoutsItemRow*) self);
}

static void
___lambda204_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_copy_clipboard (_tmp1_);
}

static void
____lambda204__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda204_ ((LayoutsItemRow*) self);
}

static void
___lambda205_ (LayoutsItemRow* self)
{
	Util* _tmp0_;
	Util* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	ObjectsItem* _tmp8_;
	ObjectsItem* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	ObjectsItem* _tmp12_;
	ObjectsItem* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	_tmp0_ = util_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp5_ = _tmp4_;
	_tmp6_ = objects_item_get_project_id (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp9_ = _tmp8_;
	_tmp10_ = objects_item_get_section_id (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp13_ = _tmp12_;
	_tmp14_ = objects_item_get_parent_id (_tmp13_);
	_tmp15_ = _tmp14_;
	util_duplicate_item (_tmp1_, _tmp3_, _tmp7_, _tmp11_, _tmp15_, TRUE, NULL, NULL);
	_g_object_unref0 (_tmp1_);
}

static void
____lambda205__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda205_ ((LayoutsItemRow*) self);
}

static void
___lambda206_ (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	Planify* _tmp2_;
	MainWindow* _tmp3_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = planify__instance;
	_tmp3_ = _tmp2_->main_window;
	objects_item_export_ics (_tmp1_, (GtkWindow*) _tmp3_);
}

static void
____lambda206__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda206_ ((LayoutsItemRow*) self);
}

static void
__lambda208_ (LayoutsItemRow* self,
              const gchar* type,
              const gchar* id)
{
	g_return_if_fail (type != NULL);
	g_return_if_fail (id != NULL);
	if (g_strcmp0 (type, "project") == 0) {
		ServicesStore* _tmp0_;
		ObjectsProject* _tmp1_;
		ObjectsProject* _tmp2_;
		_tmp0_ = services_store_instance ();
		_tmp1_ = services_store_get_project (_tmp0_, id);
		_tmp2_ = _tmp1_;
		layouts_item_row_move (self, _tmp2_, "");
		_g_object_unref0 (_tmp2_);
	} else {
		ObjectsItem* _tmp3_;
		ObjectsItem* _tmp4_;
		ObjectsProject* _tmp5_;
		ObjectsProject* _tmp6_;
		_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp4_ = _tmp3_;
		_tmp5_ = objects_item_get_project (_tmp4_);
		_tmp6_ = _tmp5_;
		layouts_item_row_move (self, _tmp6_, id);
	}
}

static void
___lambda208__dialogs_project_picker_project_picker_changed (DialogsProjectPickerProjectPicker* _sender,
                                                             const gchar* type,
                                                             const gchar* id,
                                                             gpointer self)
{
	__lambda208_ ((LayoutsItemRow*) self, type, id);
}

static void
___lambda207_ (LayoutsItemRow* self)
{
	DialogsProjectPickerProjectPicker* dialog = NULL;
	DialogsProjectPickerProjectPicker* _tmp0_;
	GeeHashMap* _tmp1_;
	gulong _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsProject* _tmp5_;
	ObjectsProject* _tmp6_;
	Planify* _tmp7_;
	MainWindow* _tmp8_;
	_tmp0_ = dialogs_project_picker_project_picker_new_for_projects ();
	g_object_ref_sink (_tmp0_);
	dialog = _tmp0_;
	_tmp1_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp2_ = g_signal_connect_object (dialog, "changed", (GCallback) ___lambda208__dialogs_project_picker_project_picker_changed, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp1_, (gpointer) ((guintptr) _tmp2_), (GObject*) dialog);
	_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp4_ = _tmp3_;
	_tmp5_ = objects_item_get_project (_tmp4_);
	_tmp6_ = _tmp5_;
	dialogs_project_picker_project_picker_set_project (dialog, _tmp6_);
	_tmp7_ = planify__instance;
	_tmp8_ = _tmp7_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp8_);
	_g_object_unref0 (dialog);
}

static void
____lambda207__gtk_button_clicked (GtkButton* _sender,
                                   gpointer self)
{
	___lambda207_ ((LayoutsItemRow*) self);
}

static void
__lambda209_ (LayoutsItemRow* self)
{
	layouts_item_base_delete_request ((LayoutsItemBase*) self, TRUE);
}

static void
___lambda209__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                            gpointer self)
{
	__lambda209_ ((LayoutsItemRow*) self);
}

static void
__lambda210_ (LayoutsItemRow* self)
{
	DialogsItemChangeHistory* dialog = NULL;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	DialogsItemChangeHistory* _tmp2_;
	Planify* _tmp3_;
	MainWindow* _tmp4_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = dialogs_item_change_history_new (_tmp1_);
	g_object_ref_sink (_tmp2_);
	dialog = _tmp2_;
	_tmp3_ = planify__instance;
	_tmp4_ = _tmp3_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp4_);
	_g_object_unref0 (dialog);
}

static void
___lambda210__widgets_context_menu_menu_item_activate_item (WidgetsContextMenuMenuItem* _sender,
                                                            gpointer self)
{
	__lambda210_ ((LayoutsItemRow*) self);
}

static GtkPopover*
layouts_item_row_build_button_context_menu (LayoutsItemRow* self)
{
	WidgetsContextMenuMenuSwitch* _tmp0_;
	WidgetsContextMenuMenuSwitch* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	ItemType _tmp4_;
	ItemType _tmp5_;
	WidgetsContextMenuMenuItem* copy_clipboard_item = NULL;
	WidgetsContextMenuMenuItem* _tmp6_;
	WidgetsContextMenuMenuItem* duplicate_item = NULL;
	WidgetsContextMenuMenuItem* _tmp7_;
	WidgetsContextMenuMenuItem* move_item = NULL;
	WidgetsContextMenuMenuItem* _tmp8_;
	WidgetsContextMenuMenuItem* export_ics_item = NULL;
	WidgetsContextMenuMenuItem* _tmp9_;
	WidgetsContextMenuMenuItem* _tmp10_;
	ObjectsItem* _tmp11_;
	ObjectsItem* _tmp12_;
	ObjectsProject* _tmp13_;
	ObjectsProject* _tmp14_;
	SourceType _tmp15_;
	SourceType _tmp16_;
	WidgetsContextMenuMenuItem* delete_item = NULL;
	WidgetsContextMenuMenuItem* _tmp17_;
	WidgetsContextMenuMenuItem* _tmp18_;
	WidgetsContextMenuMenuItem* more_information_item = NULL;
	WidgetsContextMenuMenuItem* _tmp19_;
	ObjectsItem* _tmp20_;
	ObjectsItem* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	GtkPopover* popover = NULL;
	GtkPopover* _tmp42_ = NULL;
	GtkBox* menu_box = NULL;
	GtkBox* _tmp43_;
	GtkBox* _tmp44_;
	GtkBox* _tmp45_;
	ObjectsItem* _tmp46_;
	ObjectsItem* _tmp47_;
	gboolean _tmp48_;
	gboolean _tmp49_;
	GtkBox* _tmp83_;
	WidgetsContextMenuMenuItem* _tmp84_;
	GtkBox* _tmp85_;
	WidgetsContextMenuMenuSeparator* _tmp86_;
	WidgetsContextMenuMenuSeparator* _tmp87_;
	GtkBox* _tmp88_;
	WidgetsContextMenuMenuItem* _tmp89_;
	GtkPopover* _tmp90_;
	GtkBox* _tmp91_;
	GeeHashMap* _tmp92_;
	WidgetsContextMenuMenuItem* _tmp93_;
	gulong _tmp94_;
	WidgetsContextMenuMenuItem* _tmp95_;
	GeeHashMap* _tmp96_;
	WidgetsContextMenuMenuItem* _tmp97_;
	gulong _tmp98_;
	WidgetsContextMenuMenuItem* _tmp99_;
	GtkPopover* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = widgets_context_menu_menu_switch_new (_ ("Use as a Note"), "paper-symbolic");
	g_object_ref_sink (_tmp0_);
	_g_object_unref0 (self->priv->use_note_item);
	self->priv->use_note_item = _tmp0_;
	_tmp1_ = self->priv->use_note_item;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_item_type (_tmp3_);
	_tmp5_ = _tmp4_;
	widgets_context_menu_menu_switch_set_active (_tmp1_, _tmp5_ == ITEM_TYPE_NOTE);
	_tmp6_ = widgets_context_menu_menu_item_new (_ ("Copy to Clipboard"), "clipboard-symbolic");
	g_object_ref_sink (_tmp6_);
	copy_clipboard_item = _tmp6_;
	_tmp7_ = widgets_context_menu_menu_item_new (_ ("Duplicate"), "tabs-stack-symbolic");
	g_object_ref_sink (_tmp7_);
	duplicate_item = _tmp7_;
	_tmp8_ = widgets_context_menu_menu_item_new (_ ("Move"), "arrow3-right-symbolic");
	g_object_ref_sink (_tmp8_);
	move_item = _tmp8_;
	_tmp9_ = widgets_context_menu_menu_item_new (_ ("Export as .ics"), "document-save-symbolic");
	g_object_ref_sink (_tmp9_);
	export_ics_item = _tmp9_;
	_tmp10_ = export_ics_item;
	_tmp11_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp12_ = _tmp11_;
	_tmp13_ = objects_item_get_project (_tmp12_);
	_tmp14_ = _tmp13_;
	_tmp15_ = objects_project_get_source_type (_tmp14_);
	_tmp16_ = _tmp15_;
	gtk_widget_set_visible ((GtkWidget*) _tmp10_, _tmp16_ == SOURCE_TYPE_CALDAV);
	_tmp17_ = widgets_context_menu_menu_item_new (_ ("Delete Task"), "user-trash-symbolic");
	g_object_ref_sink (_tmp17_);
	delete_item = _tmp17_;
	_tmp18_ = delete_item;
	gtk_widget_add_css_class ((GtkWidget*) _tmp18_, "menu-item-danger");
	_tmp19_ = widgets_context_menu_menu_item_new (_ ("Change History"), "rotation-edit-symbolic");
	g_object_ref_sink (_tmp19_);
	more_information_item = _tmp19_;
	_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp21_ = _tmp20_;
	_tmp22_ = objects_item_get_updated_at (_tmp21_);
	_tmp23_ = _tmp22_;
	if (g_strcmp0 (_tmp23_, "") != 0) {
		WidgetsContextMenuMenuItem* _tmp24_;
		ObjectsItem* _tmp25_;
		ObjectsItem* _tmp26_;
		GDateTime* _tmp27_;
		GDateTime* _tmp28_;
		gchar* _tmp29_;
		gchar* _tmp30_;
		gchar* _tmp31_;
		gchar* _tmp32_;
		_tmp24_ = more_information_item;
		_tmp25_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp26_ = _tmp25_;
		_tmp27_ = objects_item_get_updated_datetime (_tmp26_);
		_tmp28_ = _tmp27_;
		_tmp29_ = utils_datetime_get_relative_date_from_date (_tmp28_);
		_tmp30_ = _tmp29_;
		_tmp31_ = g_strdup_printf (_ ("Updated: %s"), _tmp30_);
		_tmp32_ = _tmp31_;
		widgets_context_menu_menu_item_set_subtitle (_tmp24_, _tmp32_);
		_g_free0 (_tmp32_);
		_g_free0 (_tmp30_);
	} else {
		WidgetsContextMenuMenuItem* _tmp33_;
		ObjectsItem* _tmp34_;
		ObjectsItem* _tmp35_;
		GDateTime* _tmp36_;
		GDateTime* _tmp37_;
		gchar* _tmp38_;
		gchar* _tmp39_;
		gchar* _tmp40_;
		gchar* _tmp41_;
		_tmp33_ = more_information_item;
		_tmp34_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp35_ = _tmp34_;
		_tmp36_ = objects_item_get_added_datetime (_tmp35_);
		_tmp37_ = _tmp36_;
		_tmp38_ = utils_datetime_get_relative_date_from_date (_tmp37_);
		_tmp39_ = _tmp38_;
		_tmp40_ = g_strdup_printf (_ ("Created: %s"), _tmp39_);
		_tmp41_ = _tmp40_;
		widgets_context_menu_menu_item_set_subtitle (_tmp33_, _tmp41_);
		_g_free0 (_tmp41_);
		_g_free0 (_tmp39_);
	}
	_tmp42_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp42_, FALSE);
	gtk_popover_set_position (_tmp42_, GTK_POS_BOTTOM);
	g_object_set ((GtkWidget*) _tmp42_, "width-request", 250, NULL);
	g_object_ref_sink (_tmp42_);
	popover = _tmp42_;
	_tmp43_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp43_);
	menu_box = _tmp43_;
	_tmp44_ = menu_box;
	_tmp45_ = menu_box;
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp45_, 3);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp44_, 3);
	_tmp46_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp47_ = _tmp46_;
	_tmp48_ = objects_item_get_completed (_tmp47_);
	_tmp49_ = _tmp48_;
	if (!_tmp49_) {
		GtkBox* _tmp50_;
		WidgetsContextMenuMenuSwitch* _tmp51_;
		GtkBox* _tmp52_;
		WidgetsContextMenuMenuSeparator* _tmp53_;
		WidgetsContextMenuMenuSeparator* _tmp54_;
		GtkBox* _tmp55_;
		WidgetsContextMenuMenuItem* _tmp56_;
		GtkBox* _tmp57_;
		WidgetsContextMenuMenuItem* _tmp58_;
		GtkBox* _tmp59_;
		WidgetsContextMenuMenuItem* _tmp60_;
		GtkBox* _tmp61_;
		WidgetsContextMenuMenuItem* _tmp62_;
		GeeHashMap* _tmp63_;
		WidgetsContextMenuMenuSwitch* _tmp64_;
		gulong _tmp65_;
		WidgetsContextMenuMenuSwitch* _tmp66_;
		GeeHashMap* _tmp67_;
		WidgetsContextMenuMenuItem* _tmp68_;
		gulong _tmp69_;
		WidgetsContextMenuMenuItem* _tmp70_;
		GeeHashMap* _tmp71_;
		WidgetsContextMenuMenuItem* _tmp72_;
		gulong _tmp73_;
		WidgetsContextMenuMenuItem* _tmp74_;
		GeeHashMap* _tmp75_;
		WidgetsContextMenuMenuItem* _tmp76_;
		gulong _tmp77_;
		WidgetsContextMenuMenuItem* _tmp78_;
		GeeHashMap* _tmp79_;
		WidgetsContextMenuMenuItem* _tmp80_;
		gulong _tmp81_;
		WidgetsContextMenuMenuItem* _tmp82_;
		_tmp50_ = menu_box;
		_tmp51_ = self->priv->use_note_item;
		gtk_box_append (_tmp50_, (GtkWidget*) _tmp51_);
		_tmp52_ = menu_box;
		_tmp53_ = widgets_context_menu_menu_separator_new ();
		g_object_ref_sink (_tmp53_);
		_tmp54_ = _tmp53_;
		gtk_box_append (_tmp52_, (GtkWidget*) _tmp54_);
		_g_object_unref0 (_tmp54_);
		_tmp55_ = menu_box;
		_tmp56_ = copy_clipboard_item;
		gtk_box_append (_tmp55_, (GtkWidget*) _tmp56_);
		_tmp57_ = menu_box;
		_tmp58_ = duplicate_item;
		gtk_box_append (_tmp57_, (GtkWidget*) _tmp58_);
		_tmp59_ = menu_box;
		_tmp60_ = export_ics_item;
		gtk_box_append (_tmp59_, (GtkWidget*) _tmp60_);
		_tmp61_ = menu_box;
		_tmp62_ = move_item;
		gtk_box_append (_tmp61_, (GtkWidget*) _tmp62_);
		_tmp63_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp64_ = self->priv->use_note_item;
		_tmp65_ = g_signal_connect_object (_tmp64_, "activate-item", (GCallback) ____lambda203__widgets_context_menu_menu_switch_activate_item, self, 0);
		_tmp66_ = self->priv->use_note_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp63_, (gpointer) ((guintptr) _tmp65_), (GObject*) _tmp66_);
		_tmp67_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp68_ = copy_clipboard_item;
		_tmp69_ = g_signal_connect_object ((GtkButton*) _tmp68_, "clicked", (GCallback) ____lambda204__gtk_button_clicked, self, 0);
		_tmp70_ = copy_clipboard_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp67_, (gpointer) ((guintptr) _tmp69_), (GObject*) _tmp70_);
		_tmp71_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp72_ = duplicate_item;
		_tmp73_ = g_signal_connect_object ((GtkButton*) _tmp72_, "clicked", (GCallback) ____lambda205__gtk_button_clicked, self, 0);
		_tmp74_ = duplicate_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp71_, (gpointer) ((guintptr) _tmp73_), (GObject*) _tmp74_);
		_tmp75_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp76_ = export_ics_item;
		_tmp77_ = g_signal_connect_object ((GtkButton*) _tmp76_, "clicked", (GCallback) ____lambda206__gtk_button_clicked, self, 0);
		_tmp78_ = export_ics_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp75_, (gpointer) ((guintptr) _tmp77_), (GObject*) _tmp78_);
		_tmp79_ = ((LayoutsItemBase*) self)->signals_map;
		_tmp80_ = move_item;
		_tmp81_ = g_signal_connect_object ((GtkButton*) _tmp80_, "clicked", (GCallback) ____lambda207__gtk_button_clicked, self, 0);
		_tmp82_ = move_item;
		gee_abstract_map_set ((GeeAbstractMap*) _tmp79_, (gpointer) ((guintptr) _tmp81_), (GObject*) _tmp82_);
	}
	_tmp83_ = menu_box;
	_tmp84_ = delete_item;
	gtk_box_append (_tmp83_, (GtkWidget*) _tmp84_);
	_tmp85_ = menu_box;
	_tmp86_ = widgets_context_menu_menu_separator_new ();
	g_object_ref_sink (_tmp86_);
	_tmp87_ = _tmp86_;
	gtk_box_append (_tmp85_, (GtkWidget*) _tmp87_);
	_g_object_unref0 (_tmp87_);
	_tmp88_ = menu_box;
	_tmp89_ = more_information_item;
	gtk_box_append (_tmp88_, (GtkWidget*) _tmp89_);
	_tmp90_ = popover;
	_tmp91_ = menu_box;
	gtk_popover_set_child (_tmp90_, (GtkWidget*) _tmp91_);
	_tmp92_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp93_ = delete_item;
	_tmp94_ = g_signal_connect_object (_tmp93_, "activate-item", (GCallback) ___lambda209__widgets_context_menu_menu_item_activate_item, self, 0);
	_tmp95_ = delete_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp92_, (gpointer) ((guintptr) _tmp94_), (GObject*) _tmp95_);
	_tmp96_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp97_ = more_information_item;
	_tmp98_ = g_signal_connect_object (_tmp97_, "activate-item", (GCallback) ___lambda210__widgets_context_menu_menu_item_activate_item, self, 0);
	_tmp99_ = more_information_item;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp96_, (gpointer) ((guintptr) _tmp98_), (GObject*) _tmp99_);
	result = popover;
	_g_object_unref0 (menu_box);
	_g_object_unref0 (more_information_item);
	_g_object_unref0 (delete_item);
	_g_object_unref0 (export_ics_item);
	_g_object_unref0 (move_item);
	_g_object_unref0 (duplicate_item);
	_g_object_unref0 (copy_clipboard_item);
	return result;
}

static void
layouts_item_row_real_checked_toggled (LayoutsItemBase* base,
                                       gboolean active,
                                       guint* time)
{
	LayoutsItemRow * self;
	gboolean old_checked = FALSE;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	self = (LayoutsItemRow*) base;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_checked (_tmp1_);
	_tmp3_ = _tmp2_;
	old_checked = _tmp3_;
	if (active) {
		gboolean _tmp4_;
		gboolean _tmp5_;
		_tmp4_ = layouts_item_row_get_edit (self);
		_tmp5_ = _tmp4_;
		if (_tmp5_) {
			layouts_item_row_set_edit (self, FALSE);
		}
		layouts_item_row_complete_item (self, old_checked, time);
	} else {
		guint _tmp6_;
		_tmp6_ = self->priv->_complete_timeout;
		if (_tmp6_ != ((guint) 0)) {
			guint _tmp7_;
			AdwBin* _tmp8_;
			GtkLabel* _tmp9_;
			GtkLabel* _tmp10_;
			_tmp7_ = self->priv->_complete_timeout;
			g_source_remove (_tmp7_);
			layouts_item_row_set_complete_timeout (self, (guint) 0);
			_tmp8_ = self->itemrow_box;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp8_, "complete");
			_tmp9_ = self->priv->content_label;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp9_, "dimmed");
			_tmp10_ = self->priv->content_label;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp10_, "line-through");
		} else {
			gchar* old_completed_at = NULL;
			ObjectsItem* _tmp11_;
			ObjectsItem* _tmp12_;
			const gchar* _tmp13_;
			const gchar* _tmp14_;
			gchar* _tmp15_;
			ObjectsItem* _tmp16_;
			ObjectsItem* _tmp17_;
			ObjectsItem* _tmp18_;
			ObjectsItem* _tmp19_;
			const gchar* _tmp20_;
			_tmp11_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp12_ = _tmp11_;
			_tmp13_ = objects_item_get_completed_at (_tmp12_);
			_tmp14_ = _tmp13_;
			_tmp15_ = g_strdup (_tmp14_);
			old_completed_at = _tmp15_;
			_tmp16_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp17_ = _tmp16_;
			objects_item_set_checked (_tmp17_, FALSE);
			_tmp18_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp19_ = _tmp18_;
			objects_item_set_completed_at (_tmp19_, "");
			_tmp20_ = old_completed_at;
			_layouts_item_row_complete_item (self, old_checked, _tmp20_, NULL, NULL);
			_g_free0 (old_completed_at);
		}
	}
}

static Block30Data*
block30_data_ref (Block30Data* _data30_)
{
	g_atomic_int_inc (&_data30_->_ref_count_);
	return _data30_;
}

static void
block30_data_unref (void * _userdata_)
{
	Block30Data* _data30_;
	_data30_ = (Block30Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data30_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data30_->self;
		_g_object_unref0 (self);
		g_slice_free (Block30Data, _data30_);
	}
}

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 gboolean
__lambda161_ (Block30Data* _data30_)
{
	LayoutsItemRow* self;
	gboolean _tmp0_ = FALSE;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsDueDate* _tmp3_;
	ObjectsDueDate* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	gboolean result;
	self = _data30_->self;
	layouts_item_row_set_complete_timeout (self, (guint) 0);
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_due (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = objects_due_date_get_is_recurring (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_) {
		ObjectsItem* _tmp7_;
		ObjectsItem* _tmp8_;
		ObjectsDueDate* _tmp9_;
		ObjectsDueDate* _tmp10_;
		gboolean _tmp11_;
		gboolean _tmp12_;
		_tmp7_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp8_ = _tmp7_;
		_tmp9_ = objects_item_get_due (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = objects_due_date_get_is_recurrency_end (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp0_ = !_tmp12_;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		self->priv->_recurrency_reset = TRUE;
		layouts_item_row_update_next_recurrency (self);
	} else {
		gchar* old_completed_at = NULL;
		ObjectsItem* _tmp13_;
		ObjectsItem* _tmp14_;
		const gchar* _tmp15_;
		const gchar* _tmp16_;
		gchar* _tmp17_;
		ObjectsItem* _tmp18_;
		ObjectsItem* _tmp19_;
		ObjectsItem* _tmp20_;
		ObjectsItem* _tmp21_;
		GDateTime* _tmp22_;
		GDateTime* _tmp23_;
		gchar* _tmp24_;
		gchar* _tmp25_;
		const gchar* _tmp26_;
		_tmp13_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp14_ = _tmp13_;
		_tmp15_ = objects_item_get_completed_at (_tmp14_);
		_tmp16_ = _tmp15_;
		_tmp17_ = g_strdup (_tmp16_);
		old_completed_at = _tmp17_;
		_tmp18_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp19_ = _tmp18_;
		objects_item_set_checked (_tmp19_, TRUE);
		_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp21_ = _tmp20_;
		_tmp22_ = g_date_time_new_now_local ();
		_tmp23_ = _tmp22_;
		_tmp24_ = g_date_time_to_string (_tmp23_);
		_tmp25_ = _tmp24_;
		objects_item_set_completed_at (_tmp21_, _tmp25_);
		_g_free0 (_tmp25_);
		_g_date_time_unref0 (_tmp23_);
		_tmp26_ = old_completed_at;
		_layouts_item_row_complete_item (self, _data30_->old_checked, _tmp26_, NULL, NULL);
		_g_free0 (old_completed_at);
	}
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
___lambda161__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda161_ (self);
	return result;
}

static void
layouts_item_row_complete_item (LayoutsItemRow* self,
                                gboolean old_checked,
                                guint* time)
{
	Block30Data* _data30_;
	ServicesSettings* _tmp0_;
	ServicesSettings* _tmp1_;
	GSettings* _tmp2_;
	gboolean _tmp3_;
	guint timeout = 0U;
	ServicesSettings* _tmp6_;
	ServicesSettings* _tmp7_;
	GSettings* _tmp8_;
	gboolean _tmp9_;
	GtkLabel* _tmp10_;
	AdwBin* _tmp11_;
	ServicesSettings* _tmp12_;
	ServicesSettings* _tmp13_;
	GSettings* _tmp14_;
	gboolean _tmp15_;
	g_return_if_fail (self != NULL);
	_data30_ = g_slice_new0 (Block30Data);
	_data30_->_ref_count_ = 1;
	_data30_->self = g_object_ref (self);
	_data30_->old_checked = old_checked;
	_tmp0_ = services_settings_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = _tmp1_->settings;
	_tmp3_ = g_settings_get_boolean (_tmp2_, "task-complete-tone");
	_g_object_unref0 (_tmp1_);
	if (_tmp3_) {
		Util* _tmp4_;
		Util* _tmp5_;
		_tmp4_ = util_get_default ();
		_tmp5_ = _tmp4_;
		util_play_audio (_tmp5_);
		_g_object_unref0 (_tmp5_);
	}
	timeout = (guint) 3000;
	_tmp6_ = services_settings_get_default ();
	_tmp7_ = _tmp6_;
	_tmp8_ = _tmp7_->settings;
	_tmp9_ = g_settings_get_enum (_tmp8_, "complete-task") == 0;
	_g_object_unref0 (_tmp7_);
	if (_tmp9_) {
		timeout = (guint) 0;
	}
	if (time != NULL) {
		timeout = *time;
	}
	_tmp10_ = self->priv->content_label;
	gtk_widget_add_css_class ((GtkWidget*) _tmp10_, "dimmed");
	_tmp11_ = self->itemrow_box;
	gtk_widget_add_css_class ((GtkWidget*) _tmp11_, "complete");
	_tmp12_ = services_settings_get_default ();
	_tmp13_ = _tmp12_;
	_tmp14_ = _tmp13_->settings;
	_tmp15_ = g_settings_get_boolean (_tmp14_, "underline-completed-tasks");
	_g_object_unref0 (_tmp13_);
	if (_tmp15_) {
		GtkLabel* _tmp16_;
		_tmp16_ = self->priv->content_label;
		gtk_widget_add_css_class ((GtkWidget*) _tmp16_, "line-through");
	}
	layouts_item_row_set_complete_timeout (self, g_timeout_add_full (G_PRIORITY_DEFAULT, timeout, ___lambda161__gsource_func, block30_data_ref (_data30_), block30_data_unref));
	block30_data_unref (_data30_);
	_data30_ = NULL;
}

static void
_layouts_item_row_complete_item_data_free (gpointer _data)
{
	LayoutsItemRowCompleteItemData* _data_;
	_data_ = _data;
	_g_free0 (_data_->old_completed_at);
	_g_object_unref0 (_data_->self);
	g_slice_free (LayoutsItemRowCompleteItemData, _data_);
}

static void
_layouts_item_row_complete_item (LayoutsItemRow* self,
                                 gboolean old_checked,
                                 const gchar* old_completed_at,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_)
{
	LayoutsItemRowCompleteItemData* _data_;
	LayoutsItemRow* _tmp0_;
	gchar* _tmp1_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (old_completed_at != NULL);
	_data_ = g_slice_new0 (LayoutsItemRowCompleteItemData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, _layouts_item_row_complete_item_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	_data_->old_checked = old_checked;
	_tmp1_ = g_strdup (old_completed_at);
	_g_free0 (_data_->old_completed_at);
	_data_->old_completed_at = _tmp1_;
	_layouts_item_row_complete_item_co (_data_);
}

static void
_layouts_item_row_complete_item_finish (LayoutsItemRow* self,
                                        GAsyncResult* _res_)
{
	LayoutsItemRowCompleteItemData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
_layouts_item_row_complete_item_ready (GObject* source_object,
                                       GAsyncResult* _res_,
                                       gpointer _user_data_)
{
	LayoutsItemRowCompleteItemData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	_layouts_item_row_complete_item_co (_data_);
}

static gboolean
_layouts_item_row_complete_item_co (LayoutsItemRowCompleteItemData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_tmp0_ = _data_->self->priv->checked_button;
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp0_, FALSE);
	_data_->_tmp1_ = _data_->self->priv->subitems;
	gtk_widget_set_sensitive ((GtkWidget*) _data_->_tmp1_, FALSE);
	_data_->_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) _data_->self);
	_data_->_tmp3_ = _data_->_tmp2_;
	_data_->_state_ = 1;
	objects_item_complete_item (_data_->_tmp3_, _data_->old_checked, _layouts_item_row_complete_item_ready, _data_);
	return FALSE;
	_state_1:
	_data_->_tmp4_ = objects_item_complete_item_finish (_data_->_tmp3_, _data_->_res_);
	_data_->response = _data_->_tmp4_;
	_data_->_tmp5_ = _data_->response;
	_data_->_tmp6_ = http_response_get_status (_data_->_tmp5_);
	_data_->_tmp7_ = _data_->_tmp6_;
	if (_data_->_tmp7_) {
		_layouts_item_base_show_task_completed_toast ((LayoutsItemBase*) _data_->self);
	} else {
		_data_->_tmp8_ = _data_->response;
		_layouts_item_row_complete_item_error (_data_->self, _data_->_tmp8_, _data_->old_checked, _data_->old_completed_at);
	}
	_http_response_unref0 (_data_->response);
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
	if (_data_->_state_ != 0) {
		while (!g_task_get_completed (_data_->_async_result)) {
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
		}
	}
	g_object_unref (_data_->_async_result);
	return FALSE;
}

static void
_layouts_item_row_complete_item_error (LayoutsItemRow* self,
                                       HttpResponse* response,
                                       gboolean old_checked,
                                       const gchar* old_completed_at)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	GtkCheckButton* _tmp4_;
	GtkCheckButton* _tmp5_;
	WidgetsSubItems* _tmp6_;
	AdwBin* _tmp7_;
	GtkLabel* _tmp8_;
	GtkLabel* _tmp9_;
	gint _tmp10_;
	gint _tmp11_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (response != NULL);
	g_return_if_fail (old_completed_at != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_set_checked (_tmp1_, old_checked);
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	objects_item_set_completed_at (_tmp3_, old_completed_at);
	layouts_item_row_set_is_loading (self, FALSE);
	_tmp4_ = self->priv->checked_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp4_, TRUE);
	_tmp5_ = self->priv->checked_button;
	gtk_check_button_set_active (_tmp5_, FALSE);
	_tmp6_ = self->priv->subitems;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp6_, TRUE);
	_tmp7_ = self->itemrow_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp7_, "complete");
	_tmp8_ = self->priv->content_label;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp8_, "dimmed");
	_tmp9_ = self->priv->content_label;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp9_, "line-through");
	_tmp10_ = http_response_get_error_code (response);
	_tmp11_ = _tmp10_;
	if (_tmp11_ != 412) {
		ServicesEventBus* _tmp12_;
		ServicesEventBus* _tmp13_;
		gint _tmp14_;
		gint _tmp15_;
		const gchar* _tmp16_;
		const gchar* _tmp17_;
		_tmp12_ = services_event_bus_get_default ();
		_tmp13_ = _tmp12_;
		_tmp14_ = http_response_get_error_code (response);
		_tmp15_ = _tmp14_;
		_tmp16_ = http_response_get_error (response);
		_tmp17_ = _tmp16_;
		g_signal_emit_by_name (_tmp13_, "send-error-toast", _tmp15_, _tmp17_);
		_g_object_unref0 (_tmp13_);
	}
}

void
layouts_item_row_update_content (LayoutsItemRow* self,
                                 const gchar* content)
{
	WidgetsTextView* _tmp0_;
	GtkTextBuffer* _tmp1_;
	GtkTextBuffer* _tmp2_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (content != NULL);
	_tmp0_ = self->priv->content_textview;
	_tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_);
	_tmp2_ = _tmp1_;
	g_object_set (_tmp2_, "text", content, NULL);
}

void
layouts_item_row_update_priority (LayoutsItemRow* self,
                                  gint priority)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_set_priority (_tmp1_, priority);
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	objects_item_update_async (_tmp3_, "");
}

void
layouts_item_row_update_due (LayoutsItemRow* self,
                             ObjectsDueDate* duedate)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (duedate != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_update_due (_tmp1_, duedate);
}

void
layouts_item_row_update_date (LayoutsItemRow* self,
                              GDateTime* date)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (self != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_update_date (_tmp1_, date);
}

void
layouts_item_row_update_deadline (LayoutsItemRow* self,
                                  GDateTime* date)
{
	gchar* _tmp0_ = NULL;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	ObjectsItem* _tmp6_;
	g_return_if_fail (self != NULL);
	if (date == NULL) {
		gchar* _tmp1_;
		_tmp1_ = g_strdup ("");
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp1_;
	} else {
		gchar* _tmp2_;
		_tmp2_ = g_date_time_to_string (date);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp2_;
	}
	_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp4_ = _tmp3_;
	objects_item_set_deadline_date (_tmp4_, _tmp0_);
	_tmp5_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp6_ = _tmp5_;
	objects_item_update_async (_tmp6_, "");
	_g_free0 (_tmp0_);
}

static void
__lambda162_ (LayoutsItemRow* self,
              GObject* obj,
              GAsyncResult* res)
{
	GDateTime* next_recurrency = NULL;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	GDateTime* _tmp2_;
	GDateTime* _tmp3_;
	g_return_if_fail (res != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_update_next_recurrency_finish (_tmp1_, res);
	next_recurrency = _tmp2_;
	self->priv->_recurrency_reset = FALSE;
	_tmp3_ = next_recurrency;
	if (_tmp3_ != NULL) {
		GDateTime* _tmp4_;
		_tmp4_ = next_recurrency;
		layouts_item_row_recurrency_update_complete (self, _tmp4_);
	}
	_g_date_time_unref0 (next_recurrency);
}

static void
___lambda162__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
	__lambda162_ ((LayoutsItemRow*) self, source_object, res);
	g_object_unref (self);
}

static void
layouts_item_row_update_next_recurrency (LayoutsItemRow* self)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (self != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_update_next_recurrency (_tmp1_, ___lambda162__gasync_ready_callback, g_object_ref (self));
}

static gboolean
__lambda163_ (LayoutsItemRow* self)
{
	GtkLabel* _tmp0_;
	gboolean result;
	_tmp0_ = self->priv->due_label;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp0_, "date-updated");
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
___lambda163__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda163_ ((LayoutsItemRow*) self);
	return result;
}

static void
layouts_item_row_recurrency_update_complete (LayoutsItemRow* self,
                                             GDateTime* next_recurrency)
{
	GtkCheckButton* _tmp0_;
	AdwBin* _tmp1_;
	GtkLabel* _tmp2_;
	GtkLabel* _tmp3_;
	GtkLabel* _tmp4_;
	gchar* title = NULL;
	gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	AdwToast* toast = NULL;
	Util* _tmp11_;
	Util* _tmp12_;
	AdwToast* _tmp13_;
	AdwToast* _tmp14_;
	ServicesEventBus* _tmp15_;
	ServicesEventBus* _tmp16_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (next_recurrency != NULL);
	self->priv->_recurrency_reset = TRUE;
	_tmp0_ = self->priv->checked_button;
	gtk_check_button_set_active (_tmp0_, FALSE);
	self->priv->_recurrency_reset = FALSE;
	layouts_item_row_set_complete_timeout (self, (guint) 0);
	_tmp1_ = self->itemrow_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp1_, "complete");
	_tmp2_ = self->priv->content_label;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp2_, "dimmed");
	_tmp3_ = self->priv->content_label;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp3_, "line-through");
	layouts_item_row_check_due (self);
	_tmp4_ = self->priv->due_label;
	gtk_widget_add_css_class ((GtkWidget*) _tmp4_, "date-updated");
	g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 1200, ___lambda163__gsource_func, g_object_ref (self), g_object_unref);
	_tmp5_ = utils_datetime_get_default_date_format_from_date (next_recurrency);
	_tmp6_ = _tmp5_;
	_tmp7_ = g_strdup_printf ("Completed. Next occurrence: %s", _tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = g_strdup (_ (_tmp8_));
	_tmp10_ = _tmp9_;
	_g_free0 (_tmp8_);
	_g_free0 (_tmp6_);
	title = _tmp10_;
	_tmp11_ = util_get_default ();
	_tmp12_ = _tmp11_;
	_tmp13_ = util_create_toast (_tmp12_, title, (guint) 3, ADW_TOAST_PRIORITY_NORMAL);
	_tmp14_ = _tmp13_;
	_g_object_unref0 (_tmp12_);
	toast = _tmp14_;
	_tmp15_ = services_event_bus_get_default ();
	_tmp16_ = _tmp15_;
	g_signal_emit_by_name (_tmp16_, "send-toast", toast);
	_g_object_unref0 (_tmp16_);
	_g_object_unref0 (toast);
	_g_free0 (title);
}

static void
layouts_item_row_real_delete_request (LayoutsItemBase* base,
                                      gboolean undo)
{
	LayoutsItemRow * self;
	GtkRevealer* _tmp0_;
	gboolean _tmp1_ = FALSE;
	ServicesSettings* _tmp2_;
	ServicesSettings* _tmp3_;
	GSettings* _tmp4_;
	gboolean _tmp5_;
	self = (LayoutsItemRow*) base;
	_tmp0_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, FALSE);
	_tmp2_ = services_settings_get_default ();
	_tmp3_ = _tmp2_;
	_tmp4_ = _tmp3_->settings;
	_tmp5_ = g_settings_get_boolean (_tmp4_, "attention-at-one");
	_g_object_unref0 (_tmp3_);
	if (_tmp5_) {
		gboolean _tmp6_;
		gboolean _tmp7_;
		_tmp6_ = layouts_item_row_get_edit (self);
		_tmp7_ = _tmp6_;
		_tmp1_ = _tmp7_;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		ServicesEventBus* _tmp8_;
		ServicesEventBus* _tmp9_;
		ServicesEventBus* _tmp10_;
		ServicesEventBus* _tmp11_;
		_tmp8_ = services_event_bus_get_default ();
		_tmp9_ = _tmp8_;
		_tmp9_->item_edit_active = FALSE;
		_g_object_unref0 (_tmp9_);
		_tmp10_ = services_event_bus_get_default ();
		_tmp11_ = _tmp10_;
		g_signal_emit_by_name (_tmp11_, "dim-content", FALSE, "");
		_g_object_unref0 (_tmp11_);
	}
	if (undo) {
		layouts_item_row_delete_undo (self);
	} else {
		ObjectsItem* _tmp12_;
		ObjectsItem* _tmp13_;
		_tmp12_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp13_ = _tmp12_;
		objects_item_delete_item (_tmp13_);
	}
}

static void
__lambda182_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	_tmp0_ = self->priv->main_revealer;
	_tmp1_ = gtk_revealer_get_reveal_child (_tmp0_);
	_tmp2_ = _tmp1_;
	if (!_tmp2_) {
		ObjectsItem* _tmp3_;
		ObjectsItem* _tmp4_;
		_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp4_ = _tmp3_;
		objects_item_delete_item (_tmp4_);
	}
}

static void
___lambda182__adw_toast_dismissed (AdwToast* _sender,
                                   gpointer self)
{
	__lambda182_ ((LayoutsItemRow*) self);
}

static void
__lambda183_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	_tmp0_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, TRUE);
}

static void
___lambda183__adw_toast_button_clicked (AdwToast* _sender,
                                        gpointer self)
{
	__lambda183_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_delete_undo (LayoutsItemRow* self)
{
	AdwToast* toast = NULL;
	Util* _tmp0_;
	Util* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	AdwToast* _tmp10_;
	AdwToast* _tmp11_;
	ServicesEventBus* _tmp12_;
	ServicesEventBus* _tmp13_;
	GeeHashMap* _tmp14_;
	gulong _tmp15_;
	GeeHashMap* _tmp16_;
	gulong _tmp17_;
	g_return_if_fail (self != NULL);
	_tmp0_ = util_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_content (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = util_get_short_name (_tmp1_, _tmp5_, CONSTANTS_SHORT_NAME_SIZE);
	_tmp7_ = _tmp6_;
	_tmp8_ = g_strdup_printf ("%s was deleted", _tmp7_);
	_tmp9_ = _tmp8_;
	_tmp10_ = adw_toast_new (_ (_tmp9_));
	_tmp11_ = _tmp10_;
	_g_free0 (_tmp9_);
	_g_free0 (_tmp7_);
	_g_object_unref0 (_tmp1_);
	toast = _tmp11_;
	adw_toast_set_button_label (toast, _ ("Undo"));
	adw_toast_set_priority (toast, ADW_TOAST_PRIORITY_HIGH);
	adw_toast_set_timeout (toast, (guint) 3);
	_tmp12_ = services_event_bus_get_default ();
	_tmp13_ = _tmp12_;
	g_signal_emit_by_name (_tmp13_, "send-toast", toast);
	_g_object_unref0 (_tmp13_);
	_tmp14_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp15_ = g_signal_connect_object (toast, "dismissed", (GCallback) ___lambda182__adw_toast_dismissed, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp14_, (gpointer) ((guintptr) _tmp15_), (GObject*) toast);
	_tmp16_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp17_ = g_signal_connect_object (toast, "button-clicked", (GCallback) ___lambda183__adw_toast_button_clicked, self, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp16_, (gpointer) ((guintptr) _tmp17_), (GObject*) toast);
	_g_object_unref0 (toast);
}

void
layouts_item_row_move (LayoutsItemRow* self,
                       ObjectsProject* project,
                       const gchar* section_id)
{
	gchar* project_id = NULL;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsProject* _tmp5_;
	ObjectsProject* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	gboolean _tmp27_ = FALSE;
	ServicesSettings* _tmp28_;
	ServicesSettings* _tmp29_;
	GSettings* _tmp30_;
	gboolean _tmp31_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (project != NULL);
	g_return_if_fail (section_id != NULL);
	_tmp0_ = objects_base_object_get_id ((ObjectsBaseObject*) project);
	_tmp1_ = _tmp0_;
	_tmp2_ = g_strdup (_tmp1_);
	project_id = _tmp2_;
	_tmp3_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp4_ = _tmp3_;
	_tmp5_ = objects_item_get_project (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp7_ = objects_project_get_source_id (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = objects_project_get_source_id (project);
	_tmp10_ = _tmp9_;
	if (g_strcmp0 (_tmp8_, _tmp10_) != 0) {
		Util* _tmp11_;
		Util* _tmp12_;
		ObjectsItem* _tmp13_;
		ObjectsItem* _tmp14_;
		_tmp11_ = util_get_default ();
		_tmp12_ = _tmp11_;
		_tmp13_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp14_ = _tmp13_;
		util_move_backend_type_item (_tmp12_, _tmp14_, project, "", TRUE, NULL, NULL);
		_g_object_unref0 (_tmp12_);
	} else {
		gboolean _tmp15_ = FALSE;
		ObjectsItem* _tmp16_;
		ObjectsItem* _tmp17_;
		const gchar* _tmp18_;
		const gchar* _tmp19_;
		const gchar* _tmp20_;
		_tmp16_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp17_ = _tmp16_;
		_tmp18_ = objects_item_get_project_id (_tmp17_);
		_tmp19_ = _tmp18_;
		_tmp20_ = project_id;
		if (g_strcmp0 (_tmp19_, _tmp20_) != 0) {
			_tmp15_ = TRUE;
		} else {
			ObjectsItem* _tmp21_;
			ObjectsItem* _tmp22_;
			const gchar* _tmp23_;
			const gchar* _tmp24_;
			_tmp21_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp22_ = _tmp21_;
			_tmp23_ = objects_item_get_section_id (_tmp22_);
			_tmp24_ = _tmp23_;
			_tmp15_ = g_strcmp0 (_tmp24_, section_id) != 0;
		}
		if (_tmp15_) {
			ObjectsItem* _tmp25_;
			ObjectsItem* _tmp26_;
			_tmp25_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp26_ = _tmp25_;
			objects_item_move (_tmp26_, project, section_id, TRUE);
		}
	}
	_tmp28_ = services_settings_get_default ();
	_tmp29_ = _tmp28_;
	_tmp30_ = _tmp29_->settings;
	_tmp31_ = g_settings_get_boolean (_tmp30_, "attention-at-one");
	_g_object_unref0 (_tmp29_);
	if (_tmp31_) {
		gboolean _tmp32_;
		gboolean _tmp33_;
		_tmp32_ = layouts_item_row_get_edit (self);
		_tmp33_ = _tmp32_;
		_tmp27_ = _tmp33_;
	} else {
		_tmp27_ = FALSE;
	}
	if (_tmp27_) {
		ServicesEventBus* _tmp34_;
		ServicesEventBus* _tmp35_;
		ServicesEventBus* _tmp36_;
		ServicesEventBus* _tmp37_;
		_tmp34_ = services_event_bus_get_default ();
		_tmp35_ = _tmp34_;
		_tmp35_->item_edit_active = FALSE;
		_g_object_unref0 (_tmp35_);
		_tmp36_ = services_event_bus_get_default ();
		_tmp37_ = _tmp36_;
		g_signal_emit_by_name (_tmp37_, "dim-content", FALSE, "");
		_g_object_unref0 (_tmp37_);
	}
	_g_free0 (project_id);
}

void
layouts_item_row_build_drag_and_drop (LayoutsItemRow* self)
{
	g_return_if_fail (self != NULL);
	_layouts_item_row_disable_drag_and_drop (self);
	layouts_item_row_build_drop_motion (self);
	layouts_item_row_build_drag_source (self);
	layouts_item_row_build_drop_target (self);
	layouts_item_row_build_drop_magic_button_target (self);
	layouts_item_row_build_drop_order_target (self);
}

static void
__lambda135_ (LayoutsItemRow* self,
              gdouble x,
              gdouble y)
{
	GdkDrop* drop = NULL;
	GtkDropControllerMotion* _tmp0_;
	GdkDrop* _tmp1_;
	GdkDrop* _tmp2_;
	GValue value = {0};
	GValue _tmp3_ = {0};
	GError* _inner_error0_ = NULL;
	_tmp0_ = self->priv->drop_motion_ctrl;
	_tmp1_ = gtk_drop_controller_motion_get_drop (_tmp0_);
	_tmp2_ = _g_object_ref0 (_tmp1_);
	drop = _tmp2_;
	g_value_init (&_tmp3_, gtk_widget_get_type ());
	value = _tmp3_;
	{
		GdkDrop* _tmp4_;
		GdkDrag* _tmp5_;
		GdkDrag* _tmp6_;
		GdkContentProvider* _tmp7_;
		GdkContentProvider* _tmp8_;
		GObject* _tmp9_;
		GObject* _tmp10_;
		gboolean _tmp11_;
		_tmp4_ = drop;
		_tmp5_ = gdk_drop_get_drag (_tmp4_);
		_tmp6_ = _tmp5_;
		_tmp7_ = gdk_drag_get_content (_tmp6_);
		_tmp8_ = _tmp7_;
		gdk_content_provider_get_value (_tmp8_, &value, &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_tmp9_ = g_value_dup_object (&value);
		_tmp10_ = _tmp9_;
		_tmp11_ = LAYOUTS_IS_ITEM_ROW (_tmp10_);
		_g_object_unref0 (_tmp10_);
		if (_tmp11_) {
			LayoutsItemRow* picked_widget = NULL;
			GValue _tmp12_;
			LayoutsItemRow* _tmp13_;
			LayoutsItemRow* _tmp14_;
			ObjectsItem* _tmp15_;
			ObjectsItem* _tmp16_;
			const gchar* _tmp17_;
			const gchar* _tmp18_;
			ObjectsItem* _tmp19_;
			ObjectsItem* _tmp20_;
			const gchar* _tmp21_;
			const gchar* _tmp22_;
			GtkGrid* _tmp23_;
			LayoutsItemRow* _tmp24_;
			AdwBin* _tmp25_;
			gboolean _tmp26_ = FALSE;
			GtkDropControllerMotion* _tmp27_;
			gboolean _tmp28_;
			gboolean _tmp29_;
			GtkRevealer* _tmp36_;
			_tmp12_ = value;
			_tmp13_ = _g_object_ref0 (g_value_get_object (&_tmp12_));
			picked_widget = _tmp13_;
			_tmp14_ = picked_widget;
			_tmp15_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp14_);
			_tmp16_ = _tmp15_;
			_tmp17_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp16_);
			_tmp18_ = _tmp17_;
			_tmp19_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp20_ = _tmp19_;
			_tmp21_ = objects_item_get_parent_id (_tmp20_);
			_tmp22_ = _tmp21_;
			if (g_strcmp0 (_tmp18_, _tmp22_) == 0) {
				_g_object_unref0 (picked_widget);
				G_IS_VALUE (&value) ? (g_value_unset (&value), NULL) : NULL;
				_g_object_unref0 (drop);
				return;
			}
			_tmp23_ = self->priv->motion_top_grid;
			_tmp24_ = picked_widget;
			_tmp25_ = _tmp24_->itemrow_box;
			g_object_set ((GtkWidget*) _tmp23_, "height-request", gtk_widget_get_height ((GtkWidget*) _tmp25_), NULL);
			_tmp27_ = self->priv->drop_motion_ctrl;
			g_object_get (_tmp27_, "contains-pointer", &_tmp28_, NULL);
			_tmp29_ = _tmp28_;
			if (_tmp29_) {
				ObjectsItem* _tmp30_;
				ObjectsItem* _tmp31_;
				ObjectsProject* _tmp32_;
				ObjectsProject* _tmp33_;
				SortedByType _tmp34_;
				SortedByType _tmp35_;
				_tmp30_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
				_tmp31_ = _tmp30_;
				_tmp32_ = objects_item_get_project (_tmp31_);
				_tmp33_ = _tmp32_;
				_tmp34_ = objects_project_get_sorted_by (_tmp33_);
				_tmp35_ = _tmp34_;
				_tmp26_ = _tmp35_ == SORTED_BY_TYPE_MANUAL;
			} else {
				_tmp26_ = FALSE;
			}
			_tmp36_ = self->priv->motion_top_revealer;
			gtk_revealer_set_reveal_child (_tmp36_, _tmp26_);
			_g_object_unref0 (picked_widget);
		} else {
			GObject* _tmp37_;
			GObject* _tmp38_;
			gboolean _tmp39_;
			_tmp37_ = g_value_dup_object (&value);
			_tmp38_ = _tmp37_;
			_tmp39_ = WIDGETS_IS_MAGIC_BUTTON (_tmp38_);
			_g_object_unref0 (_tmp38_);
			if (_tmp39_) {
				GtkGrid* _tmp40_;
				gboolean _tmp41_ = FALSE;
				GtkDropControllerMotion* _tmp42_;
				gboolean _tmp43_;
				gboolean _tmp44_;
				GtkRevealer* _tmp51_;
				_tmp40_ = self->priv->motion_top_grid;
				g_object_set ((GtkWidget*) _tmp40_, "height-request", 30, NULL);
				_tmp42_ = self->priv->drop_motion_ctrl;
				g_object_get (_tmp42_, "contains-pointer", &_tmp43_, NULL);
				_tmp44_ = _tmp43_;
				if (_tmp44_) {
					ObjectsItem* _tmp45_;
					ObjectsItem* _tmp46_;
					ObjectsProject* _tmp47_;
					ObjectsProject* _tmp48_;
					SortedByType _tmp49_;
					SortedByType _tmp50_;
					_tmp45_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
					_tmp46_ = _tmp45_;
					_tmp47_ = objects_item_get_project (_tmp46_);
					_tmp48_ = _tmp47_;
					_tmp49_ = objects_project_get_sorted_by (_tmp48_);
					_tmp50_ = _tmp49_;
					_tmp41_ = _tmp50_ == SORTED_BY_TYPE_MANUAL;
				} else {
					_tmp41_ = FALSE;
				}
				_tmp51_ = self->priv->motion_top_revealer;
				gtk_revealer_set_reveal_child (_tmp51_, _tmp41_);
			}
		}
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		GError* _tmp52_;
		const gchar* _tmp53_;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp52_ = e;
		_tmp53_ = _tmp52_->message;
		g_debug ("ItemRow.vala:1705: %s", _tmp53_);
		_g_error_free0 (e);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		G_IS_VALUE (&value) ? (g_value_unset (&value), NULL) : NULL;
		_g_object_unref0 (drop);
		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;
	}
	G_IS_VALUE (&value) ? (g_value_unset (&value), NULL) : NULL;
	_g_object_unref0 (drop);
}

static void
___lambda135__gtk_drop_controller_motion_enter (GtkDropControllerMotion* _sender,
                                                gdouble x,
                                                gdouble y,
                                                gpointer self)
{
	__lambda135_ ((LayoutsItemRow*) self, x, y);
}

static void
__lambda136_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	_tmp0_ = self->priv->motion_top_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, FALSE);
}

static void
___lambda136__gtk_drop_controller_motion_leave (GtkDropControllerMotion* _sender,
                                                gpointer self)
{
	__lambda136_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_build_drop_motion (LayoutsItemRow* self)
{
	GtkDropControllerMotion* _tmp0_;
	GtkDropControllerMotion* _tmp1_;
	GtkEventController* _tmp2_;
	GeeHashMap* _tmp3_;
	GtkDropControllerMotion* _tmp4_;
	gulong _tmp5_;
	GtkDropControllerMotion* _tmp6_;
	GeeHashMap* _tmp7_;
	GtkDropControllerMotion* _tmp8_;
	gulong _tmp9_;
	GtkDropControllerMotion* _tmp10_;
	g_return_if_fail (self != NULL);
	_tmp0_ = (GtkDropControllerMotion*) gtk_drop_controller_motion_new ();
	_g_object_unref0 (self->priv->drop_motion_ctrl);
	self->priv->drop_motion_ctrl = _tmp0_;
	_tmp1_ = self->priv->drop_motion_ctrl;
	_tmp2_ = _g_object_ref0 ((GtkEventController*) _tmp1_);
	gtk_widget_add_controller ((GtkWidget*) self, _tmp2_);
	_tmp3_ = self->priv->dnd_handlerses;
	_tmp4_ = self->priv->drop_motion_ctrl;
	_tmp5_ = g_signal_connect_object (_tmp4_, "enter", (GCallback) ___lambda135__gtk_drop_controller_motion_enter, self, 0);
	_tmp6_ = self->priv->drop_motion_ctrl;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp3_, (gpointer) ((guintptr) _tmp5_), (GObject*) _tmp6_);
	_tmp7_ = self->priv->dnd_handlerses;
	_tmp8_ = self->priv->drop_motion_ctrl;
	_tmp9_ = g_signal_connect_object (_tmp8_, "leave", (GCallback) ___lambda136__gtk_drop_controller_motion_leave, self, 0);
	_tmp10_ = self->priv->drop_motion_ctrl;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp7_, (gpointer) ((guintptr) _tmp9_), (GObject*) _tmp10_);
}

static GdkContentProvider*
__lambda137_ (LayoutsItemRow* self,
              GtkDragSource* source,
              gdouble x,
              gdouble y)
{
	GValue _tmp0_ = {0};
	GdkContentProvider* _tmp1_;
	GdkContentProvider* _tmp2_;
	GdkContentProvider* result;
	g_return_val_if_fail (source != NULL, NULL);
	g_value_init (&_tmp0_, LAYOUTS_TYPE_ITEM_ROW);
	g_value_set_object (&_tmp0_, self);
	_tmp1_ = gdk_content_provider_new_for_value (&_tmp0_);
	_tmp2_ = _tmp1_;
	G_IS_VALUE (&_tmp0_) ? (g_value_unset (&_tmp0_), NULL) : NULL;
	result = _tmp2_;
	return result;
}

static GdkContentProvider*
___lambda137__gtk_drag_source_prepare (GtkDragSource* _sender,
                                       gdouble x,
                                       gdouble y,
                                       gpointer self)
{
	GdkContentProvider* result;
	result = __lambda137_ ((LayoutsItemRow*) self, _sender, x, y);
	return result;
}

static void
__lambda138_ (LayoutsItemRow* self,
              GtkDragSource* source,
              GdkDrag* drag)
{
	GtkWidgetPaintable* paintable = NULL;
	AdwBin* _tmp0_;
	GtkWidgetPaintable* _tmp1_;
	g_return_if_fail (source != NULL);
	g_return_if_fail (drag != NULL);
	_tmp0_ = self->itemrow_box;
	_tmp1_ = (GtkWidgetPaintable*) gtk_widget_paintable_new ((GtkWidget*) _tmp0_);
	paintable = _tmp1_;
	gtk_drag_source_set_icon (source, (GdkPaintable*) paintable, 0, 0);
	layouts_item_row_drag_begin (self);
	_g_object_unref0 (paintable);
}

static void
___lambda138__gtk_drag_source_drag_begin (GtkDragSource* _sender,
                                          GdkDrag* drag,
                                          gpointer self)
{
	__lambda138_ ((LayoutsItemRow*) self, _sender, drag);
}

static void
__lambda139_ (LayoutsItemRow* self,
              GtkDragSource* source,
              GdkDrag* drag,
              gboolean delete_data)
{
	g_return_if_fail (source != NULL);
	g_return_if_fail (drag != NULL);
	layouts_item_row_drag_end (self);
}

static void
___lambda139__gtk_drag_source_drag_end (GtkDragSource* _sender,
                                        GdkDrag* drag,
                                        gboolean delete_data,
                                        gpointer self)
{
	__lambda139_ ((LayoutsItemRow*) self, _sender, drag, delete_data);
}

static gboolean
__lambda140_ (LayoutsItemRow* self,
              GtkDragSource* source,
              GdkDrag* drag,
              GdkDragCancelReason reason)
{
	gboolean result;
	g_return_val_if_fail (source != NULL, FALSE);
	g_return_val_if_fail (drag != NULL, FALSE);
	layouts_item_row_drag_end (self);
	result = FALSE;
	return result;
}

static gboolean
___lambda140__gtk_drag_source_drag_cancel (GtkDragSource* _sender,
                                           GdkDrag* drag,
                                           GdkDragCancelReason reason,
                                           gpointer self)
{
	gboolean result;
	result = __lambda140_ ((LayoutsItemRow*) self, _sender, drag, reason);
	return result;
}

static void
layouts_item_row_build_drag_source (LayoutsItemRow* self)
{
	GtkDragSource* _tmp0_;
	GtkDragSource* _tmp1_;
	AdwBin* _tmp2_;
	GtkDragSource* _tmp3_;
	GtkEventController* _tmp4_;
	GeeHashMap* _tmp5_;
	GtkDragSource* _tmp6_;
	gulong _tmp7_;
	GtkDragSource* _tmp8_;
	GeeHashMap* _tmp9_;
	GtkDragSource* _tmp10_;
	gulong _tmp11_;
	GtkDragSource* _tmp12_;
	GeeHashMap* _tmp13_;
	GtkDragSource* _tmp14_;
	gulong _tmp15_;
	GtkDragSource* _tmp16_;
	GeeHashMap* _tmp17_;
	GtkDragSource* _tmp18_;
	gulong _tmp19_;
	GtkDragSource* _tmp20_;
	g_return_if_fail (self != NULL);
	_tmp0_ = gtk_drag_source_new ();
	_g_object_unref0 (self->priv->drag_source);
	self->priv->drag_source = _tmp0_;
	_tmp1_ = self->priv->drag_source;
	gtk_drag_source_set_actions (_tmp1_, GDK_ACTION_MOVE);
	_tmp2_ = self->itemrow_box;
	_tmp3_ = self->priv->drag_source;
	_tmp4_ = _g_object_ref0 ((GtkEventController*) _tmp3_);
	gtk_widget_add_controller ((GtkWidget*) _tmp2_, _tmp4_);
	_tmp5_ = self->priv->dnd_handlerses;
	_tmp6_ = self->priv->drag_source;
	_tmp7_ = g_signal_connect_object (_tmp6_, "prepare", (GCallback) ___lambda137__gtk_drag_source_prepare, self, 0);
	_tmp8_ = self->priv->drag_source;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp5_, (gpointer) ((guintptr) _tmp7_), (GObject*) _tmp8_);
	_tmp9_ = self->priv->dnd_handlerses;
	_tmp10_ = self->priv->drag_source;
	_tmp11_ = g_signal_connect_object (_tmp10_, "drag-begin", (GCallback) ___lambda138__gtk_drag_source_drag_begin, self, 0);
	_tmp12_ = self->priv->drag_source;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp9_, (gpointer) ((guintptr) _tmp11_), (GObject*) _tmp12_);
	_tmp13_ = self->priv->dnd_handlerses;
	_tmp14_ = self->priv->drag_source;
	_tmp15_ = g_signal_connect_object (_tmp14_, "drag-end", (GCallback) ___lambda139__gtk_drag_source_drag_end, self, 0);
	_tmp16_ = self->priv->drag_source;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp13_, (gpointer) ((guintptr) _tmp15_), (GObject*) _tmp16_);
	_tmp17_ = self->priv->dnd_handlerses;
	_tmp18_ = self->priv->drag_source;
	_tmp19_ = g_signal_connect_object (_tmp18_, "drag-cancel", (GCallback) ___lambda140__gtk_drag_source_drag_cancel, self, 0);
	_tmp20_ = self->priv->drag_source;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp17_, (gpointer) ((guintptr) _tmp19_), (GObject*) _tmp20_);
}

static Block31Data*
block31_data_ref (Block31Data* _data31_)
{
	g_atomic_int_inc (&_data31_->_ref_count_);
	return _data31_;
}

static void
block31_data_unref (void * _userdata_)
{
	Block31Data* _data31_;
	_data31_ = (Block31Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data31_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data31_->self;
		_g_free0 (_data31_->old_section_id);
		_g_free0 (_data31_->old_project_id);
		_g_free0 (_data31_->old_parent_id);
		_g_object_unref0 (_data31_->target_item);
		_g_object_unref0 (_data31_->picked_item);
		_g_object_unref0 (_data31_->picked_widget);
		_g_object_unref0 (self);
		g_slice_free (Block31Data, _data31_);
	}
}

static void
____lambda142_ (Block31Data* _data31_,
                GObject* obj,
                GAsyncResult* res)
{
	LayoutsItemRow* self;
	ServicesTodoist* _tmp0_;
	ServicesTodoist* _tmp1_;
	HttpResponse* _tmp2_;
	HttpResponse* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	self = _data31_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = services_todoist_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = services_todoist_move_item_finish (_tmp1_, res);
	_tmp3_ = _tmp2_;
	_tmp4_ = http_response_get_status (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = _tmp5_;
	_http_response_unref0 (_tmp3_);
	_g_object_unref0 (_tmp1_);
	if (_tmp6_) {
		ObjectsItem* _tmp7_;
		ServicesStore* _tmp8_;
		LayoutsItemRow* _tmp9_;
		ObjectsItem* _tmp10_;
		ObjectsItem* _tmp11_;
		ServicesEventBus* _tmp12_;
		ServicesEventBus* _tmp13_;
		ObjectsItem* _tmp14_;
		const gchar* _tmp15_;
		const gchar* _tmp16_;
		const gchar* _tmp17_;
		_tmp7_ = _data31_->target_item;
		objects_item_set_collapsed (_tmp7_, TRUE);
		_tmp8_ = services_store_instance ();
		_tmp9_ = _data31_->picked_widget;
		_tmp10_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp9_);
		_tmp11_ = _tmp10_;
		services_store_update_item (_tmp8_, _tmp11_, "");
		_tmp12_ = services_event_bus_get_default ();
		_tmp13_ = _tmp12_;
		_tmp14_ = _data31_->picked_item;
		_tmp15_ = _data31_->old_project_id;
		_tmp16_ = _data31_->old_section_id;
		_tmp17_ = _data31_->old_parent_id;
		g_signal_emit_by_name (_tmp13_, "item-moved", _tmp14_, _tmp15_, _tmp16_, _tmp17_);
		_g_object_unref0 (_tmp13_);
	}
}

static void
_____lambda142__gasync_ready_callback (GObject* source_object,
                                       GAsyncResult* res,
                                       gpointer self)
{
	____lambda142_ (self, source_object, res);
	block31_data_unref (self);
}

static Block32Data*
block32_data_ref (Block32Data* _data32_)
{
	g_atomic_int_inc (&_data32_->_ref_count_);
	return _data32_;
}

static void
block32_data_unref (void * _userdata_)
{
	Block32Data* _data32_;
	_data32_ = (Block32Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data32_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data32_->_data31_->self;
		_g_object_unref0 (_data32_->caldav_client);
		block31_data_unref (_data32_->_data31_);
		_data32_->_data31_ = NULL;
		g_slice_free (Block32Data, _data32_);
	}
}

static void
_____lambda143_ (Block32Data* _data32_,
                 GObject* obj,
                 GAsyncResult* res)
{
	Block31Data* _data31_;
	LayoutsItemRow* self;
	ServicesCalDAVCalDAVClient* _tmp0_;
	HttpResponse* _tmp1_;
	HttpResponse* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	_data31_ = _data32_->_data31_;
	self = _data31_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = _data32_->caldav_client;
	_tmp1_ = services_cal_dav_cal_dav_client_add_item_finish (_tmp0_, res);
	_tmp2_ = _tmp1_;
	_tmp3_ = http_response_get_status (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = _tmp4_;
	_http_response_unref0 (_tmp2_);
	if (_tmp5_) {
		ObjectsItem* _tmp6_;
		ServicesStore* _tmp7_;
		LayoutsItemRow* _tmp8_;
		ObjectsItem* _tmp9_;
		ObjectsItem* _tmp10_;
		ServicesEventBus* _tmp11_;
		ServicesEventBus* _tmp12_;
		ObjectsItem* _tmp13_;
		const gchar* _tmp14_;
		const gchar* _tmp15_;
		const gchar* _tmp16_;
		_tmp6_ = _data31_->target_item;
		objects_item_set_collapsed (_tmp6_, TRUE);
		_tmp7_ = services_store_instance ();
		_tmp8_ = _data31_->picked_widget;
		_tmp9_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp8_);
		_tmp10_ = _tmp9_;
		services_store_update_item (_tmp7_, _tmp10_, "");
		_tmp11_ = services_event_bus_get_default ();
		_tmp12_ = _tmp11_;
		_tmp13_ = _data31_->picked_item;
		_tmp14_ = _data31_->old_project_id;
		_tmp15_ = _data31_->old_section_id;
		_tmp16_ = _data31_->old_parent_id;
		g_signal_emit_by_name (_tmp12_, "item-moved", _tmp13_, _tmp14_, _tmp15_, _tmp16_);
		_g_object_unref0 (_tmp12_);
	}
}

static void
______lambda143__gasync_ready_callback (GObject* source_object,
                                        GAsyncResult* res,
                                        gpointer self)
{
	_____lambda143_ (self, source_object, res);
	block32_data_unref (self);
}

static gboolean
__lambda141_ (LayoutsItemRow* self,
              GValue* value,
              gdouble x,
              gdouble y)
{
	Block31Data* _data31_;
	GValue _tmp0_;
	LayoutsItemRow* _tmp1_;
	LayoutsItemRow* target_widget = NULL;
	LayoutsItemRow* _tmp2_;
	LayoutsItemRow* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	ObjectsItem* _tmp6_;
	LayoutsItemRow* _tmp7_;
	ObjectsItem* _tmp8_;
	ObjectsItem* _tmp9_;
	ObjectsItem* _tmp10_;
	ServicesEventBus* _tmp11_;
	ServicesEventBus* _tmp12_;
	ObjectsItem* _tmp13_;
	ObjectsItem* _tmp14_;
	const gchar* _tmp15_;
	const gchar* _tmp16_;
	ServicesEventBus* _tmp17_;
	ServicesEventBus* _tmp18_;
	ObjectsItem* _tmp19_;
	ObjectsItem* _tmp20_;
	const gchar* _tmp21_;
	const gchar* _tmp22_;
	gboolean _tmp23_ = FALSE;
	LayoutsItemRow* _tmp24_;
	LayoutsItemRow* _tmp25_;
	ObjectsItem* _tmp27_;
	const gchar* _tmp28_;
	const gchar* _tmp29_;
	gchar* _tmp30_;
	ObjectsItem* _tmp31_;
	const gchar* _tmp32_;
	const gchar* _tmp33_;
	gchar* _tmp34_;
	ObjectsItem* _tmp35_;
	const gchar* _tmp36_;
	const gchar* _tmp37_;
	gchar* _tmp38_;
	ObjectsItem* _tmp39_;
	ObjectsItem* _tmp40_;
	ObjectsItem* _tmp41_;
	const gchar* _tmp42_;
	const gchar* _tmp43_;
	ObjectsItem* _tmp44_;
	ObjectsProject* _tmp45_;
	ObjectsProject* _tmp46_;
	SourceType _tmp47_;
	SourceType _tmp48_;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_data31_ = g_slice_new0 (Block31Data);
	_data31_->_ref_count_ = 1;
	_data31_->self = g_object_ref (self);
	_tmp0_ = *value;
	_tmp1_ = _g_object_ref0 (g_value_get_object (&_tmp0_));
	_data31_->picked_widget = _tmp1_;
	_tmp2_ = _g_object_ref0 (self);
	target_widget = _tmp2_;
	_tmp3_ = _data31_->picked_widget;
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = _g_object_ref0 (_tmp5_);
	_data31_->picked_item = _tmp6_;
	_tmp7_ = target_widget;
	_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp7_);
	_tmp9_ = _tmp8_;
	_tmp10_ = _g_object_ref0 (_tmp9_);
	_data31_->target_item = _tmp10_;
	_tmp11_ = services_event_bus_get_default ();
	_tmp12_ = _tmp11_;
	_tmp13_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp14_ = _tmp13_;
	_tmp15_ = objects_item_get_project_id (_tmp14_);
	_tmp16_ = _tmp15_;
	g_signal_emit_by_name (_tmp12_, "drag-items-end", _tmp16_);
	_g_object_unref0 (_tmp12_);
	_tmp17_ = services_event_bus_get_default ();
	_tmp18_ = _tmp17_;
	_tmp19_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp20_ = _tmp19_;
	_tmp21_ = objects_item_get_project_id (_tmp20_);
	_tmp22_ = _tmp21_;
	g_signal_emit_by_name (_tmp18_, "drag-n-drop-active", _tmp22_, FALSE);
	_g_object_unref0 (_tmp18_);
	_tmp24_ = _data31_->picked_widget;
	_tmp25_ = target_widget;
	if (_tmp24_ == _tmp25_) {
		_tmp23_ = TRUE;
	} else {
		LayoutsItemRow* _tmp26_;
		_tmp26_ = target_widget;
		_tmp23_ = _tmp26_ == NULL;
	}
	if (_tmp23_) {
		result = FALSE;
		_g_object_unref0 (target_widget);
		block31_data_unref (_data31_);
		_data31_ = NULL;
		return result;
	}
	_tmp27_ = _data31_->picked_item;
	_tmp28_ = objects_item_get_parent_id (_tmp27_);
	_tmp29_ = _tmp28_;
	_tmp30_ = g_strdup (_tmp29_);
	_data31_->old_parent_id = _tmp30_;
	_tmp31_ = _data31_->picked_item;
	_tmp32_ = objects_item_get_project_id (_tmp31_);
	_tmp33_ = _tmp32_;
	_tmp34_ = g_strdup (_tmp33_);
	_data31_->old_project_id = _tmp34_;
	_tmp35_ = _data31_->picked_item;
	_tmp36_ = objects_item_get_section_id (_tmp35_);
	_tmp37_ = _tmp36_;
	_tmp38_ = g_strdup (_tmp37_);
	_data31_->old_section_id = _tmp38_;
	_tmp39_ = _data31_->picked_item;
	objects_item_set_section_id (_tmp39_, "");
	_tmp40_ = _data31_->picked_item;
	_tmp41_ = _data31_->target_item;
	_tmp42_ = objects_base_object_get_id ((ObjectsBaseObject*) _tmp41_);
	_tmp43_ = _tmp42_;
	objects_item_set_parent_id (_tmp40_, _tmp43_);
	_tmp44_ = _data31_->picked_item;
	_tmp45_ = objects_item_get_project (_tmp44_);
	_tmp46_ = _tmp45_;
	_tmp47_ = objects_project_get_source_type (_tmp46_);
	_tmp48_ = _tmp47_;
	if (_tmp48_ == SOURCE_TYPE_LOCAL) {
		ObjectsItem* _tmp49_;
		ServicesStore* _tmp50_;
		ObjectsItem* _tmp51_;
		ServicesEventBus* _tmp52_;
		ServicesEventBus* _tmp53_;
		ObjectsItem* _tmp54_;
		const gchar* _tmp55_;
		const gchar* _tmp56_;
		const gchar* _tmp57_;
		_tmp49_ = _data31_->target_item;
		objects_item_set_collapsed (_tmp49_, TRUE);
		_tmp50_ = services_store_instance ();
		_tmp51_ = _data31_->picked_item;
		services_store_update_item (_tmp50_, _tmp51_, "");
		_tmp52_ = services_event_bus_get_default ();
		_tmp53_ = _tmp52_;
		_tmp54_ = _data31_->picked_item;
		_tmp55_ = _data31_->old_project_id;
		_tmp56_ = _data31_->old_section_id;
		_tmp57_ = _data31_->old_parent_id;
		g_signal_emit_by_name (_tmp53_, "item-moved", _tmp54_, _tmp55_, _tmp56_, _tmp57_);
		_g_object_unref0 (_tmp53_);
	} else {
		ObjectsItem* _tmp58_;
		ObjectsProject* _tmp59_;
		ObjectsProject* _tmp60_;
		SourceType _tmp61_;
		SourceType _tmp62_;
		_tmp58_ = _data31_->picked_item;
		_tmp59_ = objects_item_get_project (_tmp58_);
		_tmp60_ = _tmp59_;
		_tmp61_ = objects_project_get_source_type (_tmp60_);
		_tmp62_ = _tmp61_;
		if (_tmp62_ == SOURCE_TYPE_TODOIST) {
			ServicesTodoist* _tmp63_;
			ServicesTodoist* _tmp64_;
			ObjectsItem* _tmp65_;
			ObjectsItem* _tmp66_;
			const gchar* _tmp67_;
			const gchar* _tmp68_;
			_tmp63_ = services_todoist_get_default ();
			_tmp64_ = _tmp63_;
			_tmp65_ = _data31_->picked_item;
			_tmp66_ = _data31_->picked_item;
			_tmp67_ = objects_item_get_parent_id (_tmp66_);
			_tmp68_ = _tmp67_;
			services_todoist_move_item (_tmp64_, _tmp65_, "parent_id", _tmp68_, _____lambda142__gasync_ready_callback, block31_data_ref (_data31_));
			_g_object_unref0 (_tmp64_);
		} else {
			ObjectsItem* _tmp69_;
			ObjectsProject* _tmp70_;
			ObjectsProject* _tmp71_;
			SourceType _tmp72_;
			SourceType _tmp73_;
			_tmp69_ = _data31_->picked_item;
			_tmp70_ = objects_item_get_project (_tmp69_);
			_tmp71_ = _tmp70_;
			_tmp72_ = objects_project_get_source_type (_tmp71_);
			_tmp73_ = _tmp72_;
			if (_tmp73_ == SOURCE_TYPE_CALDAV) {
				Block32Data* _data32_;
				ServicesCalDAVCore* _tmp74_;
				ServicesCalDAVCore* _tmp75_;
				ObjectsItem* _tmp76_;
				ObjectsProject* _tmp77_;
				ObjectsProject* _tmp78_;
				ObjectsSource* _tmp79_;
				ObjectsSource* _tmp80_;
				ServicesCalDAVCalDAVClient* _tmp81_;
				ServicesCalDAVCalDAVClient* _tmp82_;
				ServicesCalDAVCalDAVClient* _tmp83_;
				ObjectsItem* _tmp84_;
				_data32_ = g_slice_new0 (Block32Data);
				_data32_->_ref_count_ = 1;
				_data32_->_data31_ = block31_data_ref (_data31_);
				_tmp74_ = services_cal_dav_core_get_default ();
				_tmp75_ = _tmp74_;
				_tmp76_ = _data31_->picked_item;
				_tmp77_ = objects_item_get_project (_tmp76_);
				_tmp78_ = _tmp77_;
				_tmp79_ = objects_project_get_source (_tmp78_);
				_tmp80_ = _tmp79_;
				_tmp81_ = services_cal_dav_core_get_client (_tmp75_, _tmp80_);
				_tmp82_ = _tmp81_;
				_g_object_unref0 (_tmp75_);
				_data32_->caldav_client = _tmp82_;
				_tmp83_ = _data32_->caldav_client;
				_tmp84_ = _data31_->picked_item;
				services_cal_dav_cal_dav_client_add_item (_tmp83_, _tmp84_, TRUE, ______lambda143__gasync_ready_callback, block32_data_ref (_data32_));
				block32_data_unref (_data32_);
				_data32_ = NULL;
			}
		}
	}
	result = TRUE;
	_g_object_unref0 (target_widget);
	block31_data_unref (_data31_);
	_data31_ = NULL;
	return result;
}

static gboolean
___lambda141__gtk_drop_target_drop (GtkDropTarget* _sender,
                                    GValue* value,
                                    gdouble x,
                                    gdouble y,
                                    gpointer self)
{
	gboolean result;
	result = __lambda141_ ((LayoutsItemRow*) self, value, x, y);
	return result;
}

static void
layouts_item_row_build_drop_target (LayoutsItemRow* self)
{
	GtkDropTarget* _tmp0_;
	AdwBin* _tmp1_;
	GtkDropTarget* _tmp2_;
	GtkEventController* _tmp3_;
	GeeHashMap* _tmp4_;
	GtkDropTarget* _tmp5_;
	gulong _tmp6_;
	GtkDropTarget* _tmp7_;
	g_return_if_fail (self != NULL);
	_tmp0_ = gtk_drop_target_new (LAYOUTS_TYPE_ITEM_ROW, GDK_ACTION_MOVE);
	_g_object_unref0 (self->priv->drop_target);
	self->priv->drop_target = _tmp0_;
	_tmp1_ = self->itemrow_box;
	_tmp2_ = self->priv->drop_target;
	_tmp3_ = _g_object_ref0 ((GtkEventController*) _tmp2_);
	gtk_widget_add_controller ((GtkWidget*) _tmp1_, _tmp3_);
	_tmp4_ = self->priv->dnd_handlerses;
	_tmp5_ = self->priv->drop_target;
	_tmp6_ = g_signal_connect_object (_tmp5_, "drop", (GCallback) ___lambda141__gtk_drop_target_drop, self, 0);
	_tmp7_ = self->priv->drop_target;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp4_, (gpointer) ((guintptr) _tmp6_), (GObject*) _tmp7_);
}

static gboolean
__lambda144_ (LayoutsItemRow* self,
              GValue* value,
              gdouble x,
              gdouble y)
{
	DialogsQuickAdd* dialog = NULL;
	DialogsQuickAdd* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	Planify* _tmp3_;
	MainWindow* _tmp4_;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_tmp0_ = dialogs_quick_add_new ();
	g_object_ref_sink (_tmp0_);
	dialog = _tmp0_;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	dialogs_quick_add_for_base_object (dialog, (ObjectsBaseObject*) _tmp2_);
	_tmp3_ = planify__instance;
	_tmp4_ = _tmp3_->main_window;
	adw_dialog_present ((AdwDialog*) dialog, (GtkWidget*) _tmp4_);
	result = TRUE;
	_g_object_unref0 (dialog);
	return result;
}

static gboolean
___lambda144__gtk_drop_target_drop (GtkDropTarget* _sender,
                                    GValue* value,
                                    gdouble x,
                                    gdouble y,
                                    gpointer self)
{
	gboolean result;
	result = __lambda144_ ((LayoutsItemRow*) self, value, x, y);
	return result;
}

static void
__lambda146_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	_tmp0_ = self->priv->motion_top_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, FALSE);
}

static void
___lambda146__adw_dialog_closed (AdwDialog* _sender,
                                 gpointer self)
{
	__lambda146_ ((LayoutsItemRow*) self);
}

static gboolean
__lambda145_ (LayoutsItemRow* self,
              GValue* value,
              gdouble x,
              gdouble y)
{
	DialogsQuickAdd* dialog = NULL;
	DialogsQuickAdd* _tmp0_ = NULL;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	GeeHashMap* _tmp24_;
	DialogsQuickAdd* _tmp25_;
	gulong _tmp26_;
	DialogsQuickAdd* _tmp27_;
	DialogsQuickAdd* _tmp28_;
	Planify* _tmp29_;
	MainWindow* _tmp30_;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_tmp0_ = dialogs_quick_add_new ();
	dialogs_quick_add_set_position (_tmp0_, gtk_list_box_row_get_index ((GtkListBoxRow*) self));
	g_object_ref_sink (_tmp0_);
	dialog = _tmp0_;
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_has_parent (_tmp2_);
	_tmp4_ = _tmp3_;
	if (_tmp4_) {
		DialogsQuickAdd* _tmp5_;
		ObjectsItem* _tmp6_;
		ObjectsItem* _tmp7_;
		ObjectsItem* _tmp8_;
		ObjectsItem* _tmp9_;
		_tmp5_ = dialog;
		_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp7_ = _tmp6_;
		_tmp8_ = objects_item_get_parent (_tmp7_);
		_tmp9_ = _tmp8_;
		dialogs_quick_add_for_base_object (_tmp5_, (ObjectsBaseObject*) _tmp9_);
	} else {
		ObjectsItem* _tmp10_;
		ObjectsItem* _tmp11_;
		const gchar* _tmp12_;
		const gchar* _tmp13_;
		_tmp10_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp11_ = _tmp10_;
		_tmp12_ = objects_item_get_section_id (_tmp11_);
		_tmp13_ = _tmp12_;
		if (g_strcmp0 (_tmp13_, "") != 0) {
			DialogsQuickAdd* _tmp14_;
			ObjectsItem* _tmp15_;
			ObjectsItem* _tmp16_;
			ObjectsSection* _tmp17_;
			ObjectsSection* _tmp18_;
			_tmp14_ = dialog;
			_tmp15_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp16_ = _tmp15_;
			_tmp17_ = objects_item_get_section (_tmp16_);
			_tmp18_ = _tmp17_;
			dialogs_quick_add_for_base_object (_tmp14_, (ObjectsBaseObject*) _tmp18_);
		} else {
			DialogsQuickAdd* _tmp19_;
			ObjectsItem* _tmp20_;
			ObjectsItem* _tmp21_;
			ObjectsProject* _tmp22_;
			ObjectsProject* _tmp23_;
			_tmp19_ = dialog;
			_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
			_tmp21_ = _tmp20_;
			_tmp22_ = objects_item_get_project (_tmp21_);
			_tmp23_ = _tmp22_;
			dialogs_quick_add_for_base_object (_tmp19_, (ObjectsBaseObject*) _tmp23_);
		}
	}
	_tmp24_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp25_ = dialog;
	_tmp26_ = g_signal_connect_object ((AdwDialog*) _tmp25_, "closed", (GCallback) ___lambda146__adw_dialog_closed, self, 0);
	_tmp27_ = dialog;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp24_, (gpointer) ((guintptr) _tmp26_), (GObject*) _tmp27_);
	_tmp28_ = dialog;
	_tmp29_ = planify__instance;
	_tmp30_ = _tmp29_->main_window;
	adw_dialog_present ((AdwDialog*) _tmp28_, (GtkWidget*) _tmp30_);
	result = TRUE;
	_g_object_unref0 (dialog);
	return result;
}

static gboolean
___lambda145__gtk_drop_target_drop (GtkDropTarget* _sender,
                                    GValue* value,
                                    gdouble x,
                                    gdouble y,
                                    gpointer self)
{
	gboolean result;
	result = __lambda145_ ((LayoutsItemRow*) self, value, x, y);
	return result;
}

static void
layouts_item_row_build_drop_magic_button_target (LayoutsItemRow* self)
{
	GtkDropTarget* _tmp0_;
	AdwBin* _tmp1_;
	GtkDropTarget* _tmp2_;
	GtkEventController* _tmp3_;
	GeeHashMap* _tmp4_;
	GtkDropTarget* _tmp5_;
	gulong _tmp6_;
	GtkDropTarget* _tmp7_;
	GtkDropTarget* _tmp8_;
	GtkGrid* _tmp9_;
	GtkDropTarget* _tmp10_;
	GtkEventController* _tmp11_;
	GeeHashMap* _tmp12_;
	GtkDropTarget* _tmp13_;
	gulong _tmp14_;
	GtkDropTarget* _tmp15_;
	g_return_if_fail (self != NULL);
	_tmp0_ = gtk_drop_target_new (WIDGETS_TYPE_MAGIC_BUTTON, GDK_ACTION_MOVE);
	_g_object_unref0 (self->priv->drop_magic_button_target);
	self->priv->drop_magic_button_target = _tmp0_;
	_tmp1_ = self->itemrow_box;
	_tmp2_ = self->priv->drop_magic_button_target;
	_tmp3_ = _g_object_ref0 ((GtkEventController*) _tmp2_);
	gtk_widget_add_controller ((GtkWidget*) _tmp1_, _tmp3_);
	_tmp4_ = self->priv->dnd_handlerses;
	_tmp5_ = self->priv->drop_magic_button_target;
	_tmp6_ = g_signal_connect_object (_tmp5_, "drop", (GCallback) ___lambda144__gtk_drop_target_drop, self, 0);
	_tmp7_ = self->priv->drop_magic_button_target;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp4_, (gpointer) ((guintptr) _tmp6_), (GObject*) _tmp7_);
	_tmp8_ = gtk_drop_target_new (WIDGETS_TYPE_MAGIC_BUTTON, GDK_ACTION_MOVE);
	_g_object_unref0 (self->priv->drop_order_magic_button_target);
	self->priv->drop_order_magic_button_target = _tmp8_;
	_tmp9_ = self->priv->motion_top_grid;
	_tmp10_ = self->priv->drop_order_magic_button_target;
	_tmp11_ = _g_object_ref0 ((GtkEventController*) _tmp10_);
	gtk_widget_add_controller ((GtkWidget*) _tmp9_, _tmp11_);
	_tmp12_ = self->priv->dnd_handlerses;
	_tmp13_ = self->priv->drop_order_magic_button_target;
	_tmp14_ = g_signal_connect_object (_tmp13_, "drop", (GCallback) ___lambda145__gtk_drop_target_drop, self, 0);
	_tmp15_ = self->priv->drop_order_magic_button_target;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp12_, (gpointer) ((guintptr) _tmp14_), (GObject*) _tmp15_);
}

static Block33Data*
block33_data_ref (Block33Data* _data33_)
{
	g_atomic_int_inc (&_data33_->_ref_count_);
	return _data33_;
}

static void
block33_data_unref (void * _userdata_)
{
	Block33Data* _data33_;
	_data33_ = (Block33Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data33_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data33_->self;
		_g_free0 (_data33_->old_parent_id);
		_g_free0 (_data33_->old_section_id);
		_g_free0 (_data33_->old_project_id);
		_g_object_unref0 (_data33_->picked_widget);
		_g_object_unref0 (self);
		g_slice_free (Block33Data, _data33_);
	}
}

static void
_____lambda148_ (Block33Data* _data33_,
                 GObject* obj,
                 GAsyncResult* res)
{
	LayoutsItemRow* self;
	ServicesTodoist* _tmp0_;
	ServicesTodoist* _tmp1_;
	HttpResponse* _tmp2_;
	HttpResponse* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	self = _data33_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = services_todoist_get_default ();
	_tmp1_ = _tmp0_;
	_tmp2_ = services_todoist_move_item_finish (_tmp1_, res);
	_tmp3_ = _tmp2_;
	_tmp4_ = http_response_get_status (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = _tmp5_;
	_http_response_unref0 (_tmp3_);
	_g_object_unref0 (_tmp1_);
	if (_tmp6_) {
		ServicesStore* _tmp7_;
		LayoutsItemRow* _tmp8_;
		ObjectsItem* _tmp9_;
		ObjectsItem* _tmp10_;
		const gchar* _tmp11_;
		const gchar* _tmp12_;
		const gchar* _tmp13_;
		_tmp7_ = services_store_instance ();
		_tmp8_ = _data33_->picked_widget;
		_tmp9_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = _data33_->old_project_id;
		_tmp12_ = _data33_->old_section_id;
		_tmp13_ = _data33_->old_parent_id;
		services_store_move_item (_tmp7_, _tmp10_, _tmp11_, _tmp12_, _tmp13_);
	}
}

static void
______lambda148__gasync_ready_callback (GObject* source_object,
                                        GAsyncResult* res,
                                        gpointer self)
{
	_____lambda148_ (self, source_object, res);
	block33_data_unref (self);
}

static Block34Data*
block34_data_ref (Block34Data* _data34_)
{
	g_atomic_int_inc (&_data34_->_ref_count_);
	return _data34_;
}

static void
block34_data_unref (void * _userdata_)
{
	Block34Data* _data34_;
	_data34_ = (Block34Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data34_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data34_->_data33_->self;
		_g_object_unref0 (_data34_->caldav_client);
		block33_data_unref (_data34_->_data33_);
		_data34_->_data33_ = NULL;
		g_slice_free (Block34Data, _data34_);
	}
}

static void
______lambda149_ (Block34Data* _data34_,
                  GObject* obj,
                  GAsyncResult* res)
{
	Block33Data* _data33_;
	LayoutsItemRow* self;
	ServicesCalDAVCalDAVClient* _tmp0_;
	HttpResponse* _tmp1_;
	HttpResponse* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	_data33_ = _data34_->_data33_;
	self = _data33_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = _data34_->caldav_client;
	_tmp1_ = services_cal_dav_cal_dav_client_add_item_finish (_tmp0_, res);
	_tmp2_ = _tmp1_;
	_tmp3_ = http_response_get_status (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = _tmp4_;
	_http_response_unref0 (_tmp2_);
	if (_tmp5_) {
		ServicesStore* _tmp6_;
		LayoutsItemRow* _tmp7_;
		ObjectsItem* _tmp8_;
		ObjectsItem* _tmp9_;
		const gchar* _tmp10_;
		const gchar* _tmp11_;
		const gchar* _tmp12_;
		_tmp6_ = services_store_instance ();
		_tmp7_ = _data33_->picked_widget;
		_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp7_);
		_tmp9_ = _tmp8_;
		_tmp10_ = _data33_->old_project_id;
		_tmp11_ = _data33_->old_section_id;
		_tmp12_ = _data33_->old_parent_id;
		services_store_move_item (_tmp6_, _tmp9_, _tmp10_, _tmp11_, _tmp12_);
	}
}

static void
_______lambda149__gasync_ready_callback (GObject* source_object,
                                         GAsyncResult* res,
                                         gpointer self)
{
	______lambda149_ (self, source_object, res);
	block34_data_unref (self);
}

static gboolean
__lambda147_ (LayoutsItemRow* self,
              GValue* value,
              gdouble x,
              gdouble y)
{
	Block33Data* _data33_;
	GValue _tmp0_;
	LayoutsItemRow* _tmp1_;
	LayoutsItemRow* target_widget = NULL;
	LayoutsItemRow* _tmp2_;
	LayoutsItemRow* _tmp3_;
	LayoutsItemRow* _tmp4_;
	ServicesEventBus* _tmp5_;
	ServicesEventBus* _tmp6_;
	ObjectsItem* _tmp7_;
	ObjectsItem* _tmp8_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	gboolean _tmp11_ = FALSE;
	LayoutsItemRow* _tmp12_;
	LayoutsItemRow* _tmp13_;
	ObjectsItem* _tmp15_;
	ObjectsItem* _tmp16_;
	ObjectsProject* _tmp17_;
	ObjectsProject* _tmp18_;
	SortedByType _tmp19_;
	SortedByType _tmp20_;
	LayoutsItemRow* _tmp35_;
	ObjectsItem* _tmp36_;
	ObjectsItem* _tmp37_;
	const gchar* _tmp38_;
	const gchar* _tmp39_;
	gchar* _tmp40_;
	LayoutsItemRow* _tmp41_;
	ObjectsItem* _tmp42_;
	ObjectsItem* _tmp43_;
	const gchar* _tmp44_;
	const gchar* _tmp45_;
	gchar* _tmp46_;
	LayoutsItemRow* _tmp47_;
	ObjectsItem* _tmp48_;
	ObjectsItem* _tmp49_;
	const gchar* _tmp50_;
	const gchar* _tmp51_;
	gchar* _tmp52_;
	gboolean _tmp53_ = FALSE;
	gboolean _tmp54_ = FALSE;
	LayoutsItemRow* _tmp55_;
	ObjectsItem* _tmp56_;
	ObjectsItem* _tmp57_;
	const gchar* _tmp58_;
	const gchar* _tmp59_;
	LayoutsItemRow* _tmp60_;
	ObjectsItem* _tmp61_;
	ObjectsItem* _tmp62_;
	const gchar* _tmp63_;
	const gchar* _tmp64_;
	GtkListBox* source_list = NULL;
	LayoutsItemRow* _tmp220_;
	GtkWidget* _tmp221_;
	GtkWidget* _tmp222_;
	GtkListBox* _tmp223_;
	GtkListBox* _tmp224_;
	LayoutsItemRow* _tmp225_;
	GtkListBox* target_list = NULL;
	LayoutsItemRow* _tmp226_;
	GtkWidget* _tmp227_;
	GtkWidget* _tmp228_;
	GtkListBox* _tmp229_;
	gint new_index = 0;
	LayoutsItemRow* _tmp230_;
	GtkListBox* _tmp231_;
	LayoutsItemRow* _tmp232_;
	GtkListBox* _tmp233_;
	LayoutsItemRow* _tmp234_;
	ServicesEventBus* _tmp235_;
	ServicesEventBus* _tmp236_;
	LayoutsItemRow* _tmp237_;
	const gchar* _tmp238_;
	const gchar* _tmp239_;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_data33_ = g_slice_new0 (Block33Data);
	_data33_->_ref_count_ = 1;
	_data33_->self = g_object_ref (self);
	_tmp0_ = *value;
	_tmp1_ = _g_object_ref0 (g_value_get_object (&_tmp0_));
	_data33_->picked_widget = _tmp1_;
	_tmp2_ = _g_object_ref0 (self);
	target_widget = _tmp2_;
	_tmp3_ = _data33_->picked_widget;
	layouts_item_row_drag_end (_tmp3_);
	_tmp4_ = target_widget;
	layouts_item_row_drag_end (_tmp4_);
	_tmp5_ = services_event_bus_get_default ();
	_tmp6_ = _tmp5_;
	_tmp7_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp8_ = _tmp7_;
	_tmp9_ = objects_item_get_project_id (_tmp8_);
	_tmp10_ = _tmp9_;
	g_signal_emit_by_name (_tmp6_, "drag-items-end", _tmp10_);
	_g_object_unref0 (_tmp6_);
	_tmp12_ = _data33_->picked_widget;
	_tmp13_ = target_widget;
	if (_tmp12_ == _tmp13_) {
		_tmp11_ = TRUE;
	} else {
		LayoutsItemRow* _tmp14_;
		_tmp14_ = target_widget;
		_tmp11_ = _tmp14_ == NULL;
	}
	if (_tmp11_) {
		result = FALSE;
		_g_object_unref0 (target_widget);
		block33_data_unref (_data33_);
		_data33_ = NULL;
		return result;
	}
	_tmp15_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp16_ = _tmp15_;
	_tmp17_ = objects_item_get_project (_tmp16_);
	_tmp18_ = _tmp17_;
	_tmp19_ = objects_project_get_sorted_by (_tmp18_);
	_tmp20_ = _tmp19_;
	if (_tmp20_ != SORTED_BY_TYPE_MANUAL) {
		ObjectsItem* _tmp21_;
		ObjectsItem* _tmp22_;
		ObjectsProject* _tmp23_;
		ObjectsProject* _tmp24_;
		ServicesEventBus* _tmp25_;
		ServicesEventBus* _tmp26_;
		Util* _tmp27_;
		Util* _tmp28_;
		AdwToast* _tmp29_;
		AdwToast* _tmp30_;
		ObjectsItem* _tmp31_;
		ObjectsItem* _tmp32_;
		ObjectsProject* _tmp33_;
		ObjectsProject* _tmp34_;
		_tmp21_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp22_ = _tmp21_;
		_tmp23_ = objects_item_get_project (_tmp22_);
		_tmp24_ = _tmp23_;
		objects_project_set_sorted_by (_tmp24_, SORTED_BY_TYPE_MANUAL);
		_tmp25_ = services_event_bus_get_default ();
		_tmp26_ = _tmp25_;
		_tmp27_ = util_get_default ();
		_tmp28_ = _tmp27_;
		_tmp29_ = util_create_toast (_tmp28_, _ ("Order changed to 'Custom sort order'"), (guint) 2, ADW_TOAST_PRIORITY_NORMAL);
		_tmp30_ = _tmp29_;
		g_signal_emit_by_name (_tmp26_, "send-toast", _tmp30_);
		_g_object_unref0 (_tmp30_);
		_g_object_unref0 (_tmp28_);
		_g_object_unref0 (_tmp26_);
		_tmp31_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp32_ = _tmp31_;
		_tmp33_ = objects_item_get_project (_tmp32_);
		_tmp34_ = _tmp33_;
		objects_project_update_local (_tmp34_);
	}
	_tmp35_ = _data33_->picked_widget;
	_tmp36_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp35_);
	_tmp37_ = _tmp36_;
	_tmp38_ = objects_item_get_project_id (_tmp37_);
	_tmp39_ = _tmp38_;
	_tmp40_ = g_strdup (_tmp39_);
	_data33_->old_project_id = _tmp40_;
	_tmp41_ = _data33_->picked_widget;
	_tmp42_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp41_);
	_tmp43_ = _tmp42_;
	_tmp44_ = objects_item_get_section_id (_tmp43_);
	_tmp45_ = _tmp44_;
	_tmp46_ = g_strdup (_tmp45_);
	_data33_->old_section_id = _tmp46_;
	_tmp47_ = _data33_->picked_widget;
	_tmp48_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp47_);
	_tmp49_ = _tmp48_;
	_tmp50_ = objects_item_get_parent_id (_tmp49_);
	_tmp51_ = _tmp50_;
	_tmp52_ = g_strdup (_tmp51_);
	_data33_->old_parent_id = _tmp52_;
	_tmp55_ = _data33_->picked_widget;
	_tmp56_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp55_);
	_tmp57_ = _tmp56_;
	_tmp58_ = objects_item_get_project_id (_tmp57_);
	_tmp59_ = _tmp58_;
	_tmp60_ = target_widget;
	_tmp61_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp60_);
	_tmp62_ = _tmp61_;
	_tmp63_ = objects_item_get_project_id (_tmp62_);
	_tmp64_ = _tmp63_;
	if (g_strcmp0 (_tmp59_, _tmp64_) != 0) {
		_tmp54_ = TRUE;
	} else {
		LayoutsItemRow* _tmp65_;
		ObjectsItem* _tmp66_;
		ObjectsItem* _tmp67_;
		const gchar* _tmp68_;
		const gchar* _tmp69_;
		LayoutsItemRow* _tmp70_;
		ObjectsItem* _tmp71_;
		ObjectsItem* _tmp72_;
		const gchar* _tmp73_;
		const gchar* _tmp74_;
		_tmp65_ = _data33_->picked_widget;
		_tmp66_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp65_);
		_tmp67_ = _tmp66_;
		_tmp68_ = objects_item_get_section_id (_tmp67_);
		_tmp69_ = _tmp68_;
		_tmp70_ = target_widget;
		_tmp71_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp70_);
		_tmp72_ = _tmp71_;
		_tmp73_ = objects_item_get_section_id (_tmp72_);
		_tmp74_ = _tmp73_;
		_tmp54_ = g_strcmp0 (_tmp69_, _tmp74_) != 0;
	}
	if (_tmp54_) {
		_tmp53_ = TRUE;
	} else {
		LayoutsItemRow* _tmp75_;
		ObjectsItem* _tmp76_;
		ObjectsItem* _tmp77_;
		const gchar* _tmp78_;
		const gchar* _tmp79_;
		LayoutsItemRow* _tmp80_;
		ObjectsItem* _tmp81_;
		ObjectsItem* _tmp82_;
		const gchar* _tmp83_;
		const gchar* _tmp84_;
		_tmp75_ = _data33_->picked_widget;
		_tmp76_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp75_);
		_tmp77_ = _tmp76_;
		_tmp78_ = objects_item_get_parent_id (_tmp77_);
		_tmp79_ = _tmp78_;
		_tmp80_ = target_widget;
		_tmp81_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp80_);
		_tmp82_ = _tmp81_;
		_tmp83_ = objects_item_get_parent_id (_tmp82_);
		_tmp84_ = _tmp83_;
		_tmp53_ = g_strcmp0 (_tmp79_, _tmp84_) != 0;
	}
	if (_tmp53_) {
		LayoutsItemRow* _tmp85_;
		ObjectsItem* _tmp86_;
		ObjectsItem* _tmp87_;
		const gchar* _tmp88_;
		const gchar* _tmp89_;
		LayoutsItemRow* _tmp90_;
		ObjectsItem* _tmp91_;
		ObjectsItem* _tmp92_;
		const gchar* _tmp93_;
		const gchar* _tmp94_;
		LayoutsItemRow* _tmp103_;
		ObjectsItem* _tmp104_;
		ObjectsItem* _tmp105_;
		const gchar* _tmp106_;
		const gchar* _tmp107_;
		LayoutsItemRow* _tmp108_;
		ObjectsItem* _tmp109_;
		ObjectsItem* _tmp110_;
		const gchar* _tmp111_;
		const gchar* _tmp112_;
		LayoutsItemRow* _tmp121_;
		ObjectsItem* _tmp122_;
		ObjectsItem* _tmp123_;
		const gchar* _tmp124_;
		const gchar* _tmp125_;
		LayoutsItemRow* _tmp126_;
		ObjectsItem* _tmp127_;
		ObjectsItem* _tmp128_;
		const gchar* _tmp129_;
		const gchar* _tmp130_;
		LayoutsItemRow* _tmp139_;
		ObjectsItem* _tmp140_;
		ObjectsItem* _tmp141_;
		ObjectsProject* _tmp142_;
		ObjectsProject* _tmp143_;
		SourceType _tmp144_;
		SourceType _tmp145_;
		_tmp85_ = _data33_->picked_widget;
		_tmp86_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp85_);
		_tmp87_ = _tmp86_;
		_tmp88_ = objects_item_get_project_id (_tmp87_);
		_tmp89_ = _tmp88_;
		_tmp90_ = target_widget;
		_tmp91_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp90_);
		_tmp92_ = _tmp91_;
		_tmp93_ = objects_item_get_project_id (_tmp92_);
		_tmp94_ = _tmp93_;
		if (g_strcmp0 (_tmp89_, _tmp94_) != 0) {
			LayoutsItemRow* _tmp95_;
			ObjectsItem* _tmp96_;
			ObjectsItem* _tmp97_;
			LayoutsItemRow* _tmp98_;
			ObjectsItem* _tmp99_;
			ObjectsItem* _tmp100_;
			const gchar* _tmp101_;
			const gchar* _tmp102_;
			_tmp95_ = _data33_->picked_widget;
			_tmp96_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp95_);
			_tmp97_ = _tmp96_;
			_tmp98_ = target_widget;
			_tmp99_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp98_);
			_tmp100_ = _tmp99_;
			_tmp101_ = objects_item_get_project_id (_tmp100_);
			_tmp102_ = _tmp101_;
			objects_item_set_project_id (_tmp97_, _tmp102_);
		}
		_tmp103_ = _data33_->picked_widget;
		_tmp104_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp103_);
		_tmp105_ = _tmp104_;
		_tmp106_ = objects_item_get_section_id (_tmp105_);
		_tmp107_ = _tmp106_;
		_tmp108_ = target_widget;
		_tmp109_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp108_);
		_tmp110_ = _tmp109_;
		_tmp111_ = objects_item_get_section_id (_tmp110_);
		_tmp112_ = _tmp111_;
		if (g_strcmp0 (_tmp107_, _tmp112_) != 0) {
			LayoutsItemRow* _tmp113_;
			ObjectsItem* _tmp114_;
			ObjectsItem* _tmp115_;
			LayoutsItemRow* _tmp116_;
			ObjectsItem* _tmp117_;
			ObjectsItem* _tmp118_;
			const gchar* _tmp119_;
			const gchar* _tmp120_;
			_tmp113_ = _data33_->picked_widget;
			_tmp114_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp113_);
			_tmp115_ = _tmp114_;
			_tmp116_ = target_widget;
			_tmp117_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp116_);
			_tmp118_ = _tmp117_;
			_tmp119_ = objects_item_get_section_id (_tmp118_);
			_tmp120_ = _tmp119_;
			objects_item_set_section_id (_tmp115_, _tmp120_);
		}
		_tmp121_ = _data33_->picked_widget;
		_tmp122_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp121_);
		_tmp123_ = _tmp122_;
		_tmp124_ = objects_item_get_parent_id (_tmp123_);
		_tmp125_ = _tmp124_;
		_tmp126_ = target_widget;
		_tmp127_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp126_);
		_tmp128_ = _tmp127_;
		_tmp129_ = objects_item_get_parent_id (_tmp128_);
		_tmp130_ = _tmp129_;
		if (g_strcmp0 (_tmp125_, _tmp130_) != 0) {
			LayoutsItemRow* _tmp131_;
			ObjectsItem* _tmp132_;
			ObjectsItem* _tmp133_;
			LayoutsItemRow* _tmp134_;
			ObjectsItem* _tmp135_;
			ObjectsItem* _tmp136_;
			const gchar* _tmp137_;
			const gchar* _tmp138_;
			_tmp131_ = _data33_->picked_widget;
			_tmp132_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp131_);
			_tmp133_ = _tmp132_;
			_tmp134_ = target_widget;
			_tmp135_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp134_);
			_tmp136_ = _tmp135_;
			_tmp137_ = objects_item_get_parent_id (_tmp136_);
			_tmp138_ = _tmp137_;
			objects_item_set_parent_id (_tmp133_, _tmp138_);
		}
		_tmp139_ = _data33_->picked_widget;
		_tmp140_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp139_);
		_tmp141_ = _tmp140_;
		_tmp142_ = objects_item_get_project (_tmp141_);
		_tmp143_ = _tmp142_;
		_tmp144_ = objects_project_get_source_type (_tmp143_);
		_tmp145_ = _tmp144_;
		if (_tmp145_ == SOURCE_TYPE_LOCAL) {
			ServicesStore* _tmp146_;
			LayoutsItemRow* _tmp147_;
			ObjectsItem* _tmp148_;
			ObjectsItem* _tmp149_;
			const gchar* _tmp150_;
			const gchar* _tmp151_;
			const gchar* _tmp152_;
			_tmp146_ = services_store_instance ();
			_tmp147_ = _data33_->picked_widget;
			_tmp148_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp147_);
			_tmp149_ = _tmp148_;
			_tmp150_ = _data33_->old_project_id;
			_tmp151_ = _data33_->old_section_id;
			_tmp152_ = _data33_->old_parent_id;
			services_store_move_item (_tmp146_, _tmp149_, _tmp150_, _tmp151_, _tmp152_);
		} else {
			LayoutsItemRow* _tmp153_;
			ObjectsItem* _tmp154_;
			ObjectsItem* _tmp155_;
			ObjectsProject* _tmp156_;
			ObjectsProject* _tmp157_;
			SourceType _tmp158_;
			SourceType _tmp159_;
			_tmp153_ = _data33_->picked_widget;
			_tmp154_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp153_);
			_tmp155_ = _tmp154_;
			_tmp156_ = objects_item_get_project (_tmp155_);
			_tmp157_ = _tmp156_;
			_tmp158_ = objects_project_get_source_type (_tmp157_);
			_tmp159_ = _tmp158_;
			if (_tmp159_ == SOURCE_TYPE_TODOIST) {
				gchar* move_id = NULL;
				LayoutsItemRow* _tmp160_;
				ObjectsItem* _tmp161_;
				ObjectsItem* _tmp162_;
				const gchar* _tmp163_;
				const gchar* _tmp164_;
				gchar* _tmp165_;
				gchar* move_type = NULL;
				gchar* _tmp166_;
				LayoutsItemRow* _tmp167_;
				ObjectsItem* _tmp168_;
				ObjectsItem* _tmp169_;
				const gchar* _tmp170_;
				const gchar* _tmp171_;
				LayoutsItemRow* _tmp179_;
				ObjectsItem* _tmp180_;
				ObjectsItem* _tmp181_;
				gboolean _tmp182_;
				gboolean _tmp183_;
				ServicesTodoist* _tmp191_;
				ServicesTodoist* _tmp192_;
				LayoutsItemRow* _tmp193_;
				ObjectsItem* _tmp194_;
				ObjectsItem* _tmp195_;
				const gchar* _tmp196_;
				const gchar* _tmp197_;
				_tmp160_ = _data33_->picked_widget;
				_tmp161_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp160_);
				_tmp162_ = _tmp161_;
				_tmp163_ = objects_item_get_project_id (_tmp162_);
				_tmp164_ = _tmp163_;
				_tmp165_ = g_strdup (_tmp164_);
				move_id = _tmp165_;
				_tmp166_ = g_strdup ("project_id");
				move_type = _tmp166_;
				_tmp167_ = _data33_->picked_widget;
				_tmp168_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp167_);
				_tmp169_ = _tmp168_;
				_tmp170_ = objects_item_get_section_id (_tmp169_);
				_tmp171_ = _tmp170_;
				if (g_strcmp0 (_tmp171_, "") != 0) {
					LayoutsItemRow* _tmp172_;
					ObjectsItem* _tmp173_;
					ObjectsItem* _tmp174_;
					const gchar* _tmp175_;
					const gchar* _tmp176_;
					gchar* _tmp177_;
					gchar* _tmp178_;
					_tmp172_ = _data33_->picked_widget;
					_tmp173_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp172_);
					_tmp174_ = _tmp173_;
					_tmp175_ = objects_item_get_section_id (_tmp174_);
					_tmp176_ = _tmp175_;
					_tmp177_ = g_strdup (_tmp176_);
					_g_free0 (move_id);
					move_id = _tmp177_;
					_tmp178_ = g_strdup ("section_id");
					_g_free0 (move_type);
					move_type = _tmp178_;
				}
				_tmp179_ = _data33_->picked_widget;
				_tmp180_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp179_);
				_tmp181_ = _tmp180_;
				_tmp182_ = objects_item_get_has_parent (_tmp181_);
				_tmp183_ = _tmp182_;
				if (_tmp183_) {
					LayoutsItemRow* _tmp184_;
					ObjectsItem* _tmp185_;
					ObjectsItem* _tmp186_;
					const gchar* _tmp187_;
					const gchar* _tmp188_;
					gchar* _tmp189_;
					gchar* _tmp190_;
					_tmp184_ = _data33_->picked_widget;
					_tmp185_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp184_);
					_tmp186_ = _tmp185_;
					_tmp187_ = objects_item_get_parent_id (_tmp186_);
					_tmp188_ = _tmp187_;
					_tmp189_ = g_strdup (_tmp188_);
					_g_free0 (move_id);
					move_id = _tmp189_;
					_tmp190_ = g_strdup ("parent_id");
					_g_free0 (move_type);
					move_type = _tmp190_;
				}
				_tmp191_ = services_todoist_get_default ();
				_tmp192_ = _tmp191_;
				_tmp193_ = _data33_->picked_widget;
				_tmp194_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp193_);
				_tmp195_ = _tmp194_;
				_tmp196_ = move_type;
				_tmp197_ = move_id;
				services_todoist_move_item (_tmp192_, _tmp195_, _tmp196_, _tmp197_, ______lambda148__gasync_ready_callback, block33_data_ref (_data33_));
				_g_object_unref0 (_tmp192_);
				_g_free0 (move_type);
				_g_free0 (move_id);
			} else {
				LayoutsItemRow* _tmp198_;
				ObjectsItem* _tmp199_;
				ObjectsItem* _tmp200_;
				ObjectsProject* _tmp201_;
				ObjectsProject* _tmp202_;
				SourceType _tmp203_;
				SourceType _tmp204_;
				_tmp198_ = _data33_->picked_widget;
				_tmp199_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp198_);
				_tmp200_ = _tmp199_;
				_tmp201_ = objects_item_get_project (_tmp200_);
				_tmp202_ = _tmp201_;
				_tmp203_ = objects_project_get_source_type (_tmp202_);
				_tmp204_ = _tmp203_;
				if (_tmp204_ == SOURCE_TYPE_CALDAV) {
					Block34Data* _data34_;
					ServicesCalDAVCore* _tmp205_;
					ServicesCalDAVCore* _tmp206_;
					LayoutsItemRow* _tmp207_;
					ObjectsItem* _tmp208_;
					ObjectsItem* _tmp209_;
					ObjectsProject* _tmp210_;
					ObjectsProject* _tmp211_;
					ObjectsSource* _tmp212_;
					ObjectsSource* _tmp213_;
					ServicesCalDAVCalDAVClient* _tmp214_;
					ServicesCalDAVCalDAVClient* _tmp215_;
					ServicesCalDAVCalDAVClient* _tmp216_;
					LayoutsItemRow* _tmp217_;
					ObjectsItem* _tmp218_;
					ObjectsItem* _tmp219_;
					_data34_ = g_slice_new0 (Block34Data);
					_data34_->_ref_count_ = 1;
					_data34_->_data33_ = block33_data_ref (_data33_);
					_tmp205_ = services_cal_dav_core_get_default ();
					_tmp206_ = _tmp205_;
					_tmp207_ = _data33_->picked_widget;
					_tmp208_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp207_);
					_tmp209_ = _tmp208_;
					_tmp210_ = objects_item_get_project (_tmp209_);
					_tmp211_ = _tmp210_;
					_tmp212_ = objects_project_get_source (_tmp211_);
					_tmp213_ = _tmp212_;
					_tmp214_ = services_cal_dav_core_get_client (_tmp206_, _tmp213_);
					_tmp215_ = _tmp214_;
					_g_object_unref0 (_tmp206_);
					_data34_->caldav_client = _tmp215_;
					_tmp216_ = _data34_->caldav_client;
					_tmp217_ = _data33_->picked_widget;
					_tmp218_ = layouts_item_base_get_item ((LayoutsItemBase*) _tmp217_);
					_tmp219_ = _tmp218_;
					services_cal_dav_cal_dav_client_add_item (_tmp216_, _tmp219_, TRUE, _______lambda149__gasync_ready_callback, block34_data_ref (_data34_));
					block34_data_unref (_data34_);
					_data34_ = NULL;
				}
			}
		}
	}
	_tmp220_ = _data33_->picked_widget;
	_tmp221_ = gtk_widget_get_parent ((GtkWidget*) _tmp220_);
	_tmp222_ = _tmp221_;
	_tmp223_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp222_, gtk_list_box_get_type (), GtkListBox));
	source_list = _tmp223_;
	_tmp224_ = source_list;
	_tmp225_ = _data33_->picked_widget;
	gtk_list_box_remove (_tmp224_, (GtkWidget*) _tmp225_);
	_tmp226_ = target_widget;
	_tmp227_ = gtk_widget_get_parent ((GtkWidget*) _tmp226_);
	_tmp228_ = _tmp227_;
	_tmp229_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp228_, gtk_list_box_get_type (), GtkListBox));
	target_list = _tmp229_;
	_tmp230_ = target_widget;
	new_index = gtk_list_box_row_get_index ((GtkListBoxRow*) _tmp230_);
	_tmp231_ = target_list;
	_tmp232_ = _data33_->picked_widget;
	gtk_list_box_insert (_tmp231_, (GtkWidget*) _tmp232_, new_index);
	_tmp233_ = target_list;
	_tmp234_ = _data33_->picked_widget;
	utils_task_utils_update_single_item_order (_tmp233_, (LayoutsItemBase*) _tmp234_, new_index);
	_tmp235_ = services_event_bus_get_default ();
	_tmp236_ = _tmp235_;
	_tmp237_ = _data33_->picked_widget;
	_tmp238_ = _data33_->old_section_id;
	_tmp239_ = _data33_->old_parent_id;
	g_signal_emit_by_name (_tmp236_, "update-inserted-item-map", (GtkWidget*) _tmp237_, _tmp238_, _tmp239_);
	_g_object_unref0 (_tmp236_);
	result = TRUE;
	_g_object_unref0 (target_list);
	_g_object_unref0 (source_list);
	_g_object_unref0 (target_widget);
	block33_data_unref (_data33_);
	_data33_ = NULL;
	return result;
}

static gboolean
___lambda147__gtk_drop_target_drop (GtkDropTarget* _sender,
                                    GValue* value,
                                    gdouble x,
                                    gdouble y,
                                    gpointer self)
{
	gboolean result;
	result = __lambda147_ ((LayoutsItemRow*) self, value, x, y);
	return result;
}

static void
layouts_item_row_build_drop_order_target (LayoutsItemRow* self)
{
	GtkDropTarget* _tmp0_;
	GtkGrid* _tmp1_;
	GtkDropTarget* _tmp2_;
	GtkEventController* _tmp3_;
	GeeHashMap* _tmp4_;
	GtkDropTarget* _tmp5_;
	gulong _tmp6_;
	GtkDropTarget* _tmp7_;
	g_return_if_fail (self != NULL);
	_tmp0_ = gtk_drop_target_new (LAYOUTS_TYPE_ITEM_ROW, GDK_ACTION_MOVE);
	_g_object_unref0 (self->priv->drop_order_target);
	self->priv->drop_order_target = _tmp0_;
	_tmp1_ = self->priv->motion_top_grid;
	_tmp2_ = self->priv->drop_order_target;
	_tmp3_ = _g_object_ref0 ((GtkEventController*) _tmp2_);
	gtk_widget_add_controller ((GtkWidget*) _tmp1_, _tmp3_);
	_tmp4_ = self->priv->dnd_handlerses;
	_tmp5_ = self->priv->drop_order_target;
	_tmp6_ = g_signal_connect_object (_tmp5_, "drop", (GCallback) ___lambda147__gtk_drop_target_drop, self, 0);
	_tmp7_ = self->priv->drop_order_target;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp4_, (gpointer) ((guintptr) _tmp6_), (GObject*) _tmp7_);
}

void
layouts_item_row_disable_drag_and_drop (LayoutsItemRow* self)
{
	WidgetsSubItems* _tmp0_;
	g_return_if_fail (self != NULL);
	layouts_item_row_set_drag_enabled (self, FALSE);
	_layouts_item_row_disable_drag_and_drop (self);
	_tmp0_ = self->priv->subitems;
	widgets_sub_items_disable_drag_and_drop (_tmp0_);
}

static void
_layouts_item_row_disable_drag_and_drop (LayoutsItemRow* self)
{
	GtkDropControllerMotion* _tmp0_;
	GtkDragSource* _tmp2_;
	GtkDropTarget* _tmp5_;
	GtkDropTarget* _tmp8_;
	GtkDropTarget* _tmp11_;
	GtkDropTarget* _tmp14_;
	GeeHashMap* _tmp17_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->drop_motion_ctrl;
	if (_tmp0_ != NULL) {
		GtkDropControllerMotion* _tmp1_;
		_tmp1_ = self->priv->drop_motion_ctrl;
		gtk_widget_remove_controller ((GtkWidget*) self, (GtkEventController*) _tmp1_);
		_g_object_unref0 (self->priv->drop_motion_ctrl);
		self->priv->drop_motion_ctrl = NULL;
	}
	_tmp2_ = self->priv->drag_source;
	if (_tmp2_ != NULL) {
		AdwBin* _tmp3_;
		GtkDragSource* _tmp4_;
		_tmp3_ = self->itemrow_box;
		_tmp4_ = self->priv->drag_source;
		gtk_widget_remove_controller ((GtkWidget*) _tmp3_, (GtkEventController*) _tmp4_);
		_g_object_unref0 (self->priv->drag_source);
		self->priv->drag_source = NULL;
	}
	_tmp5_ = self->priv->drop_target;
	if (_tmp5_ != NULL) {
		AdwBin* _tmp6_;
		GtkDropTarget* _tmp7_;
		_tmp6_ = self->itemrow_box;
		_tmp7_ = self->priv->drop_target;
		gtk_widget_remove_controller ((GtkWidget*) _tmp6_, (GtkEventController*) _tmp7_);
		_g_object_unref0 (self->priv->drop_target);
		self->priv->drop_target = NULL;
	}
	_tmp8_ = self->priv->drop_magic_button_target;
	if (_tmp8_ != NULL) {
		AdwBin* _tmp9_;
		GtkDropTarget* _tmp10_;
		_tmp9_ = self->itemrow_box;
		_tmp10_ = self->priv->drop_magic_button_target;
		gtk_widget_remove_controller ((GtkWidget*) _tmp9_, (GtkEventController*) _tmp10_);
		_g_object_unref0 (self->priv->drop_magic_button_target);
		self->priv->drop_magic_button_target = NULL;
	}
	_tmp11_ = self->priv->drop_order_target;
	if (_tmp11_ != NULL) {
		GtkGrid* _tmp12_;
		GtkDropTarget* _tmp13_;
		_tmp12_ = self->priv->motion_top_grid;
		_tmp13_ = self->priv->drop_order_target;
		gtk_widget_remove_controller ((GtkWidget*) _tmp12_, (GtkEventController*) _tmp13_);
		_g_object_unref0 (self->priv->drop_order_target);
		self->priv->drop_order_target = NULL;
	}
	_tmp14_ = self->priv->drop_order_magic_button_target;
	if (_tmp14_ != NULL) {
		GtkGrid* _tmp15_;
		GtkDropTarget* _tmp16_;
		_tmp15_ = self->priv->motion_top_grid;
		_tmp16_ = self->priv->drop_order_magic_button_target;
		gtk_widget_remove_controller ((GtkWidget*) _tmp15_, (GtkEventController*) _tmp16_);
		_g_object_unref0 (self->priv->drop_order_magic_button_target);
		self->priv->drop_order_magic_button_target = NULL;
	}
	_tmp17_ = self->priv->dnd_handlerses;
	gee_abstract_map_clear ((GeeAbstractMap*) _tmp17_);
}

void
layouts_item_row_drag_begin (LayoutsItemRow* self)
{
	AdwBin* _tmp0_;
	GtkRevealer* _tmp1_;
	ServicesEventBus* _tmp2_;
	ServicesEventBus* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->itemrow_box;
	gtk_widget_add_css_class ((GtkWidget*) _tmp0_, "drop-begin");
	_tmp1_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp1_, FALSE);
	_tmp2_ = services_event_bus_get_default ();
	_tmp3_ = _tmp2_;
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp5_ = _tmp4_;
	_tmp6_ = objects_item_get_project_id (_tmp5_);
	_tmp7_ = _tmp6_;
	g_signal_emit_by_name (_tmp3_, "drag-n-drop-active", _tmp7_, TRUE);
	_g_object_unref0 (_tmp3_);
}

void
layouts_item_row_drag_end (LayoutsItemRow* self)
{
	AdwBin* _tmp0_;
	GtkRevealer* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	ServicesEventBus* _tmp6_;
	ServicesEventBus* _tmp7_;
	ObjectsItem* _tmp8_;
	ObjectsItem* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->itemrow_box;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp0_, "drop-begin");
	_tmp1_ = self->priv->main_revealer;
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_show_item (_tmp3_);
	_tmp5_ = _tmp4_;
	gtk_revealer_set_reveal_child (_tmp1_, _tmp5_);
	_tmp6_ = services_event_bus_get_default ();
	_tmp7_ = _tmp6_;
	_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp9_ = _tmp8_;
	_tmp10_ = objects_item_get_project_id (_tmp9_);
	_tmp11_ = _tmp10_;
	g_signal_emit_by_name (_tmp7_, "drag-n-drop-active", _tmp11_, FALSE);
	_g_object_unref0 (_tmp7_);
}

static void
layouts_item_row_build_markdown_editor (LayoutsItemRow* self)
{
	WidgetsMarkdownEditor* _tmp0_;
	gchar* _tmp1_;
	ObjectsItem* _tmp2_;
	ObjectsItem* _tmp3_;
	ObjectsProject* _tmp4_;
	ObjectsProject* _tmp5_;
	ObjectsProject* _tmp6_;
	WidgetsMarkdownEditor* _tmp7_ = NULL;
	WidgetsMarkdownEditor* _tmp8_;
	GtkTextView* _tmp9_;
	gint _tmp10_ = 0;
	ObjectsItem* _tmp11_;
	ObjectsItem* _tmp12_;
	ItemType _tmp13_;
	ItemType _tmp14_;
	WidgetsMarkdownEditor* _tmp15_;
	WidgetsMarkdownEditor* _tmp16_;
	WidgetsMarkdownEditor* _tmp17_;
	WidgetsMarkdownEditor* _tmp18_;
	gboolean _tmp19_ = FALSE;
	ObjectsItem* _tmp20_;
	ObjectsItem* _tmp21_;
	gboolean _tmp22_;
	gboolean _tmp23_;
	WidgetsMarkdownEditor* _tmp30_;
	WidgetsMarkdownEditor* _tmp31_;
	ObjectsItem* _tmp32_;
	ObjectsItem* _tmp33_;
	const gchar* _tmp34_;
	const gchar* _tmp35_;
	WidgetsMarkdownEditor* _tmp36_;
	GtkTextView* _tmp37_;
	WidgetsMarkdownEditor* _tmp38_;
	GtkTextView* _tmp39_;
	ObjectsItem* _tmp40_;
	ObjectsItem* _tmp41_;
	const gchar* _tmp42_;
	const gchar* _tmp43_;
	GtkRevealer* _tmp44_;
	WidgetsMarkdownEditor* _tmp45_;
	GtkRevealer* _tmp46_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->markdown_editor;
	if (_tmp0_ != NULL) {
		return;
	}
	_tmp1_ = g_strdup (_ ("Description"));
	_tmp2_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp3_ = _tmp2_;
	_tmp4_ = objects_item_get_project (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = _g_object_ref0 (_tmp5_);
	_tmp7_ = widgets_markdown_editor_new ();
	widgets_markdown_editor_set_placeholder_text (_tmp7_, _tmp1_);
	_g_free0 (_tmp1_);
	widgets_markdown_editor_set_project (_tmp7_, _tmp6_);
	_g_object_unref0 (_tmp6_);
	g_object_ref_sink (_tmp7_);
	_g_object_unref0 (self->priv->markdown_editor);
	self->priv->markdown_editor = _tmp7_;
	_tmp8_ = self->priv->markdown_editor;
	_tmp9_ = _tmp8_->text_view;
	g_object_set ((GtkWidget*) _tmp9_, "height-request", 64, NULL);
	_tmp11_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp12_ = _tmp11_;
	_tmp13_ = objects_item_get_item_type (_tmp12_);
	_tmp14_ = _tmp13_;
	if (_tmp14_ == ITEM_TYPE_TASK) {
		_tmp10_ = 24;
	} else {
		_tmp10_ = 0;
	}
	_tmp15_ = self->priv->markdown_editor;
	gtk_widget_set_margin_start ((GtkWidget*) _tmp15_, _tmp10_);
	_tmp16_ = self->priv->markdown_editor;
	gtk_widget_set_margin_end ((GtkWidget*) _tmp16_, 6);
	_tmp17_ = self->priv->markdown_editor;
	gtk_widget_set_margin_top ((GtkWidget*) _tmp17_, 3);
	_tmp18_ = self->priv->markdown_editor;
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp18_, 12);
	_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp21_ = _tmp20_;
	_tmp22_ = objects_item_get_completed (_tmp21_);
	_tmp23_ = _tmp22_;
	if (!_tmp23_) {
		ObjectsItem* _tmp24_;
		ObjectsItem* _tmp25_;
		ObjectsProject* _tmp26_;
		ObjectsProject* _tmp27_;
		gboolean _tmp28_;
		gboolean _tmp29_;
		_tmp24_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp25_ = _tmp24_;
		_tmp26_ = objects_item_get_project (_tmp25_);
		_tmp27_ = _tmp26_;
		_tmp28_ = objects_project_get_is_deck (_tmp27_);
		_tmp29_ = _tmp28_;
		_tmp19_ = !_tmp29_;
	} else {
		_tmp19_ = FALSE;
	}
	_tmp30_ = self->priv->markdown_editor;
	widgets_markdown_editor_set_is_editable (_tmp30_, _tmp19_);
	_tmp31_ = self->priv->markdown_editor;
	_tmp32_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp33_ = _tmp32_;
	_tmp34_ = objects_item_get_description (_tmp33_);
	_tmp35_ = _tmp34_;
	widgets_markdown_editor_set_text (_tmp31_, _tmp35_);
	_tmp36_ = self->priv->markdown_editor;
	_tmp37_ = _tmp36_->text_view;
	gtk_accessible_update_property ((GtkAccessible*) _tmp37_, GTK_ACCESSIBLE_PROPERTY_LABEL, _ ("Task description"), -1, -1);
	_tmp38_ = self->priv->markdown_editor;
	_tmp39_ = _tmp38_->text_view;
	_tmp40_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp41_ = _tmp40_;
	_tmp42_ = objects_item_get_description (_tmp41_);
	_tmp43_ = _tmp42_;
	gtk_accessible_update_property ((GtkAccessible*) _tmp39_, GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT, _tmp43_, -1, -1);
	_tmp44_ = self->priv->markdown_revealer;
	_tmp45_ = self->priv->markdown_editor;
	gtk_revealer_set_child (_tmp44_, (GtkWidget*) _tmp45_);
	_tmp46_ = self->priv->markdown_revealer;
	gtk_revealer_set_reveal_child (_tmp46_, TRUE);
	layouts_item_row_build_markdown_signals (self);
}

static Block35Data*
block35_data_ref (Block35Data* _data35_)
{
	g_atomic_int_inc (&_data35_->_ref_count_);
	return _data35_;
}

static void
block35_data_unref (void * _userdata_)
{
	Block35Data* _data35_;
	_data35_ = (Block35Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data35_->_ref_count_)) {
		LayoutsItemRow* self;
		self = _data35_->self;
		_g_object_unref0 (_data35_->description_gesture_click);
		_g_object_unref0 (self);
		g_slice_free (Block35Data, _data35_);
	}
}

static void
__lambda130_ (Block35Data* _data35_,
              gint n_press,
              gdouble x,
              gdouble y)
{
	LayoutsItemRow* self;
	WidgetsMarkdownEditor* _tmp0_;
	self = _data35_->self;
	gtk_gesture_set_state ((GtkGesture*) _data35_->description_gesture_click, GTK_EVENT_SEQUENCE_CLAIMED);
	_tmp0_ = self->priv->markdown_editor;
	widgets_markdown_editor_view_focus (_tmp0_);
}

static void
___lambda130__gtk_gesture_click_released (GtkGestureClick* _sender,
                                          gint n_press,
                                          gdouble x,
                                          gdouble y,
                                          gpointer self)
{
	__lambda130_ (self, n_press, x, y);
}

static void
__lambda131_ (LayoutsItemRow* self)
{
	layouts_item_row_set_edit (self, FALSE);
}

static void
___lambda131__widgets_markdown_editor_escape_pressed (WidgetsMarkdownEditor* _sender,
                                                      gpointer self)
{
	__lambda131_ ((LayoutsItemRow*) self);
}

static void
__lambda132_ (LayoutsItemRow* self)
{
	layouts_item_row_update_content_description (self);
}

static void
___lambda132__widgets_markdown_editor_text_changed (WidgetsMarkdownEditor* _sender,
                                                    const gchar* text,
                                                    gpointer self)
{
	__lambda132_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_build_markdown_signals (LayoutsItemRow* self)
{
	Block35Data* _data35_;
	GtkGestureClick* _tmp0_;
	WidgetsMarkdownEditor* _tmp1_;
	GtkEventController* _tmp2_;
	GeeHashMap* _tmp3_;
	gulong _tmp4_;
	GeeHashMap* _tmp5_;
	WidgetsMarkdownEditor* _tmp6_;
	gulong _tmp7_;
	WidgetsMarkdownEditor* _tmp8_;
	GeeHashMap* _tmp9_;
	WidgetsMarkdownEditor* _tmp10_;
	gulong _tmp11_;
	WidgetsMarkdownEditor* _tmp12_;
	GtkSourceBuffer* _tmp13_;
	g_return_if_fail (self != NULL);
	_data35_ = g_slice_new0 (Block35Data);
	_data35_->_ref_count_ = 1;
	_data35_->self = g_object_ref (self);
	_tmp0_ = (GtkGestureClick*) gtk_gesture_click_new ();
	_data35_->description_gesture_click = _tmp0_;
	_tmp1_ = self->priv->markdown_editor;
	_tmp2_ = _g_object_ref0 ((GtkEventController*) _data35_->description_gesture_click);
	gtk_widget_add_controller ((GtkWidget*) _tmp1_, _tmp2_);
	_tmp3_ = self->priv->markdown_handlerses;
	_tmp4_ = g_signal_connect_data (_data35_->description_gesture_click, "released", (GCallback) ___lambda130__gtk_gesture_click_released, block35_data_ref (_data35_), (GClosureNotify) block35_data_unref, 0);
	gee_abstract_map_set ((GeeAbstractMap*) _tmp3_, (gpointer) ((guintptr) _tmp4_), (GObject*) _data35_->description_gesture_click);
	_tmp5_ = self->priv->markdown_handlerses;
	_tmp6_ = self->priv->markdown_editor;
	_tmp7_ = g_signal_connect_object (_tmp6_, "escape-pressed", (GCallback) ___lambda131__widgets_markdown_editor_escape_pressed, self, 0);
	_tmp8_ = self->priv->markdown_editor;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp5_, (gpointer) ((guintptr) _tmp7_), (GObject*) _tmp8_);
	_tmp9_ = self->priv->markdown_handlerses;
	_tmp10_ = self->priv->markdown_editor;
	_tmp11_ = g_signal_connect_object (_tmp10_, "text-changed", (GCallback) ___lambda132__widgets_markdown_editor_text_changed, self, 0);
	_tmp12_ = self->priv->markdown_editor;
	_tmp13_ = _tmp12_->buffer;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp9_, (gpointer) ((guintptr) _tmp11_), (GObject*) _tmp13_);
	block35_data_unref (_data35_);
	_data35_ = NULL;
}

static void
__lambda217_ (LayoutsItemRow* self)
{
	WidgetsScheduleButton* _tmp0_;
	ObjectsDueDate* _tmp1_;
	ObjectsDueDate* _tmp2_;
	_tmp0_ = self->priv->schedule_button;
	_tmp1_ = widgets_schedule_button_get_duedate (_tmp0_);
	_tmp2_ = _tmp1_;
	layouts_item_row_update_due (self, _tmp2_);
}

static void
___lambda217__widgets_schedule_button_duedate_changed (WidgetsScheduleButton* _sender,
                                                       gpointer self)
{
	__lambda217_ ((LayoutsItemRow*) self);
}

static void
__lambda218_ (LayoutsItemRow* self,
              gint priority)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	gint _tmp2_;
	gint _tmp3_;
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_priority (_tmp1_);
	_tmp3_ = _tmp2_;
	if (_tmp3_ != priority) {
		ObjectsItem* _tmp4_;
		ObjectsItem* _tmp5_;
		ObjectsItem* _tmp6_;
		ObjectsItem* _tmp7_;
		_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp5_ = _tmp4_;
		objects_item_set_priority (_tmp5_, priority);
		_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp7_ = _tmp6_;
		objects_item_update_async (_tmp7_, "");
	}
}

static void
___lambda218__widgets_priority_button_changed (WidgetsPriorityButton* _sender,
                                               gint priority,
                                               gpointer self)
{
	__lambda218_ ((LayoutsItemRow*) self, priority);
}

static void
__lambda219_ (LayoutsItemRow* self,
              GeeHashMap* labels)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (labels != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_update_labels (_tmp1_, labels);
}

static void
___lambda219__widgets_label_picker_label_button_labels_changed (WidgetsLabelPickerLabelButton* _sender,
                                                                GeeHashMap* labels,
                                                                gpointer self)
{
	__lambda219_ ((LayoutsItemRow*) self, labels);
}

static void
__lambda220_ (LayoutsItemRow* self,
              ObjectsReminder* reminder)
{
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	g_return_if_fail (reminder != NULL);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	objects_item_add_reminder (_tmp1_, reminder);
}

static void
___lambda220__widgets_reminder_picker_reminder_button_reminder_added (WidgetsReminderPickerReminderButton* _sender,
                                                                      ObjectsReminder* reminder,
                                                                      gpointer self)
{
	__lambda220_ ((LayoutsItemRow*) self, reminder);
}

static void
__lambda221_ (LayoutsItemRow* self,
              GDateTime* date)
{
	layouts_item_row_update_deadline (self, date);
}

static void
___lambda221__widgets_deadline_button_date_selected (WidgetsDeadlineButton* _sender,
                                                     GDateTime* date,
                                                     gpointer self)
{
	__lambda221_ ((LayoutsItemRow*) self, date);
}

static void
__lambda222_ (LayoutsItemRow* self,
              GDateTime* date)
{
	layouts_item_row_update_deadline (self, date);
}

static void
___lambda222__widgets_deadline_button_date_selected (WidgetsDeadlineButton* _sender,
                                                     GDateTime* date,
                                                     gpointer self)
{
	__lambda222_ ((LayoutsItemRow*) self, date);
}

static void
__lambda223_ (LayoutsItemRow* self,
              gint count)
{
	gchar* _tmp0_ = NULL;
	GtkLabel* _tmp3_;
	GtkLabel* _tmp4_;
	if (count <= 0) {
		gchar* _tmp1_;
		_tmp1_ = g_strdup ("");
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp1_;
	} else {
		gchar* _tmp2_;
		_tmp2_ = g_strdup_printf ("%i", count);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp2_;
	}
	_tmp3_ = self->priv->attachments_count;
	gtk_label_set_label (_tmp3_, _tmp0_);
	_tmp4_ = self->priv->attachments_count;
	gtk_widget_set_visible ((GtkWidget*) _tmp4_, count > 0);
	_g_free0 (_tmp0_);
}

static void
___lambda223__widgets_attachments_update_count (WidgetsAttachments* _sender,
                                                gint count,
                                                gpointer self)
{
	__lambda223_ ((LayoutsItemRow*) self, count);
}

static void
__lambda224_ (LayoutsItemRow* self,
              gboolean active)
{
	if (active) {
		GtkMenuButton* _tmp0_;
		GtkPopover* _tmp1_;
		GtkPopover* _tmp2_;
		_tmp0_ = self->priv->attachments_button;
		_tmp1_ = gtk_menu_button_get_popover (_tmp0_);
		_tmp2_ = _tmp1_;
		gtk_popover_popdown (_tmp2_);
	}
}

static void
___lambda224__widgets_attachments_file_selector_opened (WidgetsAttachments* _sender,
                                                        gboolean active,
                                                        gpointer self)
{
	__lambda224_ ((LayoutsItemRow*) self, active);
}

static void
layouts_item_row_build_detail_widgets (LayoutsItemRow* self)
{
	WidgetsScheduleButton* _tmp0_;
	ObjectsItem* _tmp1_;
	ObjectsItem* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	WidgetsScheduleButton* _tmp5_ = NULL;
	ObjectsItem* _tmp6_;
	ObjectsItem* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	WidgetsDeadlineButton* _tmp10_ = NULL;
	GtkBox* _tmp11_;
	WidgetsScheduleButton* _tmp12_;
	GtkBox* _tmp13_;
	WidgetsDeadlineButton* _tmp14_;
	ObjectsItem* _tmp15_;
	ObjectsItem* _tmp16_;
	gboolean _tmp17_;
	gboolean _tmp18_;
	WidgetsPriorityButton* _tmp19_ = NULL;
	ObjectsItem* _tmp20_;
	ObjectsItem* _tmp21_;
	gboolean _tmp22_;
	gboolean _tmp23_;
	WidgetsLabelPickerLabelButton* _tmp24_ = NULL;
	WidgetsLabelPickerLabelButton* _tmp25_;
	ObjectsItem* _tmp26_;
	ObjectsItem* _tmp27_;
	ObjectsProject* _tmp28_;
	ObjectsProject* _tmp29_;
	ObjectsSource* _tmp30_;
	ObjectsSource* _tmp31_;
	WidgetsLabelPickerLabelButton* _tmp32_;
	ObjectsItem* _tmp33_;
	ObjectsItem* _tmp34_;
	GeeArrayList* _tmp35_;
	GeeArrayList* _tmp36_;
	ObjectsItem* _tmp37_;
	ObjectsItem* _tmp38_;
	gboolean _tmp39_;
	gboolean _tmp40_;
	WidgetsReminderPickerReminderButton* _tmp41_ = NULL;
	ObjectsItem* _tmp42_;
	ObjectsItem* _tmp43_;
	gboolean _tmp44_;
	gboolean _tmp45_;
	WidgetsDeadlineButton* _tmp46_ = NULL;
	WidgetsAttachments* _tmp47_;
	WidgetsAttachments* _tmp48_;
	ObjectsItem* _tmp49_;
	ObjectsItem* _tmp50_;
	gchar* _tmp51_;
	gchar* _tmp52_;
	WidgetsAttachments* _tmp53_;
	GtkWidget* _tmp54_;
	GtkPopover* _tmp55_ = NULL;
	gchar* _tmp56_;
	gchar** _tmp57_;
	ObjectsItem* _tmp58_;
	ObjectsItem* _tmp59_;
	gboolean _tmp60_;
	gboolean _tmp61_;
	GtkMenuButton* _tmp62_ = NULL;
	ObjectsItem* _tmp63_;
	ObjectsItem* _tmp64_;
	GeeArrayList* _tmp65_;
	GeeArrayList* _tmp66_;
	gint _tmp67_;
	gint _tmp68_;
	gchar* _tmp69_;
	gchar* _tmp70_;
	gchar* _tmp71_;
	gchar* _tmp72_;
	gchar** _tmp73_;
	ObjectsItem* _tmp74_;
	ObjectsItem* _tmp75_;
	GeeArrayList* _tmp76_;
	GeeArrayList* _tmp77_;
	gint _tmp78_;
	gint _tmp79_;
	GtkLabel* _tmp80_ = NULL;
	GtkMenuButton* _tmp81_;
	GtkWidget* _tmp82_;
	GtkOverlay* _tmp83_ = NULL;
	GtkOverlay* _tmp84_;
	GtkLabel* _tmp85_;
	GtkBox* _tmp86_;
	GtkMenuButton* _tmp87_;
	GtkBox* _tmp88_;
	GtkOverlay* _tmp89_;
	GtkBox* _tmp90_;
	WidgetsLabelPickerLabelButton* _tmp91_;
	GtkBox* _tmp92_;
	WidgetsPriorityButton* _tmp93_;
	GtkBox* _tmp94_;
	WidgetsReminderPickerReminderButton* _tmp95_;
	GtkBox* _tmp96_;
	WidgetsDeadlineButton* _tmp97_;
	GtkBox* _tmp98_;
	GtkMenuButton* _tmp99_;
	WidgetsScheduleButton* _tmp100_;
	ObjectsItem* _tmp101_;
	ObjectsItem* _tmp102_;
	WidgetsPriorityButton* _tmp103_;
	ObjectsItem* _tmp104_;
	ObjectsItem* _tmp105_;
	WidgetsPinButton* _tmp106_;
	ObjectsItem* _tmp107_;
	ObjectsItem* _tmp108_;
	WidgetsReminderPickerReminderButton* _tmp109_;
	ObjectsItem* _tmp110_;
	ObjectsItem* _tmp111_;
	GeeArrayList* _tmp112_;
	GeeArrayList* _tmp113_;
	WidgetsDeadlineButton* _tmp114_;
	ObjectsItem* _tmp115_;
	ObjectsItem* _tmp116_;
	GDateTime* _tmp117_;
	GDateTime* _tmp118_;
	WidgetsDeadlineButton* _tmp119_;
	ObjectsItem* _tmp120_;
	ObjectsItem* _tmp121_;
	gboolean _tmp122_;
	gboolean _tmp123_;
	WidgetsDeadlineButton* _tmp124_;
	ObjectsItem* _tmp125_;
	ObjectsItem* _tmp126_;
	GDateTime* _tmp127_;
	GDateTime* _tmp128_;
	WidgetsDeadlineButton* _tmp129_;
	ObjectsItem* _tmp130_;
	ObjectsItem* _tmp131_;
	gboolean _tmp132_;
	gboolean _tmp133_;
	GeeHashMap* _tmp134_;
	WidgetsScheduleButton* _tmp135_;
	gulong _tmp136_;
	WidgetsScheduleButton* _tmp137_;
	GeeHashMap* _tmp138_;
	WidgetsPriorityButton* _tmp139_;
	gulong _tmp140_;
	WidgetsPriorityButton* _tmp141_;
	GeeHashMap* _tmp142_;
	WidgetsLabelPickerLabelButton* _tmp143_;
	gulong _tmp144_;
	WidgetsLabelPickerLabelButton* _tmp145_;
	GeeHashMap* _tmp146_;
	WidgetsReminderPickerReminderButton* _tmp147_;
	gulong _tmp148_;
	WidgetsReminderPickerReminderButton* _tmp149_;
	GeeHashMap* _tmp150_;
	WidgetsDeadlineButton* _tmp151_;
	gulong _tmp152_;
	WidgetsDeadlineButton* _tmp153_;
	GeeHashMap* _tmp154_;
	WidgetsDeadlineButton* _tmp155_;
	gulong _tmp156_;
	WidgetsDeadlineButton* _tmp157_;
	GeeHashMap* _tmp158_;
	WidgetsAttachments* _tmp159_;
	gulong _tmp160_;
	WidgetsAttachments* _tmp161_;
	GeeHashMap* _tmp162_;
	WidgetsAttachments* _tmp163_;
	gulong _tmp164_;
	WidgetsAttachments* _tmp165_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->schedule_button;
	if (_tmp0_ != NULL) {
		return;
	}
	_tmp1_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp2_ = _tmp1_;
	_tmp3_ = objects_item_get_completed (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = widgets_schedule_button_new (_ ("Date"));
	gtk_widget_set_sensitive ((GtkWidget*) _tmp5_, !_tmp4_);
	g_object_ref_sink (_tmp5_);
	_g_object_unref0 (self->priv->schedule_button);
	self->priv->schedule_button = _tmp5_;
	_tmp6_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp7_ = _tmp6_;
	_tmp8_ = objects_item_get_completed (_tmp7_);
	_tmp9_ = _tmp8_;
	_tmp10_ = widgets_deadline_button_new_with_detail ();
	gtk_widget_set_sensitive ((GtkWidget*) _tmp10_, !_tmp9_);
	g_object_ref_sink (_tmp10_);
	_g_object_unref0 (self->priv->deadline_button_detail);
	self->priv->deadline_button_detail = _tmp10_;
	_tmp11_ = self->priv->dates_box;
	_tmp12_ = self->priv->schedule_button;
	gtk_box_append (_tmp11_, (GtkWidget*) _tmp12_);
	_tmp13_ = self->priv->dates_box;
	_tmp14_ = self->priv->deadline_button_detail;
	gtk_box_append (_tmp13_, (GtkWidget*) _tmp14_);
	_tmp15_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp16_ = _tmp15_;
	_tmp17_ = objects_item_get_completed (_tmp16_);
	_tmp18_ = _tmp17_;
	_tmp19_ = widgets_priority_button_new ();
	gtk_widget_set_sensitive ((GtkWidget*) _tmp19_, !_tmp18_);
	g_object_ref_sink (_tmp19_);
	_g_object_unref0 (self->priv->priority_button);
	self->priv->priority_button = _tmp19_;
	_tmp20_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp21_ = _tmp20_;
	_tmp22_ = objects_item_get_completed (_tmp21_);
	_tmp23_ = _tmp22_;
	_tmp24_ = widgets_label_picker_label_button_new ();
	gtk_widget_set_sensitive ((GtkWidget*) _tmp24_, !_tmp23_);
	g_object_ref_sink (_tmp24_);
	_g_object_unref0 (self->priv->label_button);
	self->priv->label_button = _tmp24_;
	_tmp25_ = self->priv->label_button;
	_tmp26_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp27_ = _tmp26_;
	_tmp28_ = objects_item_get_project (_tmp27_);
	_tmp29_ = _tmp28_;
	_tmp30_ = objects_project_get_source (_tmp29_);
	_tmp31_ = _tmp30_;
	widgets_label_picker_label_button_set_source (_tmp25_, _tmp31_);
	_tmp32_ = self->priv->label_button;
	_tmp33_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp34_ = _tmp33_;
	_tmp35_ = objects_item_get_labels_list (_tmp34_);
	_tmp36_ = _tmp35_;
	widgets_label_picker_label_button_set_labels (_tmp32_, _tmp36_);
	_g_object_unref0 (_tmp36_);
	_tmp37_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp38_ = _tmp37_;
	_tmp39_ = objects_item_get_completed (_tmp38_);
	_tmp40_ = _tmp39_;
	_tmp41_ = widgets_reminder_picker_reminder_button_new (FALSE);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp41_, !_tmp40_);
	g_object_ref_sink (_tmp41_);
	_g_object_unref0 (self->priv->reminder_button);
	self->priv->reminder_button = _tmp41_;
	_tmp42_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp43_ = _tmp42_;
	_tmp44_ = objects_item_get_completed (_tmp43_);
	_tmp45_ = _tmp44_;
	_tmp46_ = widgets_deadline_button_new ();
	gtk_widget_set_sensitive ((GtkWidget*) _tmp46_, !_tmp45_);
	g_object_ref_sink (_tmp46_);
	_g_object_unref0 (self->priv->deadline_button);
	self->priv->deadline_button = _tmp46_;
	_tmp47_ = widgets_attachments_new (FALSE);
	g_object_ref_sink (_tmp47_);
	_g_object_unref0 (self->priv->attachments);
	self->priv->attachments = _tmp47_;
	_tmp48_ = self->priv->attachments;
	_tmp49_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp50_ = _tmp49_;
	widgets_attachments_present_item (_tmp48_, _tmp50_);
	_tmp51_ = g_strdup ("mail-attachment-symbolic");
	_tmp52_ = g_strdup (_ ("Add Attachments"));
	_tmp53_ = self->priv->attachments;
	_tmp54_ = _g_object_ref0 ((GtkWidget*) _tmp53_);
	_tmp55_ = (GtkPopover*) gtk_popover_new ();
	gtk_popover_set_has_arrow (_tmp55_, FALSE);
	gtk_popover_set_child (_tmp55_, _tmp54_);
	_g_object_unref0 (_tmp54_);
	g_object_set ((GtkWidget*) _tmp55_, "width-request", 350, NULL);
	g_object_ref_sink (_tmp55_);
	_tmp56_ = g_strdup ("flat");
	_tmp57_ = g_new0 (gchar*, 1 + 1);
	_tmp57_[0] = _tmp56_;
	_tmp58_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp59_ = _tmp58_;
	_tmp60_ = objects_item_get_completed (_tmp59_);
	_tmp61_ = _tmp60_;
	_tmp62_ = (GtkMenuButton*) gtk_menu_button_new ();
	gtk_menu_button_set_icon_name (_tmp62_, _tmp51_);
	_g_free0 (_tmp51_);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp62_, _tmp52_);
	_g_free0 (_tmp52_);
	gtk_menu_button_set_popover (_tmp62_, _tmp55_);
	_g_object_unref0 (_tmp55_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp62_, _tmp57_);
	_tmp57_ = (_vala_array_free (_tmp57_, 1, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp62_, !_tmp61_);
	g_object_ref_sink (_tmp62_);
	_g_object_unref0 (self->priv->attachments_button);
	self->priv->attachments_button = _tmp62_;
	_tmp63_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp64_ = _tmp63_;
	_tmp65_ = objects_item_get_attachments (_tmp64_);
	_tmp66_ = _tmp65_;
	_tmp67_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp66_);
	_tmp68_ = _tmp67_;
	_tmp69_ = g_strdup_printf ("%i", _tmp68_);
	_tmp70_ = _tmp69_;
	_tmp71_ = g_strdup ("badge");
	_tmp72_ = g_strdup ("caption");
	_tmp73_ = g_new0 (gchar*, 2 + 1);
	_tmp73_[0] = _tmp71_;
	_tmp73_[1] = _tmp72_;
	_tmp74_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp75_ = _tmp74_;
	_tmp76_ = objects_item_get_attachments (_tmp75_);
	_tmp77_ = _tmp76_;
	_tmp78_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp77_);
	_tmp79_ = _tmp78_;
	_tmp80_ = (GtkLabel*) gtk_label_new (_tmp70_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp80_, _tmp73_);
	_tmp73_ = (_vala_array_free (_tmp73_, 2, (GDestroyNotify) g_free), NULL);
	g_object_set ((GtkWidget*) _tmp80_, "width-request", 12, NULL);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp80_, 3);
	gtk_widget_set_halign ((GtkWidget*) _tmp80_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp80_, GTK_ALIGN_START);
	gtk_widget_set_visible ((GtkWidget*) _tmp80_, _tmp79_ > 0);
	g_object_ref_sink (_tmp80_);
	_g_object_unref0 (self->priv->attachments_count);
	self->priv->attachments_count = _tmp80_;
	_g_free0 (_tmp70_);
	_tmp81_ = self->priv->attachments_button;
	_tmp82_ = _g_object_ref0 ((GtkWidget*) _tmp81_);
	_tmp83_ = (GtkOverlay*) gtk_overlay_new ();
	gtk_overlay_set_child (_tmp83_, _tmp82_);
	_g_object_unref0 (_tmp82_);
	g_object_ref_sink (_tmp83_);
	_g_object_unref0 (self->priv->attachments_button_overlay);
	self->priv->attachments_button_overlay = _tmp83_;
	_tmp84_ = self->priv->attachments_button_overlay;
	_tmp85_ = self->priv->attachments_count;
	gtk_overlay_add_overlay (_tmp84_, (GtkWidget*) _tmp85_);
	_tmp86_ = self->priv->action_box_right;
	_tmp87_ = self->priv->menu_button;
	gtk_box_remove (_tmp86_, (GtkWidget*) _tmp87_);
	_tmp88_ = self->priv->action_box_right;
	_tmp89_ = self->priv->attachments_button_overlay;
	gtk_box_append (_tmp88_, (GtkWidget*) _tmp89_);
	_tmp90_ = self->priv->action_box_right;
	_tmp91_ = self->priv->label_button;
	gtk_box_append (_tmp90_, (GtkWidget*) _tmp91_);
	_tmp92_ = self->priv->action_box_right;
	_tmp93_ = self->priv->priority_button;
	gtk_box_append (_tmp92_, (GtkWidget*) _tmp93_);
	_tmp94_ = self->priv->action_box_right;
	_tmp95_ = self->priv->reminder_button;
	gtk_box_append (_tmp94_, (GtkWidget*) _tmp95_);
	_tmp96_ = self->priv->action_box_right;
	_tmp97_ = self->priv->deadline_button;
	gtk_box_append (_tmp96_, (GtkWidget*) _tmp97_);
	_tmp98_ = self->priv->action_box_right;
	_tmp99_ = self->priv->menu_button;
	gtk_box_append (_tmp98_, (GtkWidget*) _tmp99_);
	_tmp100_ = self->priv->schedule_button;
	_tmp101_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp102_ = _tmp101_;
	widgets_schedule_button_update_from_item (_tmp100_, _tmp102_);
	_tmp103_ = self->priv->priority_button;
	_tmp104_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp105_ = _tmp104_;
	widgets_priority_button_update_from_item (_tmp103_, _tmp105_);
	_tmp106_ = self->priv->pin_button;
	_tmp107_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp108_ = _tmp107_;
	widgets_pin_button_update_from_item (_tmp106_, _tmp108_);
	_tmp109_ = self->priv->reminder_button;
	_tmp110_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp111_ = _tmp110_;
	_tmp112_ = objects_item_get_reminders (_tmp111_);
	_tmp113_ = _tmp112_;
	widgets_reminder_picker_reminder_button_set_reminders (_tmp109_, _tmp113_);
	_tmp114_ = self->priv->deadline_button;
	_tmp115_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp116_ = _tmp115_;
	_tmp117_ = objects_item_get_deadline_datetime (_tmp116_);
	_tmp118_ = _tmp117_;
	widgets_deadline_button_set_datetime (_tmp114_, _tmp118_);
	_tmp119_ = self->priv->deadline_button;
	_tmp120_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp121_ = _tmp120_;
	_tmp122_ = objects_item_get_has_deadline (_tmp121_);
	_tmp123_ = _tmp122_;
	widgets_deadline_button_set_reveal_content (_tmp119_, !_tmp123_);
	_tmp124_ = self->priv->deadline_button_detail;
	_tmp125_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp126_ = _tmp125_;
	_tmp127_ = objects_item_get_deadline_datetime (_tmp126_);
	_tmp128_ = _tmp127_;
	widgets_deadline_button_set_datetime (_tmp124_, _tmp128_);
	_tmp129_ = self->priv->deadline_button_detail;
	_tmp130_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp131_ = _tmp130_;
	_tmp132_ = objects_item_get_has_deadline (_tmp131_);
	_tmp133_ = _tmp132_;
	widgets_deadline_button_set_reveal_content (_tmp129_, _tmp133_);
	_tmp134_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp135_ = self->priv->schedule_button;
	_tmp136_ = g_signal_connect_object (_tmp135_, "duedate-changed", (GCallback) ___lambda217__widgets_schedule_button_duedate_changed, self, 0);
	_tmp137_ = self->priv->schedule_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp134_, (gpointer) ((guintptr) _tmp136_), (GObject*) _tmp137_);
	_tmp138_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp139_ = self->priv->priority_button;
	_tmp140_ = g_signal_connect_object (_tmp139_, "changed", (GCallback) ___lambda218__widgets_priority_button_changed, self, 0);
	_tmp141_ = self->priv->priority_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp138_, (gpointer) ((guintptr) _tmp140_), (GObject*) _tmp141_);
	_tmp142_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp143_ = self->priv->label_button;
	_tmp144_ = g_signal_connect_object (_tmp143_, "labels-changed", (GCallback) ___lambda219__widgets_label_picker_label_button_labels_changed, self, 0);
	_tmp145_ = self->priv->label_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp142_, (gpointer) ((guintptr) _tmp144_), (GObject*) _tmp145_);
	_tmp146_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp147_ = self->priv->reminder_button;
	_tmp148_ = g_signal_connect_object (_tmp147_, "reminder-added", (GCallback) ___lambda220__widgets_reminder_picker_reminder_button_reminder_added, self, 0);
	_tmp149_ = self->priv->reminder_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp146_, (gpointer) ((guintptr) _tmp148_), (GObject*) _tmp149_);
	_tmp150_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp151_ = self->priv->deadline_button;
	_tmp152_ = g_signal_connect_object (_tmp151_, "date-selected", (GCallback) ___lambda221__widgets_deadline_button_date_selected, self, 0);
	_tmp153_ = self->priv->deadline_button;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp150_, (gpointer) ((guintptr) _tmp152_), (GObject*) _tmp153_);
	_tmp154_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp155_ = self->priv->deadline_button_detail;
	_tmp156_ = g_signal_connect_object (_tmp155_, "date-selected", (GCallback) ___lambda222__widgets_deadline_button_date_selected, self, 0);
	_tmp157_ = self->priv->deadline_button_detail;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp154_, (gpointer) ((guintptr) _tmp156_), (GObject*) _tmp157_);
	_tmp158_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp159_ = self->priv->attachments;
	_tmp160_ = g_signal_connect_object (_tmp159_, "update-count", (GCallback) ___lambda223__widgets_attachments_update_count, self, 0);
	_tmp161_ = self->priv->attachments;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp158_, (gpointer) ((guintptr) _tmp160_), (GObject*) _tmp161_);
	_tmp162_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp163_ = self->priv->attachments;
	_tmp164_ = g_signal_connect_object (_tmp163_, "file-selector-opened", (GCallback) ___lambda224__widgets_attachments_file_selector_opened, self, 0);
	_tmp165_ = self->priv->attachments;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp162_, (gpointer) ((guintptr) _tmp164_), (GObject*) _tmp165_);
}

static void
__lambda225_ (LayoutsItemRow* self)
{
	SpellingTextBufferAdapter* _tmp0_;
	_tmp0_ = self->priv->spelling_adapter;
	if (_tmp0_ != NULL) {
		SpellingTextBufferAdapter* _tmp1_;
		ServicesSettings* _tmp2_;
		ServicesSettings* _tmp3_;
		GSettings* _tmp4_;
		_tmp1_ = self->priv->spelling_adapter;
		_tmp2_ = services_settings_get_default ();
		_tmp3_ = _tmp2_;
		_tmp4_ = _tmp3_->settings;
		spelling_text_buffer_adapter_set_enabled (_tmp1_, g_settings_get_boolean (_tmp4_, "spell-checking-enabled"));
		_g_object_unref0 (_tmp3_);
	}
}

static void
___lambda225__g_settings_changed (GSettings* _sender,
                                  const gchar* key,
                                  gpointer self)
{
	__lambda225_ ((LayoutsItemRow*) self);
}

static void
layouts_item_row_init_spelling_adapter (LayoutsItemRow* self)
{
	SpellingTextBufferAdapter* _tmp0_;
	GtkSourceBuffer* source_buffer = NULL;
	WidgetsTextView* _tmp1_;
	GtkTextBuffer* _tmp2_;
	GtkTextBuffer* _tmp3_;
	GtkSourceBuffer* _tmp4_;
	GtkSourceBuffer* _tmp5_;
	GtkSourceBuffer* _tmp6_;
	SpellingChecker* _tmp7_;
	SpellingTextBufferAdapter* _tmp8_;
	WidgetsTextView* _tmp9_;
	SpellingTextBufferAdapter* _tmp10_;
	GMenuModel* _tmp11_;
	WidgetsTextView* _tmp12_;
	SpellingTextBufferAdapter* _tmp13_;
	SpellingTextBufferAdapter* _tmp14_;
	ServicesSettings* _tmp15_;
	ServicesSettings* _tmp16_;
	GSettings* _tmp17_;
	ServicesSettings* _tmp18_;
	ServicesSettings* _tmp19_;
	GSettings* _tmp20_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->spelling_adapter;
	if (_tmp0_ != NULL) {
		return;
	}
	_tmp1_ = self->priv->content_textview;
	_tmp2_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp3_, gtk_source_buffer_get_type ()) ? ((GtkSourceBuffer*) _tmp3_) : NULL);
	source_buffer = _tmp4_;
	_tmp5_ = source_buffer;
	if (_tmp5_ == NULL) {
		_g_object_unref0 (source_buffer);
		return;
	}
	_tmp6_ = source_buffer;
	_tmp7_ = spelling_checker_get_default ();
	_tmp8_ = spelling_text_buffer_adapter_new (_tmp6_, _tmp7_);
	_g_object_unref0 (self->priv->spelling_adapter);
	self->priv->spelling_adapter = _tmp8_;
	_tmp9_ = self->priv->content_textview;
	_tmp10_ = self->priv->spelling_adapter;
	_tmp11_ = spelling_text_buffer_adapter_get_menu_model (_tmp10_);
	gtk_text_view_set_extra_menu ((GtkTextView*) _tmp9_, _tmp11_);
	_tmp12_ = self->priv->content_textview;
	_tmp13_ = self->priv->spelling_adapter;
	gtk_widget_insert_action_group ((GtkWidget*) _tmp12_, "spelling", (GActionGroup*) _tmp13_);
	_tmp14_ = self->priv->spelling_adapter;
	_tmp15_ = services_settings_get_default ();
	_tmp16_ = _tmp15_;
	_tmp17_ = _tmp16_->settings;
	spelling_text_buffer_adapter_set_enabled (_tmp14_, g_settings_get_boolean (_tmp17_, "spell-checking-enabled"));
	_g_object_unref0 (_tmp16_);
	_tmp18_ = services_settings_get_default ();
	_tmp19_ = _tmp18_;
	_tmp20_ = _tmp19_->settings;
	g_signal_connect_object (_tmp20_, "changed::spell-checking-enabled", (GCallback) ___lambda225__g_settings_changed, self, 0);
	_g_object_unref0 (_tmp19_);
	_g_object_unref0 (source_buffer);
}

static gboolean
___lambda134_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	gboolean result;
	_tmp0_ = self->priv->markdown_revealer;
	gtk_revealer_set_child (_tmp0_, NULL);
	_g_object_unref0 (self->priv->markdown_editor);
	self->priv->markdown_editor = NULL;
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
____lambda134__gsource_func (gpointer self)
{
	gboolean result;
	result = ___lambda134_ ((LayoutsItemRow*) self);
	return result;
}

static void
layouts_item_row_destroy_markdown_editor (LayoutsItemRow* self)
{
	WidgetsMarkdownEditor* _tmp0_;
	WidgetsMarkdownEditor* _tmp1_;
	GtkRevealer* _tmp2_;
	GtkRevealer* _tmp3_;
	guint _tmp4_;
	guint _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->markdown_editor;
	if (_tmp0_ == NULL) {
		return;
	}
	_tmp1_ = self->priv->markdown_editor;
	widgets_markdown_editor_cleanup (_tmp1_);
	layouts_item_row_destroy_markdown_signals (self);
	_tmp2_ = self->priv->markdown_revealer;
	gtk_revealer_set_reveal_child (_tmp2_, FALSE);
	_tmp3_ = self->priv->markdown_revealer;
	_tmp4_ = gtk_revealer_get_transition_duration (_tmp3_);
	_tmp5_ = _tmp4_;
	if (_tmp5_ > ((guint) 0)) {
		GtkRevealer* _tmp6_;
		guint _tmp7_;
		guint _tmp8_;
		_tmp6_ = self->priv->markdown_revealer;
		_tmp7_ = gtk_revealer_get_transition_duration (_tmp6_);
		_tmp8_ = _tmp7_;
		g_timeout_add_full (G_PRIORITY_DEFAULT, _tmp8_, ____lambda134__gsource_func, g_object_ref (self), g_object_unref);
	} else {
		GtkRevealer* _tmp9_;
		_tmp9_ = self->priv->markdown_revealer;
		gtk_revealer_set_child (_tmp9_, NULL);
		_g_object_unref0 (self->priv->markdown_editor);
		self->priv->markdown_editor = NULL;
	}
}

static void
layouts_item_row_destroy_markdown_signals (LayoutsItemRow* self)
{
	GeeHashMap* _tmp25_;
	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->markdown_handlerses;
		_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_;
			gboolean _tmp9_ = FALSE;
			GeeMapEntry* _tmp10_;
			gconstpointer _tmp11_;
			gconstpointer _tmp12_;
			_tmp6_ = _entry_it;
			if (!gee_iterator_next (_tmp6_)) {
				break;
			}
			_tmp7_ = _entry_it;
			_tmp8_ = gee_iterator_get (_tmp7_);
			entry = (GeeMapEntry*) _tmp8_;
			_tmp10_ = entry;
			_tmp11_ = gee_map_entry_get_value (_tmp10_);
			_tmp12_ = _tmp11_;
			if (((GObject*) _tmp12_) != NULL) {
				GeeMapEntry* _tmp13_;
				gconstpointer _tmp14_;
				gconstpointer _tmp15_;
				GeeMapEntry* _tmp16_;
				gconstpointer _tmp17_;
				gconstpointer _tmp18_;
				_tmp13_ = entry;
				_tmp14_ = gee_map_entry_get_value (_tmp13_);
				_tmp15_ = _tmp14_;
				_tmp16_ = entry;
				_tmp17_ = gee_map_entry_get_key (_tmp16_);
				_tmp18_ = _tmp17_;
				_tmp9_ = g_signal_handler_is_connected ((GObject*) _tmp15_, (gulong) ((guintptr) _tmp18_));
			} else {
				_tmp9_ = FALSE;
			}
			if (_tmp9_) {
				GeeMapEntry* _tmp19_;
				gconstpointer _tmp20_;
				gconstpointer _tmp21_;
				GeeMapEntry* _tmp22_;
				gconstpointer _tmp23_;
				gconstpointer _tmp24_;
				_tmp19_ = entry;
				_tmp20_ = gee_map_entry_get_value (_tmp19_);
				_tmp21_ = _tmp20_;
				_tmp22_ = entry;
				_tmp23_ = gee_map_entry_get_key (_tmp22_);
				_tmp24_ = _tmp23_;
				g_signal_handler_disconnect ((GObject*) _tmp21_, (gulong) ((guintptr) _tmp24_));
			}
			_g_object_unref0 (entry);
		}
		_g_object_unref0 (_entry_it);
	}
	_tmp25_ = self->priv->markdown_handlerses;
	gee_abstract_map_clear ((GeeAbstractMap*) _tmp25_);
}

static void
layouts_item_row_real_clean_up (LayoutsItemBase* base)
{
	LayoutsItemRow * self;
	GeeHashMap* _tmp25_;
	GeeHashMap* _tmp26_;
	WidgetsSubItems* _tmp27_;
	WidgetsAttachments* _tmp28_;
	WidgetsItemLabels* _tmp30_;
	WidgetsScheduleButton* _tmp32_;
	WidgetsPriorityButton* _tmp34_;
	WidgetsLabelPickerLabelButton* _tmp36_;
	WidgetsReminderPickerReminderButton* _tmp38_;
	self = (LayoutsItemRow*) base;
	{
		GeeIterator* _entry_it = NULL;
		GeeHashMap* _tmp0_;
		GeeSet* _tmp1_;
		GeeSet* _tmp2_;
		GeeSet* _tmp3_;
		GeeIterator* _tmp4_;
		GeeIterator* _tmp5_;
		_tmp0_ = ((LayoutsItemBase*) self)->signals_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_;
			gboolean _tmp9_ = FALSE;
			GeeMapEntry* _tmp10_;
			gconstpointer _tmp11_;
			gconstpointer _tmp12_;
			_tmp6_ = _entry_it;
			if (!gee_iterator_next (_tmp6_)) {
				break;
			}
			_tmp7_ = _entry_it;
			_tmp8_ = gee_iterator_get (_tmp7_);
			entry = (GeeMapEntry*) _tmp8_;
			_tmp10_ = entry;
			_tmp11_ = gee_map_entry_get_value (_tmp10_);
			_tmp12_ = _tmp11_;
			if (((GObject*) _tmp12_) != NULL) {
				GeeMapEntry* _tmp13_;
				gconstpointer _tmp14_;
				gconstpointer _tmp15_;
				GeeMapEntry* _tmp16_;
				gconstpointer _tmp17_;
				gconstpointer _tmp18_;
				_tmp13_ = entry;
				_tmp14_ = gee_map_entry_get_value (_tmp13_);
				_tmp15_ = _tmp14_;
				_tmp16_ = entry;
				_tmp17_ = gee_map_entry_get_key (_tmp16_);
				_tmp18_ = _tmp17_;
				_tmp9_ = g_signal_handler_is_connected ((GObject*) _tmp15_, (gulong) ((guintptr) _tmp18_));
			} else {
				_tmp9_ = FALSE;
			}
			if (_tmp9_) {
				GeeMapEntry* _tmp19_;
				gconstpointer _tmp20_;
				gconstpointer _tmp21_;
				GeeMapEntry* _tmp22_;
				gconstpointer _tmp23_;
				gconstpointer _tmp24_;
				_tmp19_ = entry;
				_tmp20_ = gee_map_entry_get_value (_tmp19_);
				_tmp21_ = _tmp20_;
				_tmp22_ = entry;
				_tmp23_ = gee_map_entry_get_key (_tmp22_);
				_tmp24_ = _tmp23_;
				g_signal_handler_disconnect ((GObject*) _tmp21_, (gulong) ((guintptr) _tmp24_));
			}
			_g_object_unref0 (entry);
		}
		_g_object_unref0 (_entry_it);
	}
	_tmp25_ = ((LayoutsItemBase*) self)->signals_map;
	gee_abstract_map_clear ((GeeAbstractMap*) _tmp25_);
	_tmp26_ = self->priv->dnd_handlerses;
	gee_abstract_map_clear ((GeeAbstractMap*) _tmp26_);
	layouts_item_row_destroy_markdown_editor (self);
	layouts_item_row_destroy_markdown_signals (self);
	_tmp27_ = self->priv->subitems;
	widgets_sub_items_clean_up (_tmp27_);
	_tmp28_ = self->priv->attachments;
	if (_tmp28_ != NULL) {
		WidgetsAttachments* _tmp29_;
		_tmp29_ = self->priv->attachments;
		widgets_attachments_clean_up (_tmp29_);
	}
	_tmp30_ = self->priv->item_labels;
	if (_tmp30_ != NULL) {
		WidgetsItemLabels* _tmp31_;
		_tmp31_ = self->priv->item_labels;
		widgets_item_labels_clean_up (_tmp31_);
	}
	_tmp32_ = self->priv->schedule_button;
	if (_tmp32_ != NULL) {
		WidgetsScheduleButton* _tmp33_;
		_tmp33_ = self->priv->schedule_button;
		widgets_schedule_button_clean_up (_tmp33_);
	}
	_tmp34_ = self->priv->priority_button;
	if (_tmp34_ != NULL) {
		WidgetsPriorityButton* _tmp35_;
		_tmp35_ = self->priv->priority_button;
		widgets_priority_button_clean_up (_tmp35_);
	}
	_tmp36_ = self->priv->label_button;
	if (_tmp36_ != NULL) {
		WidgetsLabelPickerLabelButton* _tmp37_;
		_tmp37_ = self->priv->label_button;
		widgets_label_picker_label_button_clean_up (_tmp37_);
	}
	_tmp38_ = self->priv->reminder_button;
	if (_tmp38_ != NULL) {
		WidgetsReminderPickerReminderButton* _tmp39_;
		_tmp39_ = self->priv->reminder_button;
		widgets_reminder_picker_reminder_button_clean_up (_tmp39_);
	}
	_g_object_unref0 (self->priv->markdown_editor);
	self->priv->markdown_editor = NULL;
}

gboolean
layouts_item_row_get_is_project_view (LayoutsItemRow* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_is_project_view;
	return result;
}

static void
layouts_item_row_set_is_project_view (LayoutsItemRow* self,
                                      gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_is_project_view (self);
	if (old_value != value) {
		self->priv->_is_project_view = value;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY]);
	}
}

const gchar*
layouts_item_row_get_project_id (LayoutsItemRow* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_project_id;
	result = _tmp0_;
	return result;
}

void
layouts_item_row_set_project_id (LayoutsItemRow* self,
                                 const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_project_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_project_id);
		self->priv->_project_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY]);
	}
}

const gchar*
layouts_item_row_get_section_id (LayoutsItemRow* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_section_id;
	result = _tmp0_;
	return result;
}

void
layouts_item_row_set_section_id (LayoutsItemRow* self,
                                 const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_section_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_section_id);
		self->priv->_section_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY]);
	}
}

const gchar*
layouts_item_row_get_parent_id (LayoutsItemRow* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_parent_id;
	result = _tmp0_;
	return result;
}

void
layouts_item_row_set_parent_id (LayoutsItemRow* self,
                                const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_parent_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_parent_id);
		self->priv->_parent_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY]);
	}
}

gboolean
layouts_item_row_get_edit (LayoutsItemRow* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_edit;
	return result;
}

static gboolean
_layouts_item_row_edit____lambda133_ (LayoutsItemRow* self)
{
	WidgetsTextView* _tmp0_;
	gboolean result;
	_tmp0_ = self->priv->content_textview;
	if (_tmp0_ != NULL) {
		WidgetsTextView* _tmp1_;
		_tmp1_ = self->priv->content_textview;
		gtk_widget_grab_focus ((GtkWidget*) _tmp1_);
	}
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
__layouts_item_row_edit____lambda133__gsource_func (gpointer self)
{
	gboolean result;
	result = _layouts_item_row_edit____lambda133_ ((LayoutsItemRow*) self);
	return result;
}

void
layouts_item_row_set_edit (LayoutsItemRow* self,
                           gboolean value)
{
	gboolean was_edit = FALSE;
	gboolean _tmp0_ = FALSE;
	g_return_if_fail (self != NULL);
	was_edit = self->priv->_edit;
	self->priv->_edit = value;
	if (value) {
		_tmp0_ = !was_edit;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		AdwBin* _tmp1_;
		AdwBin* _tmp2_;
		GtkRevealer* _tmp3_;
		GtkRevealer* _tmp4_;
		GtkRevealer* _tmp5_;
		GtkRevealer* _tmp6_;
		GtkRevealer* _tmp7_;
		WidgetsLoadingButton* _tmp8_;
		GtkRevealer* _tmp9_;
		gboolean _tmp10_ = FALSE;
		WidgetsSubItems* _tmp11_;
		gboolean _tmp12_;
		gboolean _tmp13_;
		GtkRevealer* _tmp16_;
		GtkRevealer* _tmp17_;
		gboolean _tmp18_;
		gboolean _tmp19_;
		GtkRevealer* _tmp20_;
		GtkRevealer* _tmp21_;
		GtkRevealer* _tmp22_;
		GtkRevealer* _tmp23_;
		guint _tmp24_;
		GtkDragSource* _tmp27_;
		gtk_widget_add_css_class ((GtkWidget*) self, "no-selectable");
		gtk_widget_add_css_class ((GtkWidget*) self, "task-editing");
		_tmp1_ = self->itemrow_box;
		gtk_widget_add_css_class ((GtkWidget*) _tmp1_, "card");
		_tmp2_ = self->itemrow_box;
		gtk_widget_add_css_class ((GtkWidget*) _tmp2_, "selected");
		layouts_item_row_build_markdown_editor (self);
		_tmp3_ = self->priv->detail_revealer;
		gtk_revealer_set_reveal_child (_tmp3_, TRUE);
		_tmp4_ = self->priv->content_label_revealer;
		gtk_revealer_set_reveal_child (_tmp4_, FALSE);
		_tmp5_ = self->priv->content_entry_revealer;
		gtk_revealer_set_reveal_child (_tmp5_, TRUE);
		_tmp6_ = self->priv->project_name_label_revealer;
		gtk_revealer_set_reveal_child (_tmp6_, FALSE);
		_tmp7_ = self->priv->hide_subtask_revealer;
		gtk_revealer_set_reveal_child (_tmp7_, FALSE);
		_tmp8_ = self->priv->hide_loading_button;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp8_, "no-padding");
		_tmp9_ = self->priv->hide_loading_revealer;
		gtk_revealer_set_reveal_child (_tmp9_, TRUE);
		_tmp11_ = self->priv->subitems;
		_tmp12_ = widgets_sub_items_get_has_children (_tmp11_);
		_tmp13_ = _tmp12_;
		if (_tmp13_) {
			gboolean _tmp14_;
			gboolean _tmp15_;
			_tmp14_ = layouts_item_row_get_edit (self);
			_tmp15_ = _tmp14_;
			_tmp10_ = _tmp15_;
		} else {
			_tmp10_ = FALSE;
		}
		_tmp16_ = self->priv->show_subtasks_revealer;
		gtk_revealer_set_reveal_child (_tmp16_, _tmp10_);
		_tmp17_ = self->priv->add_subtasks_button_revealer;
		_tmp18_ = layouts_item_row_get_edit (self);
		_tmp19_ = _tmp18_;
		gtk_revealer_set_reveal_child (_tmp17_, _tmp19_);
		_tmp20_ = self->priv->due_box_revealer;
		gtk_revealer_set_reveal_child (_tmp20_, FALSE);
		_tmp21_ = self->priv->description_image_revealer;
		gtk_revealer_set_reveal_child (_tmp21_, FALSE);
		_tmp22_ = self->priv->reminder_revealer;
		gtk_revealer_set_reveal_child (_tmp22_, FALSE);
		_tmp23_ = self->priv->deadline_revealer;
		gtk_revealer_set_reveal_child (_tmp23_, FALSE);
		_tmp24_ = self->priv->_complete_timeout;
		if (_tmp24_ != ((guint) 0)) {
			AdwBin* _tmp25_;
			GtkLabel* _tmp26_;
			_tmp25_ = self->itemrow_box;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp25_, "complete");
			_tmp26_ = self->priv->content_label;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp26_, "dimmed");
		}
		_tmp27_ = self->priv->drag_source;
		if (_tmp27_ != NULL) {
			AdwBin* _tmp28_;
			GtkDragSource* _tmp29_;
			_tmp28_ = self->itemrow_box;
			_tmp29_ = self->priv->drag_source;
			gtk_widget_remove_controller ((GtkWidget*) _tmp28_, (GtkEventController*) _tmp29_);
			_g_object_unref0 (self->priv->drag_source);
			self->priv->drag_source = NULL;
		}
		g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, __layouts_item_row_edit____lambda133__gsource_func, g_object_ref (self), g_object_unref);
	} else {
		if (!value) {
			AdwBin* _tmp30_;
			AdwBin* _tmp31_;
			GtkRevealer* _tmp32_;
			GtkRevealer* _tmp33_;
			GtkRevealer* _tmp34_;
			GtkRevealer* _tmp35_;
			gboolean _tmp36_;
			GtkRevealer* _tmp37_;
			WidgetsSubItems* _tmp38_;
			gboolean _tmp39_;
			gboolean _tmp40_;
			WidgetsLoadingButton* _tmp41_;
			GtkRevealer* _tmp42_;
			GtkRevealer* _tmp43_;
			GtkRevealer* _tmp44_;
			gboolean _tmp45_;
			gtk_widget_remove_css_class ((GtkWidget*) self, "no-selectable");
			gtk_widget_remove_css_class ((GtkWidget*) self, "task-editing");
			_tmp30_ = self->itemrow_box;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp30_, "card");
			_tmp31_ = self->itemrow_box;
			gtk_widget_remove_css_class ((GtkWidget*) _tmp31_, "selected");
			layouts_item_row_destroy_markdown_editor (self);
			_tmp32_ = self->priv->detail_revealer;
			gtk_revealer_set_reveal_child (_tmp32_, FALSE);
			_tmp33_ = self->priv->content_label_revealer;
			gtk_revealer_set_reveal_child (_tmp33_, TRUE);
			_tmp34_ = self->priv->content_entry_revealer;
			gtk_revealer_set_reveal_child (_tmp34_, FALSE);
			_tmp35_ = self->priv->project_name_label_revealer;
			_tmp36_ = self->priv->_is_project_view;
			gtk_revealer_set_reveal_child (_tmp35_, !_tmp36_);
			_tmp37_ = self->priv->hide_subtask_revealer;
			_tmp38_ = self->priv->subitems;
			_tmp39_ = widgets_sub_items_get_has_children (_tmp38_);
			_tmp40_ = _tmp39_;
			gtk_revealer_set_reveal_child (_tmp37_, _tmp40_);
			_tmp41_ = self->priv->hide_loading_button;
			gtk_widget_add_css_class ((GtkWidget*) _tmp41_, "no-padding");
			_tmp42_ = self->priv->hide_loading_revealer;
			gtk_revealer_set_reveal_child (_tmp42_, FALSE);
			_tmp43_ = self->priv->show_subtasks_revealer;
			gtk_revealer_set_reveal_child (_tmp43_, FALSE);
			_tmp44_ = self->priv->add_subtasks_button_revealer;
			gtk_revealer_set_reveal_child (_tmp44_, FALSE);
			layouts_item_row_check_due (self);
			layouts_item_row_check_description (self);
			layouts_item_row_check_reminders (self);
			layouts_item_row_check_deadline (self);
			_tmp45_ = self->priv->_drag_enabled;
			if (_tmp45_) {
				layouts_item_row_build_drag_and_drop (self);
			}
		}
	}
	g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_EDIT_PROPERTY]);
}

gboolean
layouts_item_row_get_reveal (LayoutsItemRow* self)
{
	gboolean result;
	GtkRevealer* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	g_return_val_if_fail (self != NULL, FALSE);
	_tmp0_ = self->priv->main_revealer;
	_tmp1_ = gtk_revealer_get_reveal_child (_tmp0_);
	_tmp2_ = _tmp1_;
	result = _tmp2_;
	return result;
}

void
layouts_item_row_set_reveal (LayoutsItemRow* self,
                             gboolean value)
{
	GtkRevealer* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, TRUE);
	g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_REVEAL_PROPERTY]);
}

gboolean
layouts_item_row_get_is_loading (LayoutsItemRow* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_is_loading;
	return result;
}

void
layouts_item_row_set_is_loading (LayoutsItemRow* self,
                                 gboolean value)
{
	g_return_if_fail (self != NULL);
	self->priv->_is_loading = value;
	if (self->priv->_is_loading) {
		GtkRevealer* _tmp0_;
		WidgetsLoadingButton* _tmp1_;
		_tmp0_ = self->priv->hide_loading_revealer;
		gtk_revealer_set_reveal_child (_tmp0_, self->priv->_is_loading);
		_tmp1_ = self->priv->hide_loading_button;
		widgets_loading_button_set_is_loading (_tmp1_, self->priv->_is_loading);
	} else {
		WidgetsLoadingButton* _tmp2_;
		GtkRevealer* _tmp3_;
		gboolean _tmp4_;
		gboolean _tmp5_;
		_tmp2_ = self->priv->hide_loading_button;
		widgets_loading_button_set_is_loading (_tmp2_, self->priv->_is_loading);
		_tmp3_ = self->priv->hide_loading_revealer;
		_tmp4_ = layouts_item_row_get_edit (self);
		_tmp5_ = _tmp4_;
		gtk_revealer_set_reveal_child (_tmp3_, _tmp5_);
	}
	g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY]);
}

guint
layouts_item_row_get_destroy_timeout (LayoutsItemRow* self)
{
	guint result;
	g_return_val_if_fail (self != NULL, 0U);
	result = self->priv->_destroy_timeout;
	return result;
}

void
layouts_item_row_set_destroy_timeout (LayoutsItemRow* self,
                                      guint value)
{
	guint old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_destroy_timeout (self);
	if (old_value != value) {
		self->priv->_destroy_timeout = value;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY]);
	}
}

guint
layouts_item_row_get_complete_timeout (LayoutsItemRow* self)
{
	guint result;
	g_return_val_if_fail (self != NULL, 0U);
	result = self->priv->_complete_timeout;
	return result;
}

void
layouts_item_row_set_complete_timeout (LayoutsItemRow* self,
                                       guint value)
{
	guint old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_complete_timeout (self);
	if (old_value != value) {
		self->priv->_complete_timeout = value;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY]);
	}
}

gboolean
layouts_item_row_get_drag_enabled (LayoutsItemRow* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_drag_enabled;
	return result;
}

void
layouts_item_row_set_drag_enabled (LayoutsItemRow* self,
                                   gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = layouts_item_row_get_drag_enabled (self);
	if (old_value != value) {
		self->priv->_drag_enabled = value;
		g_object_notify_by_pspec ((GObject *) self, layouts_item_row_properties[LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY]);
	}
}

static void
_layouts_item_row___lambda226_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	_tmp0_ = self->priv->detail_revealer;
	_tmp1_ = gtk_revealer_get_reveal_child (_tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		layouts_item_row_build_detail_widgets (self);
		layouts_item_row_init_spelling_adapter (self);
	}
}

static void
__layouts_item_row___lambda226__g_object_notify (GObject* _sender,
                                                 GParamSpec* pspec,
                                                 gpointer self)
{
	_layouts_item_row___lambda226_ ((LayoutsItemRow*) self);
}

static gboolean
_layouts_item_row___lambda227_ (LayoutsItemRow* self)
{
	GtkRevealer* _tmp0_;
	gboolean result;
	_tmp0_ = self->priv->main_revealer;
	gtk_revealer_set_reveal_child (_tmp0_, TRUE);
	result = G_SOURCE_REMOVE;
	return result;
}

static gboolean
__layouts_item_row___lambda227__gsource_func (gpointer self)
{
	gboolean result;
	result = _layouts_item_row___lambda227_ ((LayoutsItemRow*) self);
	return result;
}

static GObject *
layouts_item_row_constructor (GType type,
                              guint n_construct_properties,
                              GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	LayoutsItemRow * self;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	ObjectsItem* _tmp4_;
	ObjectsItem* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	ObjectsItem* _tmp8_;
	ObjectsItem* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	gchar** _tmp14_;
	GtkGrid* _tmp15_ = NULL;
	GtkGrid* _tmp16_;
	GtkWidget* _tmp17_;
	GtkRevealer* _tmp18_ = NULL;
	ObjectsItem* _tmp19_;
	ObjectsItem* _tmp20_;
	ObjectsProject* _tmp21_;
	ObjectsProject* _tmp22_;
	gboolean _tmp23_;
	gboolean _tmp24_;
	GtkCheckButton* _tmp25_ = NULL;
	GtkCheckButton* _tmp26_;
	GtkCheckButton* _tmp27_;
	GtkWidget* _tmp28_;
	GtkRevealer* _tmp29_ = NULL;
	gchar* _tmp30_;
	gchar** _tmp31_;
	GtkLabel* _tmp32_ = NULL;
	GtkImage* repeat_image = NULL;
	GtkImage* _tmp33_ = NULL;
	GtkImage* _tmp34_;
	GtkWidget* _tmp35_;
	GtkRevealer* _tmp36_ = NULL;
	GtkBox* _tmp37_ = NULL;
	GtkBox* _tmp38_;
	GtkLabel* _tmp39_;
	GtkBox* _tmp40_;
	GtkRevealer* _tmp41_;
	GtkBox* _tmp42_;
	GtkWidget* _tmp43_;
	GtkRevealer* _tmp44_ = NULL;
	GtkLabel* _tmp45_ = NULL;
	GtkLabel* _tmp46_;
	gchar* _tmp47_;
	gchar** _tmp48_;
	GtkImage* _tmp49_ = NULL;
	GtkRevealer* _tmp50_ = NULL;
	GtkImage* reminder_icon = NULL;
	GtkImage* _tmp51_ = NULL;
	ObjectsItem* _tmp52_;
	ObjectsItem* _tmp53_;
	GeeArrayList* _tmp54_;
	GeeArrayList* _tmp55_;
	gint _tmp56_;
	gint _tmp57_;
	gchar* _tmp58_;
	gchar* _tmp59_;
	GtkLabel* _tmp60_;
	GtkLabel* _tmp61_;
	GtkBox* reminder_box = NULL;
	gchar* _tmp62_;
	gchar** _tmp63_;
	GtkBox* _tmp64_ = NULL;
	GtkBox* _tmp65_;
	GtkImage* _tmp66_;
	GtkBox* _tmp67_;
	GtkLabel* _tmp68_;
	GtkBox* _tmp69_;
	GtkWidget* _tmp70_;
	GtkRevealer* _tmp71_ = NULL;
	ObjectsItem* _tmp72_;
	ObjectsItem* _tmp73_;
	WidgetsLabelsSummary* _tmp74_ = NULL;
	GtkImage* deadline_icon = NULL;
	GtkImage* _tmp75_ = NULL;
	GtkLabel* _tmp76_;
	GtkLabel* _tmp77_;
	gchar* _tmp78_;
	gchar** _tmp79_;
	GtkBox* _tmp80_ = NULL;
	GtkBox* _tmp81_;
	GtkImage* _tmp82_;
	GtkBox* _tmp83_;
	GtkLabel* _tmp84_;
	GtkBox* _tmp85_;
	GtkWidget* _tmp86_;
	GtkRevealer* _tmp87_ = NULL;
	gchar* _tmp88_;
	gchar* _tmp89_;
	gchar** _tmp90_;
	GtkLabel* _tmp91_ = NULL;
	GtkLabel* _tmp92_;
	GtkWidget* _tmp93_;
	gboolean _tmp94_;
	GtkRevealer* _tmp95_ = NULL;
	GtkBox* right_box = NULL;
	GtkBox* _tmp96_ = NULL;
	GtkBox* _tmp97_;
	GtkRevealer* _tmp98_;
	GtkBox* _tmp99_;
	GtkRevealer* _tmp100_;
	GtkBox* content_label_box = NULL;
	GtkBox* _tmp101_;
	GtkBox* _tmp102_;
	GtkRevealer* _tmp103_;
	GtkBox* _tmp104_;
	GtkLabel* _tmp105_;
	GtkBox* _tmp106_;
	GtkRevealer* _tmp107_;
	GtkBox* _tmp108_;
	GtkRevealer* _tmp109_;
	GtkBox* _tmp110_;
	WidgetsLabelsSummary* _tmp111_;
	GtkBox* _tmp112_;
	GtkBox* _tmp113_;
	GtkBox* _tmp114_;
	GtkWidget* _tmp115_;
	GtkRevealer* _tmp116_ = NULL;
	gchar* _tmp117_;
	WidgetsTextView* _tmp118_ = NULL;
	WidgetsTextView* _tmp119_;
	WidgetsTextView* _tmp120_;
	GtkSourceBuffer* source_buffer = NULL;
	GtkSourceBuffer* _tmp121_;
	WidgetsTextView* _tmp122_;
	GtkSourceBuffer* _tmp123_;
	WidgetsTextView* _tmp124_;
	GtkWidget* _tmp125_;
	GtkRevealer* _tmp126_ = NULL;
	ObjectsItem* _tmp127_;
	ObjectsItem* _tmp128_;
	gboolean _tmp129_;
	gboolean _tmp130_;
	WidgetsPinButton* _tmp131_ = NULL;
	gchar* _tmp132_;
	gchar* _tmp133_;
	gchar** _tmp134_;
	WidgetsLoadingButton* _tmp135_ = NULL;
	GtkBox* top_right_box = NULL;
	GtkBox* _tmp136_;
	GtkBox* _tmp137_;
	WidgetsPinButton* _tmp138_;
	GtkBox* _tmp139_;
	WidgetsLoadingButton* _tmp140_;
	GtkBox* _tmp141_;
	GtkWidget* _tmp142_;
	GtkRevealer* _tmp143_ = NULL;
	gchar* _tmp144_;
	gchar** _tmp145_;
	GtkCheckButton* _tmp146_ = NULL;
	GtkCheckButton* _tmp147_;
	GtkWidget* _tmp148_;
	GtkRevealer* _tmp149_ = NULL;
	GtkBox* _tmp150_ = NULL;
	GtkBox* _tmp151_;
	GtkRevealer* _tmp152_;
	GtkBox* _tmp153_;
	GtkRevealer* _tmp154_;
	GtkBox* content_main_box = NULL;
	GtkBox* _tmp155_;
	GtkBox* _tmp156_;
	GtkRevealer* _tmp157_;
	GtkBox* _tmp158_;
	GtkBox* _tmp159_;
	GtkBox* _tmp160_;
	GtkRevealer* _tmp161_;
	GtkRevealer* _tmp162_;
	ObjectsItem* _tmp163_;
	ObjectsItem* _tmp164_;
	gboolean _tmp165_;
	gboolean _tmp166_;
	ObjectsItem* _tmp167_;
	ObjectsItem* _tmp168_;
	ObjectsItem* _tmp169_;
	WidgetsItemLabels* _tmp170_ = NULL;
	GtkBox* _tmp171_;
	gboolean _tmp172_ = FALSE;
	ServicesEventBus* _tmp173_;
	ServicesEventBus* _tmp174_;
	gboolean _tmp175_;
	gboolean _tmp176_;
	gboolean _tmp177_;
	GtkAlign _tmp178_ = 0;
	ServicesEventBus* _tmp179_;
	ServicesEventBus* _tmp180_;
	gboolean _tmp181_;
	gboolean _tmp182_;
	gboolean _tmp183_;
	gchar* _tmp184_;
	GtkPopover* _tmp185_;
	gchar* _tmp186_;
	gchar** _tmp187_;
	GtkMenuButton* _tmp188_ = NULL;
	ObjectsItem* _tmp189_;
	ObjectsItem* _tmp190_;
	ObjectsProject* _tmp191_;
	ObjectsProject* _tmp192_;
	gboolean _tmp193_;
	gboolean _tmp194_;
	GtkBox* _tmp195_ = NULL;
	ServicesEventBus* _tmp196_;
	ServicesEventBus* _tmp197_;
	gboolean _tmp198_;
	gboolean _tmp199_;
	gboolean _tmp200_;
	gboolean _tmp202_ = FALSE;
	ServicesEventBus* _tmp203_;
	ServicesEventBus* _tmp204_;
	gboolean _tmp205_;
	gboolean _tmp206_;
	gboolean _tmp207_;
	GtkAlign _tmp208_ = 0;
	ServicesEventBus* _tmp209_;
	ServicesEventBus* _tmp210_;
	gboolean _tmp211_;
	gboolean _tmp212_;
	gboolean _tmp213_;
	GtkBox* _tmp214_ = NULL;
	GtkBox* _tmp215_;
	GtkMenuButton* _tmp216_;
	GtkBox* _tmp217_;
	GtkBox* _tmp218_;
	GtkBox* _tmp219_;
	GtkBox* _tmp220_;
	GtkBox* details_grid = NULL;
	GtkBox* _tmp221_;
	GtkBox* _tmp222_;
	GtkRevealer* _tmp223_;
	GtkBox* _tmp224_;
	WidgetsItemLabels* _tmp225_;
	GtkBox* _tmp226_;
	GtkBox* _tmp227_;
	GtkBox* _tmp228_;
	GtkWidget* _tmp229_;
	GtkRevealer* _tmp230_ = NULL;
	GeeHashMap* _tmp231_;
	GtkRevealer* _tmp232_;
	gulong _tmp233_;
	GtkRevealer* _tmp234_;
	GtkBox* handle_grid = NULL;
	gchar* _tmp235_;
	gchar* _tmp236_;
	gchar** _tmp237_;
	GtkBox* _tmp238_ = NULL;
	GtkBox* _tmp239_;
	GtkBox* _tmp240_;
	GtkBox* _tmp241_;
	GtkRevealer* _tmp242_;
	GtkBox* _itemrow_box = NULL;
	GtkBox* _tmp243_ = NULL;
	GtkBox* _tmp244_;
	GtkBox* _tmp245_;
	GtkBox* _tmp246_;
	GtkRevealer* _tmp247_;
	GtkBox* _tmp248_;
	GtkWidget* _tmp249_;
	AdwBin* _tmp250_ = NULL;
	AdwBin* _tmp251_;
	AdwBin* _tmp252_;
	GtkBox* add_subtasks_box = NULL;
	GtkBox* _tmp253_;
	GtkBox* _tmp254_;
	GtkImage* _tmp255_ = NULL;
	GtkImage* _tmp256_;
	GtkBox* _tmp257_;
	GtkLabel* _tmp258_;
	GtkLabel* _tmp259_;
	GtkBox* _tmp260_;
	GtkWidget* _tmp261_;
	gchar* _tmp262_;
	gchar* _tmp263_;
	gchar* _tmp264_;
	gchar** _tmp265_;
	ObjectsItem* _tmp266_;
	ObjectsItem* _tmp267_;
	gboolean _tmp268_;
	gboolean _tmp269_;
	GtkButton* _tmp270_ = NULL;
	GtkButton* _tmp271_;
	GtkWidget* _tmp272_;
	gboolean _tmp273_;
	gboolean _tmp274_;
	GtkRevealer* _tmp275_ = NULL;
	GtkLabel* _tmp276_;
	GtkBox* show_subtasks_box = NULL;
	GtkBox* _tmp277_;
	GtkBox* _tmp278_;
	GtkImage* _tmp279_ = NULL;
	GtkImage* _tmp280_;
	GtkBox* _tmp281_;
	GtkLabel* _tmp282_;
	gchar* _tmp283_;
	gchar* _tmp284_;
	gchar* _tmp285_;
	gchar** _tmp286_;
	GtkBox* _tmp287_;
	GtkWidget* _tmp288_;
	GtkButton* _tmp289_ = NULL;
	gboolean _tmp290_;
	WidgetsSubItems* _tmp291_;
	gboolean _tmp292_ = FALSE;
	WidgetsSubItems* _tmp293_;
	gboolean _tmp294_;
	gboolean _tmp295_;
	GtkButton* _tmp298_;
	GtkWidget* _tmp299_;
	GtkRevealer* _tmp300_ = NULL;
	WidgetsSubItems* _tmp301_;
	ObjectsItem* _tmp302_;
	ObjectsItem* _tmp303_;
	gboolean _tmp304_ = FALSE;
	ObjectsItem* _tmp305_;
	ObjectsItem* _tmp306_;
	GeeArrayList* _tmp307_;
	GeeArrayList* _tmp308_;
	gint _tmp309_;
	gint _tmp310_;
	WidgetsSubItems* _tmp315_;
	GtkBox* box = NULL;
	GtkBox* _tmp316_;
	GtkBox* _tmp317_;
	AdwBin* _tmp318_;
	GtkBox* _tmp319_;
	GtkRevealer* _tmp320_;
	GtkBox* _tmp321_;
	GtkRevealer* _tmp322_;
	GtkBox* _tmp323_;
	WidgetsSubItems* _tmp324_;
	gchar* _tmp325_;
	gchar* _tmp326_;
	gchar* _tmp327_;
	gchar* _tmp328_;
	gchar** _tmp329_;
	GtkImage* _tmp330_ = NULL;
	GtkButton* _tmp331_ = NULL;
	ObjectsItem* _tmp332_;
	ObjectsItem* _tmp333_;
	gboolean _tmp334_;
	gboolean _tmp335_;
	WidgetsSubItems* _tmp338_;
	gboolean _tmp339_;
	gboolean _tmp340_;
	GtkButton* _tmp341_;
	GtkWidget* _tmp342_;
	GtkRevealer* _tmp343_ = NULL;
	GtkBox* h_box = NULL;
	GtkBox* _tmp344_;
	GtkBox* _tmp345_;
	GtkRevealer* _tmp346_;
	GtkBox* _tmp347_;
	GtkBox* _tmp348_;
	GtkBox* main_box = NULL;
	GtkBox* _tmp349_;
	GtkBox* _tmp350_;
	GtkRevealer* _tmp351_;
	GtkBox* _tmp352_;
	GtkBox* _tmp353_;
	GtkBox* _tmp354_;
	GtkWidget* _tmp355_;
	GtkRevealer* _tmp356_ = NULL;
	GtkRevealer* _tmp357_;
	gboolean _tmp358_ = FALSE;
	ObjectsItem* _tmp359_;
	ObjectsItem* _tmp360_;
	gboolean _tmp361_;
	gboolean _tmp362_;
	GtkRevealer* _tmp369_;
	guint _tmp370_;
	guint _tmp371_;
	parent_class = G_OBJECT_CLASS (layouts_item_row_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRow);
	gtk_widget_add_css_class ((GtkWidget*) self, "row");
	gtk_widget_add_css_class ((GtkWidget*) self, "no-padding");
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_project_id (_tmp1_);
	_tmp3_ = _tmp2_;
	layouts_item_row_set_project_id (self, _tmp3_);
	_tmp4_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp5_ = _tmp4_;
	_tmp6_ = objects_item_get_section_id (_tmp5_);
	_tmp7_ = _tmp6_;
	layouts_item_row_set_section_id (self, _tmp7_);
	_tmp8_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp9_ = _tmp8_;
	_tmp10_ = objects_item_get_parent_id (_tmp9_);
	_tmp11_ = _tmp10_;
	layouts_item_row_set_parent_id (self, _tmp11_);
	_tmp12_ = g_strdup ("drop-area");
	_tmp13_ = g_strdup ("drop-target");
	_tmp14_ = g_new0 (gchar*, 2 + 1);
	_tmp14_[0] = _tmp12_;
	_tmp14_[1] = _tmp13_;
	_tmp15_ = (GtkGrid*) gtk_grid_new ();
	g_object_set ((GtkWidget*) _tmp15_, "height-request", 32, NULL);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp15_, _tmp14_);
	_tmp14_ = (_vala_array_free (_tmp14_, 2, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp15_, 3);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp15_, 27);
	g_object_ref_sink (_tmp15_);
	_g_object_unref0 (self->priv->motion_top_grid);
	self->priv->motion_top_grid = _tmp15_;
	_tmp16_ = self->priv->motion_top_grid;
	_tmp17_ = _g_object_ref0 ((GtkWidget*) _tmp16_);
	_tmp18_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp18_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);
	gtk_revealer_set_child (_tmp18_, _tmp17_);
	_g_object_unref0 (_tmp17_);
	g_object_ref_sink (_tmp18_);
	_g_object_unref0 (self->priv->motion_top_revealer);
	self->priv->motion_top_revealer = _tmp18_;
	_tmp19_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp20_ = _tmp19_;
	_tmp21_ = objects_item_get_project (_tmp20_);
	_tmp22_ = _tmp21_;
	_tmp23_ = objects_project_get_is_deck (_tmp22_);
	_tmp24_ = _tmp23_;
	_tmp25_ = (GtkCheckButton*) gtk_check_button_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp25_, GTK_ALIGN_CENTER);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp25_, !_tmp24_);
	g_object_ref_sink (_tmp25_);
	_g_object_unref0 (self->priv->checked_button);
	self->priv->checked_button = _tmp25_;
	_tmp26_ = self->priv->checked_button;
	gtk_widget_add_css_class ((GtkWidget*) _tmp26_, "priority-color");
	_tmp27_ = self->priv->checked_button;
	_tmp28_ = _g_object_ref0 ((GtkWidget*) _tmp27_);
	_tmp29_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_child (_tmp29_, _tmp28_);
	_g_object_unref0 (_tmp28_);
	gtk_revealer_set_transition_type (_tmp29_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT);
	gtk_revealer_set_reveal_child (_tmp29_, TRUE);
	g_object_ref_sink (_tmp29_);
	_g_object_unref0 (self->priv->checked_button_revealer);
	self->priv->checked_button_revealer = _tmp29_;
	_tmp30_ = g_strdup ("caption");
	_tmp31_ = g_new0 (gchar*, 1 + 1);
	_tmp31_[0] = _tmp30_;
	_tmp32_ = (GtkLabel*) gtk_label_new (NULL);
	gtk_widget_set_valign ((GtkWidget*) _tmp32_, GTK_ALIGN_CENTER);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp32_, _tmp31_);
	_tmp31_ = (_vala_array_free (_tmp31_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp32_);
	_g_object_unref0 (self->priv->due_label);
	self->priv->due_label = _tmp32_;
	_tmp33_ = (GtkImage*) gtk_image_new_from_icon_name ("playlist-repeat-symbolic");
	gtk_image_set_pixel_size (_tmp33_, 12);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp33_, 3);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp33_, 6);
	g_object_ref_sink (_tmp33_);
	repeat_image = _tmp33_;
	_tmp34_ = repeat_image;
	_tmp35_ = _g_object_ref0 ((GtkWidget*) _tmp34_);
	_tmp36_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp36_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp36_, _tmp35_);
	_g_object_unref0 (_tmp35_);
	g_object_ref_sink (_tmp36_);
	_g_object_unref0 (self->priv->repeat_revealer);
	self->priv->repeat_revealer = _tmp36_;
	_tmp37_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_widget_set_valign ((GtkWidget*) _tmp37_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp37_, 6);
	g_object_ref_sink (_tmp37_);
	_g_object_unref0 (self->priv->due_box);
	self->priv->due_box = _tmp37_;
	_tmp38_ = self->priv->due_box;
	_tmp39_ = self->priv->due_label;
	gtk_box_append (_tmp38_, (GtkWidget*) _tmp39_);
	_tmp40_ = self->priv->due_box;
	_tmp41_ = self->priv->repeat_revealer;
	gtk_box_append (_tmp40_, (GtkWidget*) _tmp41_);
	_tmp42_ = self->priv->due_box;
	_tmp43_ = _g_object_ref0 ((GtkWidget*) _tmp42_);
	_tmp44_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp44_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp44_, _tmp43_);
	_g_object_unref0 (_tmp43_);
	g_object_ref_sink (_tmp44_);
	_g_object_unref0 (self->priv->due_box_revealer);
	self->priv->due_box_revealer = _tmp44_;
	_tmp45_ = (GtkLabel*) gtk_label_new (NULL);
	gtk_label_set_xalign (_tmp45_, (gfloat) 0);
	gtk_label_set_yalign (_tmp45_, 0.8f);
	gtk_label_set_wrap (_tmp45_, FALSE);
	gtk_label_set_ellipsize (_tmp45_, PANGO_ELLIPSIZE_END);
	gtk_label_set_use_markup (_tmp45_, TRUE);
	g_object_ref_sink (_tmp45_);
	_g_object_unref0 (self->priv->content_label);
	self->priv->content_label = _tmp45_;
	_tmp46_ = self->priv->content_label;
	gtk_accessible_update_property ((GtkAccessible*) _tmp46_, GTK_ACCESSIBLE_PROPERTY_LABEL, "", -1, -1);
	_tmp47_ = g_strdup ("dimmed");
	_tmp48_ = g_new0 (gchar*, 1 + 1);
	_tmp48_[0] = _tmp47_;
	_tmp49_ = (GtkImage*) gtk_image_new_from_icon_name ("paper-symbolic");
	gtk_widget_set_valign ((GtkWidget*) _tmp49_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp49_, 6);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp49_, _tmp48_);
	_tmp48_ = (_vala_array_free (_tmp48_, 1, (GDestroyNotify) g_free), NULL);
	gtk_image_set_pixel_size (_tmp49_, 12);
	g_object_ref_sink (_tmp49_);
	_tmp50_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp50_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp50_, (GtkWidget*) _tmp49_);
	_g_object_unref0 (_tmp49_);
	g_object_ref_sink (_tmp50_);
	_g_object_unref0 (self->priv->description_image_revealer);
	self->priv->description_image_revealer = _tmp50_;
	_tmp51_ = (GtkImage*) gtk_image_new_from_icon_name ("alarm-symbolic");
	gtk_image_set_pixel_size (_tmp51_, 12);
	g_object_ref_sink (_tmp51_);
	reminder_icon = _tmp51_;
	_tmp52_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp53_ = _tmp52_;
	_tmp54_ = objects_item_get_reminders (_tmp53_);
	_tmp55_ = _tmp54_;
	_tmp56_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp55_);
	_tmp57_ = _tmp56_;
	_tmp58_ = g_strdup_printf ("%i", _tmp57_);
	_tmp59_ = _tmp58_;
	_tmp60_ = (GtkLabel*) gtk_label_new (_tmp59_);
	g_object_ref_sink (_tmp60_);
	_g_object_unref0 (self->priv->reminder_count);
	self->priv->reminder_count = _tmp60_;
	_g_free0 (_tmp59_);
	_tmp61_ = self->priv->reminder_count;
	gtk_widget_add_css_class ((GtkWidget*) _tmp61_, "caption");
	_tmp62_ = g_strdup ("dimmed");
	_tmp63_ = g_new0 (gchar*, 1 + 1);
	_tmp63_[0] = _tmp62_;
	_tmp64_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3);
	gtk_widget_set_valign ((GtkWidget*) _tmp64_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp64_, 6);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp64_, 1);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp64_, _tmp63_);
	_tmp63_ = (_vala_array_free (_tmp63_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp64_);
	reminder_box = _tmp64_;
	_tmp65_ = reminder_box;
	_tmp66_ = reminder_icon;
	gtk_box_append (_tmp65_, (GtkWidget*) _tmp66_);
	_tmp67_ = reminder_box;
	_tmp68_ = self->priv->reminder_count;
	gtk_box_append (_tmp67_, (GtkWidget*) _tmp68_);
	_tmp69_ = reminder_box;
	_tmp70_ = _g_object_ref0 ((GtkWidget*) _tmp69_);
	_tmp71_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp71_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp71_, _tmp70_);
	_g_object_unref0 (_tmp70_);
	g_object_ref_sink (_tmp71_);
	_g_object_unref0 (self->priv->reminder_revealer);
	self->priv->reminder_revealer = _tmp71_;
	_tmp72_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp73_ = _tmp72_;
	_tmp74_ = widgets_labels_summary_new (_tmp73_, 2, FALSE);
	widgets_labels_summary_set_reveal_child (_tmp74_, TRUE);
	widgets_labels_summary_set_start_margin (_tmp74_, 6);
	g_object_ref_sink (_tmp74_);
	_g_object_unref0 (self->priv->labels_summary);
	self->priv->labels_summary = _tmp74_;
	_tmp75_ = (GtkImage*) gtk_image_new_from_icon_name ("delay-long-small-symbolic");
	gtk_image_set_pixel_size (_tmp75_, 12);
	g_object_ref_sink (_tmp75_);
	deadline_icon = _tmp75_;
	_tmp76_ = (GtkLabel*) gtk_label_new (NULL);
	g_object_ref_sink (_tmp76_);
	_g_object_unref0 (self->priv->deadline_label);
	self->priv->deadline_label = _tmp76_;
	_tmp77_ = self->priv->deadline_label;
	gtk_widget_add_css_class ((GtkWidget*) _tmp77_, "caption");
	_tmp78_ = g_strdup ("dimmed");
	_tmp79_ = g_new0 (gchar*, 1 + 1);
	_tmp79_[0] = _tmp78_;
	_tmp80_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3);
	gtk_widget_set_valign ((GtkWidget*) _tmp80_, GTK_ALIGN_CENTER);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp80_, _tmp79_);
	_tmp79_ = (_vala_array_free (_tmp79_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp80_);
	_g_object_unref0 (self->priv->deadline_box);
	self->priv->deadline_box = _tmp80_;
	_tmp81_ = self->priv->deadline_box;
	_tmp82_ = deadline_icon;
	gtk_box_append (_tmp81_, (GtkWidget*) _tmp82_);
	_tmp83_ = self->priv->deadline_box;
	_tmp84_ = self->priv->deadline_label;
	gtk_box_append (_tmp83_, (GtkWidget*) _tmp84_);
	_tmp85_ = self->priv->deadline_box;
	_tmp86_ = _g_object_ref0 ((GtkWidget*) _tmp85_);
	_tmp87_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp87_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp87_, _tmp86_);
	_g_object_unref0 (_tmp86_);
	g_object_ref_sink (_tmp87_);
	_g_object_unref0 (self->priv->deadline_revealer);
	self->priv->deadline_revealer = _tmp87_;
	_tmp88_ = g_strdup ("caption");
	_tmp89_ = g_strdup ("dimmed");
	_tmp90_ = g_new0 (gchar*, 2 + 1);
	_tmp90_[0] = _tmp88_;
	_tmp90_[1] = _tmp89_;
	_tmp91_ = (GtkLabel*) gtk_label_new (NULL);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp91_, _tmp90_);
	_tmp90_ = (_vala_array_free (_tmp90_, 2, (GDestroyNotify) g_free), NULL);
	gtk_label_set_ellipsize (_tmp91_, PANGO_ELLIPSIZE_END);
	gtk_label_set_max_width_chars (_tmp91_, 16);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp91_, 6);
	g_object_ref_sink (_tmp91_);
	_g_object_unref0 (self->priv->project_name_label);
	self->priv->project_name_label = _tmp91_;
	_tmp92_ = self->priv->project_name_label;
	_tmp93_ = _g_object_ref0 ((GtkWidget*) _tmp92_);
	_tmp94_ = self->priv->_is_project_view;
	_tmp95_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp95_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp95_, _tmp93_);
	_g_object_unref0 (_tmp93_);
	gtk_revealer_set_reveal_child (_tmp95_, !_tmp94_);
	g_object_ref_sink (_tmp95_);
	_g_object_unref0 (self->priv->project_name_label_revealer);
	self->priv->project_name_label_revealer = _tmp95_;
	_tmp96_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp96_, TRUE);
	gtk_widget_set_halign ((GtkWidget*) _tmp96_, GTK_ALIGN_END);
	g_object_ref_sink (_tmp96_);
	right_box = _tmp96_;
	_tmp97_ = right_box;
	_tmp98_ = self->priv->deadline_revealer;
	gtk_box_append (_tmp97_, (GtkWidget*) _tmp98_);
	_tmp99_ = right_box;
	_tmp100_ = self->priv->project_name_label_revealer;
	gtk_box_append (_tmp99_, (GtkWidget*) _tmp100_);
	_tmp101_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	g_object_ref_sink (_tmp101_);
	content_label_box = _tmp101_;
	_tmp102_ = content_label_box;
	_tmp103_ = self->priv->due_box_revealer;
	gtk_box_append (_tmp102_, (GtkWidget*) _tmp103_);
	_tmp104_ = content_label_box;
	_tmp105_ = self->priv->content_label;
	gtk_box_append (_tmp104_, (GtkWidget*) _tmp105_);
	_tmp106_ = content_label_box;
	_tmp107_ = self->priv->description_image_revealer;
	gtk_box_append (_tmp106_, (GtkWidget*) _tmp107_);
	_tmp108_ = content_label_box;
	_tmp109_ = self->priv->reminder_revealer;
	gtk_box_append (_tmp108_, (GtkWidget*) _tmp109_);
	_tmp110_ = content_label_box;
	_tmp111_ = self->priv->labels_summary;
	gtk_box_append (_tmp110_, (GtkWidget*) _tmp111_);
	_tmp112_ = content_label_box;
	_tmp113_ = right_box;
	gtk_box_append (_tmp112_, (GtkWidget*) _tmp113_);
	_tmp114_ = content_label_box;
	_tmp115_ = _g_object_ref0 ((GtkWidget*) _tmp114_);
	_tmp116_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp116_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP);
	gtk_revealer_set_transition_duration (_tmp116_, (guint) 115);
	gtk_revealer_set_reveal_child (_tmp116_, TRUE);
	gtk_revealer_set_child (_tmp116_, _tmp115_);
	_g_object_unref0 (_tmp115_);
	g_object_ref_sink (_tmp116_);
	_g_object_unref0 (self->priv->content_label_revealer);
	self->priv->content_label_revealer = _tmp116_;
	_tmp117_ = g_strdup (_ ("To-do name"));
	_tmp118_ = widgets_text_view_new ();
	gtk_text_view_set_wrap_mode ((GtkTextView*) _tmp118_, GTK_WRAP_WORD);
	gtk_text_view_set_accepts_tab ((GtkTextView*) _tmp118_, FALSE);
	widgets_text_view_set_placeholder_text (_tmp118_, _tmp117_);
	_g_free0 (_tmp117_);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp118_, TRUE);
	gtk_widget_set_valign ((GtkWidget*) _tmp118_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp118_);
	_g_object_unref0 (self->priv->content_textview);
	self->priv->content_textview = _tmp118_;
	_tmp119_ = self->priv->content_textview;
	gtk_widget_remove_css_class ((GtkWidget*) _tmp119_, "view");
	_tmp120_ = self->priv->content_textview;
	gtk_widget_add_css_class ((GtkWidget*) _tmp120_, "font-bold");
	_tmp121_ = gtk_source_buffer_new (NULL);
	source_buffer = _tmp121_;
	_tmp122_ = self->priv->content_textview;
	_tmp123_ = source_buffer;
	gtk_text_view_set_buffer ((GtkTextView*) _tmp122_, (GtkTextBuffer*) _tmp123_);
	_tmp124_ = self->priv->content_textview;
	_tmp125_ = _g_object_ref0 ((GtkWidget*) _tmp124_);
	_tmp126_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp126_, GTK_ALIGN_CENTER);
	gtk_revealer_set_transition_type (_tmp126_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);
	gtk_revealer_set_transition_duration (_tmp126_, (guint) 115);
	gtk_revealer_set_reveal_child (_tmp126_, FALSE);
	gtk_revealer_set_child (_tmp126_, _tmp125_);
	_g_object_unref0 (_tmp125_);
	g_object_ref_sink (_tmp126_);
	_g_object_unref0 (self->priv->content_entry_revealer);
	self->priv->content_entry_revealer = _tmp126_;
	_tmp127_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp128_ = _tmp127_;
	_tmp129_ = objects_item_get_completed (_tmp128_);
	_tmp130_ = _tmp129_;
	_tmp131_ = widgets_pin_button_new ();
	gtk_widget_set_sensitive ((GtkWidget*) _tmp131_, !_tmp130_);
	widgets_pin_button_set_no_padding (_tmp131_, TRUE);
	g_object_ref_sink (_tmp131_);
	_g_object_unref0 (self->priv->pin_button);
	self->priv->pin_button = _tmp131_;
	_tmp132_ = g_strdup ("flat");
	_tmp133_ = g_strdup ("no-padding");
	_tmp134_ = g_new0 (gchar*, 2 + 1);
	_tmp134_[0] = _tmp132_;
	_tmp134_[1] = _tmp133_;
	_tmp135_ = widgets_loading_button_new_with_icon ("go-up-symbolic", 16);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp135_, _tmp134_);
	_tmp134_ = (_vala_array_free (_tmp134_, 2, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp135_);
	_g_object_unref0 (self->priv->hide_loading_button);
	self->priv->hide_loading_button = _tmp135_;
	_tmp136_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
	g_object_ref_sink (_tmp136_);
	top_right_box = _tmp136_;
	_tmp137_ = top_right_box;
	_tmp138_ = self->priv->pin_button;
	gtk_box_append (_tmp137_, (GtkWidget*) _tmp138_);
	_tmp139_ = top_right_box;
	_tmp140_ = self->priv->hide_loading_button;
	gtk_box_append (_tmp139_, (GtkWidget*) _tmp140_);
	_tmp141_ = top_right_box;
	_tmp142_ = _g_object_ref0 ((GtkWidget*) _tmp141_);
	_tmp143_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp143_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_widget_set_valign ((GtkWidget*) _tmp143_, GTK_ALIGN_START);
	gtk_revealer_set_child (_tmp143_, _tmp142_);
	_g_object_unref0 (_tmp142_);
	g_object_ref_sink (_tmp143_);
	_g_object_unref0 (self->priv->hide_loading_revealer);
	self->priv->hide_loading_revealer = _tmp143_;
	_tmp144_ = g_strdup ("circular-check");
	_tmp145_ = g_new0 (gchar*, 1 + 1);
	_tmp145_[0] = _tmp144_;
	_tmp146_ = (GtkCheckButton*) gtk_check_button_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp146_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp146_, 6);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp146_, _tmp145_);
	_tmp145_ = (_vala_array_free (_tmp145_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp146_);
	_g_object_unref0 (self->priv->select_checkbutton);
	self->priv->select_checkbutton = _tmp146_;
	_tmp147_ = self->priv->select_checkbutton;
	_tmp148_ = _g_object_ref0 ((GtkWidget*) _tmp147_);
	_tmp149_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp149_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT);
	gtk_revealer_set_child (_tmp149_, _tmp148_);
	_g_object_unref0 (_tmp148_);
	g_object_ref_sink (_tmp149_);
	_g_object_unref0 (self->priv->select_revealer);
	self->priv->select_revealer = _tmp149_;
	_tmp150_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	gtk_widget_set_valign ((GtkWidget*) _tmp150_, GTK_ALIGN_CENTER);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp150_, 6);
	g_object_ref_sink (_tmp150_);
	_g_object_unref0 (self->priv->content_box);
	self->priv->content_box = _tmp150_;
	_tmp151_ = self->priv->content_box;
	_tmp152_ = self->priv->content_label_revealer;
	gtk_box_append (_tmp151_, (GtkWidget*) _tmp152_);
	_tmp153_ = self->priv->content_box;
	_tmp154_ = self->priv->content_entry_revealer;
	gtk_box_append (_tmp153_, (GtkWidget*) _tmp154_);
	_tmp155_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	g_object_ref_sink (_tmp155_);
	content_main_box = _tmp155_;
	_tmp156_ = content_main_box;
	_tmp157_ = self->priv->checked_button_revealer;
	gtk_box_append (_tmp156_, (GtkWidget*) _tmp157_);
	_tmp158_ = content_main_box;
	_tmp159_ = self->priv->content_box;
	gtk_box_append (_tmp158_, (GtkWidget*) _tmp159_);
	_tmp160_ = content_main_box;
	_tmp161_ = self->priv->hide_loading_revealer;
	gtk_box_append (_tmp160_, (GtkWidget*) _tmp161_);
	_tmp162_ = (GtkRevealer*) gtk_revealer_new ();
	g_object_ref_sink (_tmp162_);
	_g_object_unref0 (self->priv->markdown_revealer);
	self->priv->markdown_revealer = _tmp162_;
	_tmp163_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp164_ = _tmp163_;
	_tmp165_ = objects_item_get_completed (_tmp164_);
	_tmp166_ = _tmp165_;
	_tmp167_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp168_ = _tmp167_;
	_tmp169_ = _g_object_ref0 (_tmp168_);
	_tmp170_ = widgets_item_labels_new ();
	gtk_widget_set_margin_start ((GtkWidget*) _tmp170_, 24);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp170_, !_tmp166_);
	widgets_item_labels_set_item (_tmp170_, _tmp169_);
	_g_object_unref0 (_tmp169_);
	g_object_ref_sink (_tmp170_);
	_g_object_unref0 (self->priv->item_labels);
	self->priv->item_labels = _tmp170_;
	_g_object_unref0 (self->priv->schedule_button);
	self->priv->schedule_button = NULL;
	_g_object_unref0 (self->priv->deadline_button_detail);
	self->priv->deadline_button_detail = NULL;
	_tmp171_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp171_);
	_g_object_unref0 (self->priv->dates_box);
	self->priv->dates_box = _tmp171_;
	_g_object_unref0 (self->priv->priority_button);
	self->priv->priority_button = NULL;
	_g_object_unref0 (self->priv->label_button);
	self->priv->label_button = NULL;
	_g_object_unref0 (self->priv->reminder_button);
	self->priv->reminder_button = NULL;
	_g_object_unref0 (self->priv->deadline_button);
	self->priv->deadline_button = NULL;
	_g_object_unref0 (self->priv->attachments);
	self->priv->attachments = NULL;
	_g_object_unref0 (self->priv->attachments_button);
	self->priv->attachments_button = NULL;
	_g_object_unref0 (self->priv->attachments_count);
	self->priv->attachments_count = NULL;
	_g_object_unref0 (self->priv->attachments_button_overlay);
	self->priv->attachments_button_overlay = NULL;
	_tmp173_ = services_event_bus_get_default ();
	_tmp174_ = _tmp173_;
	_tmp175_ = services_event_bus_get_mobile_mode (_tmp174_);
	_tmp176_ = _tmp175_;
	_tmp177_ = _tmp176_;
	_g_object_unref0 (_tmp174_);
	if (_tmp177_) {
		_tmp172_ = TRUE;
	} else {
		_tmp172_ = FALSE;
	}
	_tmp179_ = services_event_bus_get_default ();
	_tmp180_ = _tmp179_;
	_tmp181_ = services_event_bus_get_mobile_mode (_tmp180_);
	_tmp182_ = _tmp181_;
	_tmp183_ = _tmp182_;
	_g_object_unref0 (_tmp180_);
	if (_tmp183_) {
		_tmp178_ = GTK_ALIGN_END;
	} else {
		_tmp178_ = GTK_ALIGN_FILL;
	}
	_tmp184_ = g_strdup ("view-more-symbolic");
	_tmp185_ = layouts_item_row_build_button_context_menu (self);
	_tmp186_ = g_strdup ("flat");
	_tmp187_ = g_new0 (gchar*, 1 + 1);
	_tmp187_[0] = _tmp186_;
	_tmp188_ = (GtkMenuButton*) gtk_menu_button_new ();
	gtk_menu_button_set_icon_name (_tmp188_, _tmp184_);
	_g_free0 (_tmp184_);
	gtk_menu_button_set_popover (_tmp188_, _tmp185_);
	_g_object_unref0 (_tmp185_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp188_, _tmp187_);
	_tmp187_ = (_vala_array_free (_tmp187_, 1, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp188_, _tmp172_);
	gtk_widget_set_halign ((GtkWidget*) _tmp188_, _tmp178_);
	g_object_ref_sink (_tmp188_);
	_g_object_unref0 (self->priv->menu_button);
	self->priv->menu_button = _tmp188_;
	_tmp189_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp190_ = _tmp189_;
	_tmp191_ = objects_item_get_project (_tmp190_);
	_tmp192_ = _tmp191_;
	_tmp193_ = objects_project_get_is_deck (_tmp192_);
	_tmp194_ = _tmp193_;
	_tmp195_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp195_, 16);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp195_, 6);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp195_, TRUE);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp195_, !_tmp194_);
	g_object_ref_sink (_tmp195_);
	_g_object_unref0 (self->priv->action_box);
	self->priv->action_box = _tmp195_;
	_tmp196_ = services_event_bus_get_default ();
	_tmp197_ = _tmp196_;
	_tmp198_ = services_event_bus_get_mobile_mode (_tmp197_);
	_tmp199_ = _tmp198_;
	_tmp200_ = _tmp199_;
	_g_object_unref0 (_tmp197_);
	if (_tmp200_) {
		GtkBox* _tmp201_;
		_tmp201_ = self->priv->action_box;
		gtk_orientable_set_orientation ((GtkOrientable*) _tmp201_, GTK_ORIENTATION_VERTICAL);
	}
	_tmp203_ = services_event_bus_get_default ();
	_tmp204_ = _tmp203_;
	_tmp205_ = services_event_bus_get_mobile_mode (_tmp204_);
	_tmp206_ = _tmp205_;
	_tmp207_ = _tmp206_;
	_g_object_unref0 (_tmp204_);
	if (_tmp207_) {
		_tmp202_ = FALSE;
	} else {
		_tmp202_ = TRUE;
	}
	_tmp209_ = services_event_bus_get_default ();
	_tmp210_ = _tmp209_;
	_tmp211_ = services_event_bus_get_mobile_mode (_tmp210_);
	_tmp212_ = _tmp211_;
	_tmp213_ = _tmp212_;
	_g_object_unref0 (_tmp210_);
	if (_tmp213_) {
		_tmp208_ = GTK_ALIGN_FILL;
	} else {
		_tmp208_ = GTK_ALIGN_END;
	}
	_tmp214_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp214_, _tmp202_);
	gtk_widget_set_halign ((GtkWidget*) _tmp214_, _tmp208_);
	gtk_widget_set_valign ((GtkWidget*) _tmp214_, GTK_ALIGN_END);
	g_object_ref_sink (_tmp214_);
	_g_object_unref0 (self->priv->action_box_right);
	self->priv->action_box_right = _tmp214_;
	_tmp215_ = self->priv->action_box_right;
	_tmp216_ = self->priv->menu_button;
	gtk_box_append (_tmp215_, (GtkWidget*) _tmp216_);
	_tmp217_ = self->priv->action_box;
	_tmp218_ = self->priv->dates_box;
	gtk_box_append (_tmp217_, (GtkWidget*) _tmp218_);
	_tmp219_ = self->priv->action_box;
	_tmp220_ = self->priv->action_box_right;
	gtk_box_append (_tmp219_, (GtkWidget*) _tmp220_);
	_tmp221_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp221_);
	details_grid = _tmp221_;
	_tmp222_ = details_grid;
	_tmp223_ = self->priv->markdown_revealer;
	gtk_box_append (_tmp222_, (GtkWidget*) _tmp223_);
	_tmp224_ = details_grid;
	_tmp225_ = self->priv->item_labels;
	gtk_box_append (_tmp224_, (GtkWidget*) _tmp225_);
	_tmp226_ = details_grid;
	_tmp227_ = self->priv->action_box;
	gtk_box_append (_tmp226_, (GtkWidget*) _tmp227_);
	_tmp228_ = details_grid;
	_tmp229_ = _g_object_ref0 ((GtkWidget*) _tmp228_);
	_tmp230_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp230_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);
	gtk_revealer_set_child (_tmp230_, _tmp229_);
	_g_object_unref0 (_tmp229_);
	g_object_ref_sink (_tmp230_);
	_g_object_unref0 (self->priv->detail_revealer);
	self->priv->detail_revealer = _tmp230_;
	_tmp231_ = ((LayoutsItemBase*) self)->signals_map;
	_tmp232_ = self->priv->detail_revealer;
	_tmp233_ = g_signal_connect_object ((GObject*) _tmp232_, "notify::reveal-child", (GCallback) __layouts_item_row___lambda226__g_object_notify, self, 0);
	_tmp234_ = self->priv->detail_revealer;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp231_, (gpointer) ((guintptr) _tmp233_), (GObject*) _tmp234_);
	_tmp235_ = g_strdup ("transition");
	_tmp236_ = g_strdup ("drop-target");
	_tmp237_ = g_new0 (gchar*, 2 + 1);
	_tmp237_[0] = _tmp235_;
	_tmp237_[1] = _tmp236_;
	_tmp238_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	gtk_widget_set_valign ((GtkWidget*) _tmp238_, GTK_ALIGN_START);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp238_, _tmp237_);
	_tmp237_ = (_vala_array_free (_tmp237_, 2, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp238_);
	handle_grid = _tmp238_;
	_tmp239_ = handle_grid;
	_tmp240_ = content_main_box;
	gtk_box_append (_tmp239_, (GtkWidget*) _tmp240_);
	_tmp241_ = handle_grid;
	_tmp242_ = self->priv->detail_revealer;
	gtk_box_append (_tmp241_, (GtkWidget*) _tmp242_);
	_tmp243_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp243_, 3);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp243_, 3);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp243_, 3);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp243_, 6);
	g_object_ref_sink (_tmp243_);
	_itemrow_box = _tmp243_;
	_tmp244_ = _itemrow_box;
	_tmp245_ = handle_grid;
	gtk_box_append (_tmp244_, (GtkWidget*) _tmp245_);
	_tmp246_ = _itemrow_box;
	_tmp247_ = self->priv->select_revealer;
	gtk_box_append (_tmp246_, (GtkWidget*) _tmp247_);
	_tmp248_ = _itemrow_box;
	_tmp249_ = _g_object_ref0 ((GtkWidget*) _tmp248_);
	_tmp250_ = (AdwBin*) adw_bin_new ();
	adw_bin_set_child (_tmp250_, _tmp249_);
	_g_object_unref0 (_tmp249_);
	g_object_ref_sink (_tmp250_);
	_g_object_unref0 (self->itemrow_box);
	self->itemrow_box = _tmp250_;
	_tmp251_ = self->itemrow_box;
	gtk_widget_add_css_class ((GtkWidget*) _tmp251_, "task-item");
	_tmp252_ = self->itemrow_box;
	gtk_widget_add_css_class ((GtkWidget*) _tmp252_, "drop-target");
	_tmp253_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
	g_object_ref_sink (_tmp253_);
	add_subtasks_box = _tmp253_;
	_tmp254_ = add_subtasks_box;
	_tmp255_ = (GtkImage*) gtk_image_new_from_icon_name ("plus-large-symbolic");
	gtk_image_set_pixel_size (_tmp255_, 12);
	g_object_ref_sink (_tmp255_);
	_tmp256_ = _tmp255_;
	gtk_box_append (_tmp254_, (GtkWidget*) _tmp256_);
	_g_object_unref0 (_tmp256_);
	_tmp257_ = add_subtasks_box;
	_tmp258_ = (GtkLabel*) gtk_label_new (_ ("Add Subtasks"));
	g_object_ref_sink (_tmp258_);
	_tmp259_ = _tmp258_;
	gtk_box_append (_tmp257_, (GtkWidget*) _tmp259_);
	_g_object_unref0 (_tmp259_);
	_tmp260_ = add_subtasks_box;
	_tmp261_ = _g_object_ref0 ((GtkWidget*) _tmp260_);
	_tmp262_ = g_strdup ("flat");
	_tmp263_ = g_strdup ("small-button");
	_tmp264_ = g_strdup ("hidden-button");
	_tmp265_ = g_new0 (gchar*, 3 + 1);
	_tmp265_[0] = _tmp262_;
	_tmp265_[1] = _tmp263_;
	_tmp265_[2] = _tmp264_;
	_tmp266_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp267_ = _tmp266_;
	_tmp268_ = objects_item_get_completed (_tmp267_);
	_tmp269_ = _tmp268_;
	_tmp270_ = (GtkButton*) gtk_button_new ();
	gtk_button_set_child (_tmp270_, _tmp261_);
	_g_object_unref0 (_tmp261_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp270_, _tmp265_);
	_tmp265_ = (_vala_array_free (_tmp265_, 3, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp270_, 16);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp270_, 3);
	gtk_widget_set_halign ((GtkWidget*) _tmp270_, GTK_ALIGN_START);
	gtk_widget_set_sensitive ((GtkWidget*) _tmp270_, !_tmp269_);
	g_object_ref_sink (_tmp270_);
	_g_object_unref0 (self->priv->add_subtasks_button);
	self->priv->add_subtasks_button = _tmp270_;
	_tmp271_ = self->priv->add_subtasks_button;
	_tmp272_ = _g_object_ref0 ((GtkWidget*) _tmp271_);
	_tmp273_ = layouts_item_row_get_edit (self);
	_tmp274_ = _tmp273_;
	_tmp275_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_child (_tmp275_, _tmp272_);
	_g_object_unref0 (_tmp272_);
	gtk_revealer_set_reveal_child (_tmp275_, _tmp274_);
	g_object_ref_sink (_tmp275_);
	_g_object_unref0 (self->priv->add_subtasks_button_revealer);
	self->priv->add_subtasks_button_revealer = _tmp275_;
	_tmp276_ = (GtkLabel*) gtk_label_new (NULL);
	g_object_ref_sink (_tmp276_);
	_g_object_unref0 (self->priv->show_subtasks_label);
	self->priv->show_subtasks_label = _tmp276_;
	_tmp277_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
	g_object_ref_sink (_tmp277_);
	show_subtasks_box = _tmp277_;
	_tmp278_ = show_subtasks_box;
	_tmp279_ = (GtkImage*) gtk_image_new_from_icon_name ("go-next-symbolic");
	gtk_image_set_pixel_size (_tmp279_, 12);
	g_object_ref_sink (_tmp279_);
	_tmp280_ = _tmp279_;
	gtk_box_append (_tmp278_, (GtkWidget*) _tmp280_);
	_g_object_unref0 (_tmp280_);
	_tmp281_ = show_subtasks_box;
	_tmp282_ = self->priv->show_subtasks_label;
	gtk_box_append (_tmp281_, (GtkWidget*) _tmp282_);
	_tmp283_ = g_strdup ("flat");
	_tmp284_ = g_strdup ("small-button");
	_tmp285_ = g_strdup ("hidden-button");
	_tmp286_ = g_new0 (gchar*, 3 + 1);
	_tmp286_[0] = _tmp283_;
	_tmp286_[1] = _tmp284_;
	_tmp286_[2] = _tmp285_;
	_tmp287_ = show_subtasks_box;
	_tmp288_ = _g_object_ref0 ((GtkWidget*) _tmp287_);
	_tmp289_ = (GtkButton*) gtk_button_new ();
	gtk_widget_set_css_classes ((GtkWidget*) _tmp289_, _tmp286_);
	_tmp286_ = (_vala_array_free (_tmp286_, 3, (GDestroyNotify) g_free), NULL);
	gtk_button_set_child (_tmp289_, _tmp288_);
	_g_object_unref0 (_tmp288_);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp289_, 16);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp289_, 3);
	gtk_widget_set_halign ((GtkWidget*) _tmp289_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp289_);
	_g_object_unref0 (self->priv->show_subtasks_button);
	self->priv->show_subtasks_button = _tmp289_;
	_tmp290_ = self->priv->_is_project_view;
	_tmp291_ = widgets_sub_items_new (_tmp290_);
	g_object_ref_sink (_tmp291_);
	_g_object_unref0 (self->priv->subitems);
	self->priv->subitems = _tmp291_;
	_tmp293_ = self->priv->subitems;
	_tmp294_ = widgets_sub_items_get_has_children (_tmp293_);
	_tmp295_ = _tmp294_;
	if (_tmp295_) {
		gboolean _tmp296_;
		gboolean _tmp297_;
		_tmp296_ = layouts_item_row_get_edit (self);
		_tmp297_ = _tmp296_;
		_tmp292_ = _tmp297_;
	} else {
		_tmp292_ = FALSE;
	}
	_tmp298_ = self->priv->show_subtasks_button;
	_tmp299_ = _g_object_ref0 ((GtkWidget*) _tmp298_);
	_tmp300_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_child (_tmp300_, _tmp299_);
	_g_object_unref0 (_tmp299_);
	gtk_revealer_set_reveal_child (_tmp300_, _tmp292_);
	g_object_ref_sink (_tmp300_);
	_g_object_unref0 (self->priv->show_subtasks_revealer);
	self->priv->show_subtasks_revealer = _tmp300_;
	_tmp301_ = self->priv->subitems;
	_tmp302_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp303_ = _tmp302_;
	widgets_sub_items_present_item (_tmp301_, _tmp303_);
	_tmp305_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp306_ = _tmp305_;
	_tmp307_ = objects_item_get_items (_tmp306_);
	_tmp308_ = _tmp307_;
	_tmp309_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp308_);
	_tmp310_ = _tmp309_;
	if (_tmp310_ > 0) {
		ObjectsItem* _tmp311_;
		ObjectsItem* _tmp312_;
		gboolean _tmp313_;
		gboolean _tmp314_;
		_tmp311_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp312_ = _tmp311_;
		_tmp313_ = objects_item_get_collapsed (_tmp312_);
		_tmp314_ = _tmp313_;
		_tmp304_ = _tmp314_;
	} else {
		_tmp304_ = FALSE;
	}
	_tmp315_ = self->priv->subitems;
	widgets_sub_items_set_reveal_child (_tmp315_, _tmp304_);
	_tmp316_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp316_);
	box = _tmp316_;
	_tmp317_ = box;
	_tmp318_ = self->itemrow_box;
	gtk_box_append (_tmp317_, (GtkWidget*) _tmp318_);
	_tmp319_ = box;
	_tmp320_ = self->priv->add_subtasks_button_revealer;
	gtk_box_append (_tmp319_, (GtkWidget*) _tmp320_);
	_tmp321_ = box;
	_tmp322_ = self->priv->show_subtasks_revealer;
	gtk_box_append (_tmp321_, (GtkWidget*) _tmp322_);
	_tmp323_ = box;
	_tmp324_ = self->priv->subitems;
	gtk_box_append (_tmp323_, (GtkWidget*) _tmp324_);
	_tmp325_ = g_strdup ("flat");
	_tmp326_ = g_strdup ("dimmed");
	_tmp327_ = g_strdup ("no-padding");
	_tmp328_ = g_strdup ("hidden-button");
	_tmp329_ = g_new0 (gchar*, 4 + 1);
	_tmp329_[0] = _tmp325_;
	_tmp329_[1] = _tmp326_;
	_tmp329_[2] = _tmp327_;
	_tmp329_[3] = _tmp328_;
	_tmp330_ = (GtkImage*) gtk_image_new_from_icon_name ("go-next-symbolic");
	gtk_image_set_pixel_size (_tmp330_, 12);
	g_object_ref_sink (_tmp330_);
	_tmp331_ = (GtkButton*) gtk_button_new ();
	gtk_widget_set_valign ((GtkWidget*) _tmp331_, GTK_ALIGN_START);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp331_, 3);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp331_, 3);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp331_, _tmp329_);
	_tmp329_ = (_vala_array_free (_tmp329_, 4, (GDestroyNotify) g_free), NULL);
	gtk_button_set_child (_tmp331_, (GtkWidget*) _tmp330_);
	_g_object_unref0 (_tmp330_);
	g_object_ref_sink (_tmp331_);
	_g_object_unref0 (self->priv->hide_subtask_button);
	self->priv->hide_subtask_button = _tmp331_;
	_tmp332_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp333_ = _tmp332_;
	_tmp334_ = objects_item_get_collapsed (_tmp333_);
	_tmp335_ = _tmp334_;
	if (_tmp335_) {
		GtkButton* _tmp336_;
		GtkButton* _tmp337_;
		_tmp336_ = self->priv->hide_subtask_button;
		gtk_widget_add_css_class ((GtkWidget*) _tmp336_, "opened");
		_tmp337_ = self->priv->show_subtasks_button;
		gtk_widget_add_css_class ((GtkWidget*) _tmp337_, "opened");
	}
	_tmp338_ = self->priv->subitems;
	_tmp339_ = widgets_sub_items_get_has_children (_tmp338_);
	_tmp340_ = _tmp339_;
	_tmp341_ = self->priv->hide_subtask_button;
	_tmp342_ = _g_object_ref0 ((GtkWidget*) _tmp341_);
	_tmp343_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp343_, GTK_REVEALER_TRANSITION_TYPE_CROSSFADE);
	gtk_revealer_set_reveal_child (_tmp343_, _tmp340_);
	gtk_revealer_set_child (_tmp343_, _tmp342_);
	_g_object_unref0 (_tmp342_);
	g_object_ref_sink (_tmp343_);
	_g_object_unref0 (self->priv->hide_subtask_revealer);
	self->priv->hide_subtask_revealer = _tmp343_;
	_tmp344_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	g_object_ref_sink (_tmp344_);
	h_box = _tmp344_;
	_tmp345_ = h_box;
	_tmp346_ = self->priv->hide_subtask_revealer;
	gtk_box_append (_tmp345_, (GtkWidget*) _tmp346_);
	_tmp347_ = h_box;
	_tmp348_ = box;
	gtk_box_append (_tmp347_, (GtkWidget*) _tmp348_);
	_tmp349_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
	g_object_ref_sink (_tmp349_);
	main_box = _tmp349_;
	_tmp350_ = main_box;
	_tmp351_ = self->priv->motion_top_revealer;
	gtk_box_append (_tmp350_, (GtkWidget*) _tmp351_);
	_tmp352_ = main_box;
	_tmp353_ = h_box;
	gtk_box_append (_tmp352_, (GtkWidget*) _tmp353_);
	_tmp354_ = main_box;
	_tmp355_ = _g_object_ref0 ((GtkWidget*) _tmp354_);
	_tmp356_ = (GtkRevealer*) gtk_revealer_new ();
	gtk_revealer_set_transition_type (_tmp356_, GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);
	gtk_revealer_set_child (_tmp356_, _tmp355_);
	_g_object_unref0 (_tmp355_);
	g_object_ref_sink (_tmp356_);
	_g_object_unref0 (self->priv->main_revealer);
	self->priv->main_revealer = _tmp356_;
	_tmp357_ = self->priv->main_revealer;
	gtk_list_box_row_set_child ((GtkListBoxRow*) self, (GtkWidget*) _tmp357_);
	layouts_item_base_update_request ((LayoutsItemBase*) self);
	_tmp359_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp360_ = _tmp359_;
	_tmp361_ = objects_item_get_checked (_tmp360_);
	_tmp362_ = _tmp361_;
	if (!_tmp362_) {
		ObjectsItem* _tmp363_;
		ObjectsItem* _tmp364_;
		ObjectsProject* _tmp365_;
		ObjectsProject* _tmp366_;
		gboolean _tmp367_;
		gboolean _tmp368_;
		_tmp363_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
		_tmp364_ = _tmp363_;
		_tmp365_ = objects_item_get_project (_tmp364_);
		_tmp366_ = _tmp365_;
		_tmp367_ = objects_project_get_is_deck (_tmp366_);
		_tmp368_ = _tmp367_;
		_tmp358_ = !_tmp368_;
	} else {
		_tmp358_ = FALSE;
	}
	if (_tmp358_) {
		layouts_item_row_build_drag_and_drop (self);
	}
	_tmp369_ = self->priv->main_revealer;
	_tmp370_ = gtk_revealer_get_transition_duration (_tmp369_);
	_tmp371_ = _tmp370_;
	g_timeout_add_full (G_PRIORITY_DEFAULT, _tmp371_, __layouts_item_row___lambda227__gsource_func, g_object_ref (self), g_object_unref);
	layouts_item_row_connect_signals (self);
	_g_object_unref0 (main_box);
	_g_object_unref0 (h_box);
	_g_object_unref0 (box);
	_g_object_unref0 (show_subtasks_box);
	_g_object_unref0 (add_subtasks_box);
	_g_object_unref0 (_itemrow_box);
	_g_object_unref0 (handle_grid);
	_g_object_unref0 (details_grid);
	_g_object_unref0 (content_main_box);
	_g_object_unref0 (top_right_box);
	_g_object_unref0 (source_buffer);
	_g_object_unref0 (content_label_box);
	_g_object_unref0 (right_box);
	_g_object_unref0 (deadline_icon);
	_g_object_unref0 (reminder_box);
	_g_object_unref0 (reminder_icon);
	_g_object_unref0 (repeat_image);
	return obj;
}

static void
layouts_item_row_class_init (LayoutsItemRowClass * klass,
                             gpointer klass_data)
{
	layouts_item_row_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &LayoutsItemRow_private_offset);
	((LayoutsItemBaseClass *) klass)->select_row = (void (*) (LayoutsItemBase*, gboolean)) layouts_item_row_real_select_row;
	((LayoutsItemBaseClass *) klass)->update_request = (void (*) (LayoutsItemBase*)) layouts_item_row_real_update_request;
	((LayoutsItemBaseClass *) klass)->hide_destroy = (void (*) (LayoutsItemBase*)) layouts_item_row_real_hide_destroy;
	((LayoutsItemBaseClass *) klass)->checked_toggled = (void (*) (LayoutsItemBase*, gboolean, guint*)) layouts_item_row_real_checked_toggled;
	((LayoutsItemBaseClass *) klass)->delete_request = (void (*) (LayoutsItemBase*, gboolean)) layouts_item_row_real_delete_request;
	((LayoutsItemBaseClass *) klass)->clean_up = (void (*) (LayoutsItemBase*)) layouts_item_row_real_clean_up;
	G_OBJECT_CLASS (klass)->get_property = _vala_layouts_item_row_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_layouts_item_row_set_property;
	G_OBJECT_CLASS (klass)->constructor = layouts_item_row_constructor;
	G_OBJECT_CLASS (klass)->finalize = layouts_item_row_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY] = g_param_spec_boolean ("is-project-view", "is-project-view", "is-project-view", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY] = g_param_spec_string ("project-id", "project-id", "project-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY] = g_param_spec_string ("section-id", "section-id", "section-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY] = g_param_spec_string ("parent-id", "parent-id", "parent-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_EDIT_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_EDIT_PROPERTY] = g_param_spec_boolean ("edit", "edit", "edit", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_REVEAL_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_REVEAL_PROPERTY] = g_param_spec_boolean ("reveal", "reveal", "reveal", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY] = g_param_spec_boolean ("is-loading", "is-loading", "is-loading", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY] = g_param_spec_uint ("destroy-timeout", "destroy-timeout", "destroy-timeout", 0, G_MAXUINT, (guint) 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY] = g_param_spec_uint ("complete-timeout", "complete-timeout", "complete-timeout", 0, G_MAXUINT, (guint) 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY, layouts_item_row_properties[LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY] = g_param_spec_boolean ("drag-enabled", "drag-enabled", "drag-enabled", TRUE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	layouts_item_row_signals[LAYOUTS_ITEM_ROW_ITEM_ADDED_SIGNAL] = g_signal_new ("item-added", LAYOUTS_TYPE_ITEM_ROW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
}

static void
layouts_item_row_instance_init (LayoutsItemRow * self,
                                gpointer klass)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	GeeHashMap* _tmp3_;
	GeeHashMap* _tmp4_;
	self->priv = layouts_item_row_get_instance_private (self);
	_tmp0_ = g_strdup ("");
	self->priv->_project_id = _tmp0_;
	_tmp1_ = g_strdup ("");
	self->priv->_section_id = _tmp1_;
	_tmp2_ = g_strdup ("");
	self->priv->_parent_id = _tmp2_;
	self->priv->spelling_adapter = NULL;
	_tmp3_ = 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->dnd_handlerses = _tmp3_;
	_tmp4_ = 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->markdown_handlerses = _tmp4_;
	self->priv->_edit = FALSE;
	self->priv->_destroy_timeout = (guint) 0;
	self->priv->_complete_timeout = (guint) 0;
	self->priv->_recurrency_reset = FALSE;
	self->priv->_drag_enabled = TRUE;
}

static void
layouts_item_row_finalize (GObject * obj)
{
	LayoutsItemRow * self;
	ObjectsItem* _tmp0_;
	ObjectsItem* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRow);
	_tmp0_ = layouts_item_base_get_item ((LayoutsItemBase*) self);
	_tmp1_ = _tmp0_;
	_tmp2_ = objects_item_get_content (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = g_strdup_printf ("Destroying - Layouts.ItemRow - %s\n", _tmp3_);
	_tmp5_ = _tmp4_;
	g_debug ("ItemRow.vala:233: %s", _tmp5_);
	_g_free0 (_tmp5_);
	_g_free0 (self->priv->_project_id);
	_g_free0 (self->priv->_section_id);
	_g_free0 (self->priv->_parent_id);
	_g_object_unref0 (self->priv->motion_top_grid);
	_g_object_unref0 (self->priv->motion_top_revealer);
	_g_object_unref0 (self->priv->checked_button);
	_g_object_unref0 (self->priv->checked_button_revealer);
	_g_object_unref0 (self->priv->content_textview);
	_g_object_unref0 (self->priv->hide_loading_revealer);
	_g_object_unref0 (self->priv->project_name_label);
	_g_object_unref0 (self->priv->project_name_label_revealer);
	_g_object_unref0 (self->priv->select_checkbutton);
	_g_object_unref0 (self->priv->select_revealer);
	_g_object_unref0 (self->priv->content_label);
	_g_object_unref0 (self->priv->content_label_revealer);
	_g_object_unref0 (self->priv->content_entry_revealer);
	_g_object_unref0 (self->priv->use_note_item);
	_g_object_unref0 (self->priv->content_box);
	_g_object_unref0 (self->priv->spelling_adapter);
	_g_object_unref0 (self->priv->due_label);
	_g_object_unref0 (self->priv->due_box);
	_g_object_unref0 (self->priv->repeat_revealer);
	_g_object_unref0 (self->priv->due_box_revealer);
	_g_object_unref0 (self->priv->description_image_revealer);
	_g_object_unref0 (self->priv->reminder_revealer);
	_g_object_unref0 (self->priv->reminder_count);
	_g_object_unref0 (self->priv->deadline_label);
	_g_object_unref0 (self->priv->deadline_box);
	_g_object_unref0 (self->priv->deadline_revealer);
	_g_object_unref0 (self->priv->action_box_right);
	_g_object_unref0 (self->priv->dates_box);
	_g_object_unref0 (self->priv->attachments_button_overlay);
	_g_object_unref0 (self->priv->detail_revealer);
	_g_object_unref0 (self->priv->main_revealer);
	_g_object_unref0 (self->itemrow_box);
	_g_object_unref0 (self->priv->menu_handle_popover);
	_g_object_unref0 (self->priv->hide_loading_button);
	_g_object_unref0 (self->priv->markdown_editor);
	_g_object_unref0 (self->priv->markdown_revealer);
	_g_object_unref0 (self->priv->item_labels);
	_g_object_unref0 (self->priv->schedule_button);
	_g_object_unref0 (self->priv->labels_summary);
	_g_object_unref0 (self->priv->priority_button);
	_g_object_unref0 (self->priv->label_button);
	_g_object_unref0 (self->priv->pin_button);
	_g_object_unref0 (self->priv->reminder_button);
	_g_object_unref0 (self->priv->deadline_button);
	_g_object_unref0 (self->priv->deadline_button_detail);
	_g_object_unref0 (self->priv->attachments_button);
	_g_object_unref0 (self->priv->attachments);
	_g_object_unref0 (self->priv->attachments_count);
	_g_object_unref0 (self->priv->action_box);
	_g_object_unref0 (self->priv->show_subtasks_label);
	_g_object_unref0 (self->priv->show_subtasks_revealer);
	_g_object_unref0 (self->priv->add_subtasks_button_revealer);
	_g_object_unref0 (self->priv->add_subtasks_button);
	_g_object_unref0 (self->priv->subitems);
	_g_object_unref0 (self->priv->menu_button);
	_g_object_unref0 (self->priv->hide_subtask_button);
	_g_object_unref0 (self->priv->show_subtasks_button);
	_g_object_unref0 (self->priv->hide_subtask_revealer);
	_g_object_unref0 (self->priv->no_date_item);
	_g_object_unref0 (self->priv->pinboard_item);
	_g_object_unref0 (self->priv->drop_motion_ctrl);
	_g_object_unref0 (self->priv->drag_source);
	_g_object_unref0 (self->priv->drop_target);
	_g_object_unref0 (self->priv->drop_order_target);
	_g_object_unref0 (self->priv->drop_magic_button_target);
	_g_object_unref0 (self->priv->drop_order_magic_button_target);
	_g_object_unref0 (self->priv->dnd_handlerses);
	_g_object_unref0 (self->priv->markdown_handlerses);
	G_OBJECT_CLASS (layouts_item_row_parent_class)->finalize (obj);
}

static GType
layouts_item_row_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (LayoutsItemRowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) layouts_item_row_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (LayoutsItemRow), 0, (GInstanceInitFunc) layouts_item_row_instance_init, NULL };
	GType layouts_item_row_type_id;
	layouts_item_row_type_id = g_type_register_static (LAYOUTS_TYPE_ITEM_BASE, "LayoutsItemRow", &g_define_type_info, 0);
	LayoutsItemRow_private_offset = g_type_add_instance_private (layouts_item_row_type_id, sizeof (LayoutsItemRowPrivate));
	return layouts_item_row_type_id;
}

GType
layouts_item_row_get_type (void)
{
	static volatile gsize layouts_item_row_type_id__once = 0;
	if (g_once_init_enter (&layouts_item_row_type_id__once)) {
		GType layouts_item_row_type_id;
		layouts_item_row_type_id = layouts_item_row_get_type_once ();
		g_once_init_leave (&layouts_item_row_type_id__once, layouts_item_row_type_id);
	}
	return layouts_item_row_type_id__once;
}

static void
_vala_layouts_item_row_get_property (GObject * object,
                                     guint property_id,
                                     GValue * value,
                                     GParamSpec * pspec)
{
	LayoutsItemRow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRow);
	switch (property_id) {
		case LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY:
		g_value_set_boolean (value, layouts_item_row_get_is_project_view (self));
		break;
		case LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY:
		g_value_set_string (value, layouts_item_row_get_project_id (self));
		break;
		case LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY:
		g_value_set_string (value, layouts_item_row_get_section_id (self));
		break;
		case LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY:
		g_value_set_string (value, layouts_item_row_get_parent_id (self));
		break;
		case LAYOUTS_ITEM_ROW_EDIT_PROPERTY:
		g_value_set_boolean (value, layouts_item_row_get_edit (self));
		break;
		case LAYOUTS_ITEM_ROW_REVEAL_PROPERTY:
		g_value_set_boolean (value, layouts_item_row_get_reveal (self));
		break;
		case LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY:
		g_value_set_boolean (value, layouts_item_row_get_is_loading (self));
		break;
		case LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY:
		g_value_set_uint (value, layouts_item_row_get_destroy_timeout (self));
		break;
		case LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY:
		g_value_set_uint (value, layouts_item_row_get_complete_timeout (self));
		break;
		case LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY:
		g_value_set_boolean (value, layouts_item_row_get_drag_enabled (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_layouts_item_row_set_property (GObject * object,
                                     guint property_id,
                                     const GValue * value,
                                     GParamSpec * pspec)
{
	LayoutsItemRow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, LAYOUTS_TYPE_ITEM_ROW, LayoutsItemRow);
	switch (property_id) {
		case LAYOUTS_ITEM_ROW_IS_PROJECT_VIEW_PROPERTY:
		layouts_item_row_set_is_project_view (self, g_value_get_boolean (value));
		break;
		case LAYOUTS_ITEM_ROW_PROJECT_ID_PROPERTY:
		layouts_item_row_set_project_id (self, g_value_get_string (value));
		break;
		case LAYOUTS_ITEM_ROW_SECTION_ID_PROPERTY:
		layouts_item_row_set_section_id (self, g_value_get_string (value));
		break;
		case LAYOUTS_ITEM_ROW_PARENT_ID_PROPERTY:
		layouts_item_row_set_parent_id (self, g_value_get_string (value));
		break;
		case LAYOUTS_ITEM_ROW_EDIT_PROPERTY:
		layouts_item_row_set_edit (self, g_value_get_boolean (value));
		break;
		case LAYOUTS_ITEM_ROW_REVEAL_PROPERTY:
		layouts_item_row_set_reveal (self, g_value_get_boolean (value));
		break;
		case LAYOUTS_ITEM_ROW_IS_LOADING_PROPERTY:
		layouts_item_row_set_is_loading (self, g_value_get_boolean (value));
		break;
		case LAYOUTS_ITEM_ROW_DESTROY_TIMEOUT_PROPERTY:
		layouts_item_row_set_destroy_timeout (self, g_value_get_uint (value));
		break;
		case LAYOUTS_ITEM_ROW_COMPLETE_TIMEOUT_PROPERTY:
		layouts_item_row_set_complete_timeout (self, g_value_get_uint (value));
		break;
		case LAYOUTS_ITEM_ROW_DRAG_ENABLED_PROPERTY:
		layouts_item_row_set_drag_enabled (self, g_value_get_boolean (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);
}

