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

#include <gtk/gtk.h>
#include <glib-object.h>
#include <glib.h>
#include <adwaita.h>
#include <stdlib.h>
#include <string.h>
#include <gee.h>
#include <pango/pango.h>
#include <glib/gi18n-lib.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 TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST (tuba_widgets_notification_request_get_type ())
#define TUBA_WIDGETS_NOTIFICATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, TubaWidgetsNotificationRequest))
#define TUBA_WIDGETS_NOTIFICATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, TubaWidgetsNotificationRequestClass))
#define TUBA_WIDGETS_IS_NOTIFICATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST))
#define TUBA_WIDGETS_IS_NOTIFICATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST))
#define TUBA_WIDGETS_NOTIFICATION_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, TubaWidgetsNotificationRequestClass))

typedef struct _TubaWidgetsNotificationRequest TubaWidgetsNotificationRequest;
typedef struct _TubaWidgetsNotificationRequestClass TubaWidgetsNotificationRequestClass;
typedef struct _TubaWidgetsNotificationRequestPrivate TubaWidgetsNotificationRequestPrivate;

#define TUBA_TYPE_ENTITY (tuba_entity_get_type ())
#define TUBA_ENTITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_ENTITY, TubaEntity))
#define TUBA_ENTITY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_ENTITY, TubaEntityClass))
#define TUBA_IS_ENTITY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_ENTITY))
#define TUBA_IS_ENTITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_ENTITY))
#define TUBA_ENTITY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_ENTITY, TubaEntityClass))

typedef struct _TubaEntity TubaEntity;
typedef struct _TubaEntityClass TubaEntityClass;

#define TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST (tuba_api_notification_filter_request_get_type ())
#define TUBA_API_NOTIFICATION_FILTER_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST, TubaAPINotificationFilterRequest))
#define TUBA_API_NOTIFICATION_FILTER_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST, TubaAPINotificationFilterRequestClass))
#define TUBA_API_NOTIFICATION_FILTER_IS_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST))
#define TUBA_API_NOTIFICATION_FILTER_IS_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST))
#define TUBA_API_NOTIFICATION_FILTER_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST, TubaAPINotificationFilterRequestClass))

typedef struct _TubaAPINotificationFilterRequest TubaAPINotificationFilterRequest;
typedef struct _TubaAPINotificationFilterRequestClass TubaAPINotificationFilterRequestClass;
enum  {
	TUBA_WIDGETS_NOTIFICATION_REQUEST_0_PROPERTY,
	TUBA_WIDGETS_NOTIFICATION_REQUEST_NUM_PROPERTIES
};
static GParamSpec* tuba_widgets_notification_request_properties[TUBA_WIDGETS_NOTIFICATION_REQUEST_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define TUBA_WIDGETS_TYPE_RICH_LABEL (tuba_widgets_rich_label_get_type ())
#define TUBA_WIDGETS_RICH_LABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabel))
#define TUBA_WIDGETS_RICH_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabelClass))
#define TUBA_WIDGETS_IS_RICH_LABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL))
#define TUBA_WIDGETS_IS_RICH_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_RICH_LABEL))
#define TUBA_WIDGETS_RICH_LABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabelClass))

typedef struct _TubaWidgetsRichLabel TubaWidgetsRichLabel;
typedef struct _TubaWidgetsRichLabelClass TubaWidgetsRichLabelClass;

#define TUBA_API_TYPE_ACCOUNT (tuba_api_account_get_type ())
#define TUBA_API_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_ACCOUNT, TubaAPIAccount))
#define TUBA_API_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_ACCOUNT, TubaAPIAccountClass))
#define TUBA_API_IS_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_ACCOUNT))
#define TUBA_API_IS_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_ACCOUNT))
#define TUBA_API_ACCOUNT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_ACCOUNT, TubaAPIAccountClass))

typedef struct _TubaAPIAccount TubaAPIAccount;
typedef struct _TubaAPIAccountClass TubaAPIAccountClass;
#define _g_free0(var) (var = (g_free (var), NULL))

#define TUBA_WIDGETS_TYPE_AVATAR (tuba_widgets_avatar_get_type ())
#define TUBA_WIDGETS_AVATAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatar))
#define TUBA_WIDGETS_AVATAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatarClass))
#define TUBA_WIDGETS_IS_AVATAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_AVATAR))
#define TUBA_WIDGETS_IS_AVATAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_AVATAR))
#define TUBA_WIDGETS_AVATAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatarClass))

typedef struct _TubaWidgetsAvatar TubaWidgetsAvatar;
typedef struct _TubaWidgetsAvatarClass TubaWidgetsAvatarClass;
typedef enum  {
	TUBA_REQUEST_V2_METHOD_GET,
	TUBA_REQUEST_V2_METHOD_POST,
	TUBA_REQUEST_V2_METHOD_PUT,
	TUBA_REQUEST_V2_METHOD_DELETE,
	TUBA_REQUEST_V2_METHOD_PATCH
} TubaRequestV2Method;

#define TUBA_REQUEST_V2_TYPE_METHOD (tuba_request_v2_method_get_type ())

#define TUBA_TYPE_ACCOUNT_STORE (tuba_account_store_get_type ())
#define TUBA_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStore))
#define TUBA_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStoreClass))
#define TUBA_IS_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_ACCOUNT_STORE))
#define TUBA_IS_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_ACCOUNT_STORE))
#define TUBA_ACCOUNT_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStoreClass))

typedef struct _TubaAccountStore TubaAccountStore;
typedef struct _TubaAccountStoreClass TubaAccountStoreClass;

#define TUBA_TYPE_INSTANCE_ACCOUNT (tuba_instance_account_get_type ())
#define TUBA_INSTANCE_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccount))
#define TUBA_INSTANCE_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccountClass))
#define TUBA_IS_INSTANCE_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_INSTANCE_ACCOUNT))
#define TUBA_IS_INSTANCE_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_INSTANCE_ACCOUNT))
#define TUBA_INSTANCE_ACCOUNT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccountClass))

typedef struct _TubaInstanceAccount TubaInstanceAccount;
typedef struct _TubaInstanceAccountClass TubaInstanceAccountClass;

#define TUBA_TYPE_REQUEST_V2 (tuba_request_v2_get_type ())
#define TUBA_REQUEST_V2(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_REQUEST_V2, TubaRequestV2))
#define TUBA_REQUEST_V2_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_REQUEST_V2, TubaRequestV2Class))
#define TUBA_IS_REQUEST_V2(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_REQUEST_V2))
#define TUBA_IS_REQUEST_V2_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_REQUEST_V2))
#define TUBA_REQUEST_V2_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_REQUEST_V2, TubaRequestV2Class))

typedef struct _TubaRequestV2 TubaRequestV2;
typedef struct _TubaRequestV2Class TubaRequestV2Class;

#define TUBA_TYPE_APPLICATION (tuba_application_get_type ())
#define TUBA_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_APPLICATION, TubaApplication))
#define TUBA_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_APPLICATION, TubaApplicationClass))
#define TUBA_IS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_APPLICATION))
#define TUBA_IS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_APPLICATION))
#define TUBA_APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_APPLICATION, TubaApplicationClass))

typedef struct _TubaApplication TubaApplication;
typedef struct _TubaApplicationClass TubaApplicationClass;

#define TUBA_DIALOGS_TYPE_MAIN_WINDOW (tuba_dialogs_main_window_get_type ())
#define TUBA_DIALOGS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindow))
#define TUBA_DIALOGS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindowClass))
#define TUBA_DIALOGS_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW))
#define TUBA_DIALOGS_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_TYPE_MAIN_WINDOW))
#define TUBA_DIALOGS_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindowClass))

typedef struct _TubaDialogsMainWindow TubaDialogsMainWindow;
typedef struct _TubaDialogsMainWindowClass TubaDialogsMainWindowClass;

#define TUBA_VIEWS_TYPE_BASE (tuba_views_base_get_type ())
#define TUBA_VIEWS_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_BASE, TubaViewsBase))
#define TUBA_VIEWS_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_BASE, TubaViewsBaseClass))
#define TUBA_VIEWS_IS_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_BASE))
#define TUBA_VIEWS_IS_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_BASE))
#define TUBA_VIEWS_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_BASE, TubaViewsBaseClass))

typedef struct _TubaViewsBase TubaViewsBase;
typedef struct _TubaViewsBaseClass TubaViewsBaseClass;

#define TUBA_VIEWS_TYPE_CONTENT_BASE (tuba_views_content_base_get_type ())
#define TUBA_VIEWS_CONTENT_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBase))
#define TUBA_VIEWS_CONTENT_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBaseClass))
#define TUBA_VIEWS_IS_CONTENT_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE))
#define TUBA_VIEWS_IS_CONTENT_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_CONTENT_BASE))
#define TUBA_VIEWS_CONTENT_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBaseClass))

typedef struct _TubaViewsContentBase TubaViewsContentBase;
typedef struct _TubaViewsContentBaseClass TubaViewsContentBaseClass;

#define TUBA_VIEWS_TYPE_TIMELINE (tuba_views_timeline_get_type ())
#define TUBA_VIEWS_TIMELINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimeline))
#define TUBA_VIEWS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimelineClass))
#define TUBA_VIEWS_IS_TIMELINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_TIMELINE))
#define TUBA_VIEWS_IS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_TIMELINE))
#define TUBA_VIEWS_TIMELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimelineClass))

typedef struct _TubaViewsTimeline TubaViewsTimeline;
typedef struct _TubaViewsTimelineClass TubaViewsTimelineClass;

#define TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST (tuba_views_notification_requests_list_get_type ())
#define TUBA_VIEWS_NOTIFICATION_REQUESTS_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST, TubaViewsNotificationRequestsList))
#define TUBA_VIEWS_NOTIFICATION_REQUESTS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST, TubaViewsNotificationRequestsListClass))
#define TUBA_VIEWS_IS_NOTIFICATION_REQUESTS_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST))
#define TUBA_VIEWS_IS_NOTIFICATION_REQUESTS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST))
#define TUBA_VIEWS_NOTIFICATION_REQUESTS_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_NOTIFICATION_REQUESTS_LIST, TubaViewsNotificationRequestsListClass))

typedef struct _TubaViewsNotificationRequestsList TubaViewsNotificationRequestsList;
typedef struct _TubaViewsNotificationRequestsListClass TubaViewsNotificationRequestsListClass;
enum  {
	TUBA_WIDGETS_NOTIFICATION_REQUEST_DISMISSED_SIGNAL,
	TUBA_WIDGETS_NOTIFICATION_REQUEST_ACCEPTED_SIGNAL,
	TUBA_WIDGETS_NOTIFICATION_REQUEST_NUM_SIGNALS
};
static guint tuba_widgets_notification_request_signals[TUBA_WIDGETS_NOTIFICATION_REQUEST_NUM_SIGNALS] = {0};

struct _TubaWidgetsNotificationRequest {
	GtkListBoxRow parent_instance;
	TubaWidgetsNotificationRequestPrivate * priv;
	GtkBox* btns_box;
};

struct _TubaWidgetsNotificationRequestClass {
	GtkListBoxRowClass parent_class;
};

struct _TubaWidgetsNotificationRequestPrivate {
	TubaAPINotificationFilterRequest* request;
};

static gint TubaWidgetsNotificationRequest_private_offset;
static gpointer tuba_widgets_notification_request_parent_class = NULL;
VALA_EXTERN TubaAccountStore* tuba_accounts;
VALA_EXTERN TubaApplication* tuba_app;

VALA_EXTERN GType tuba_widgets_notification_request_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsNotificationRequest, g_object_unref)
VALA_EXTERN GType tuba_entity_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaEntity, g_object_unref)
VALA_EXTERN GType tuba_api_notification_filter_request_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPINotificationFilterRequest, g_object_unref)
VALA_EXTERN TubaWidgetsNotificationRequest* tuba_widgets_notification_request_new (TubaAPINotificationFilterRequest* request);
VALA_EXTERN TubaWidgetsNotificationRequest* tuba_widgets_notification_request_construct (GType object_type,
                                                                             TubaAPINotificationFilterRequest* request);
VALA_EXTERN GType tuba_widgets_rich_label_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsRichLabel, g_object_unref)
VALA_EXTERN TubaWidgetsRichLabel* tuba_widgets_rich_label_new (const gchar* text);
VALA_EXTERN TubaWidgetsRichLabel* tuba_widgets_rich_label_construct (GType object_type,
                                                         const gchar* text);
VALA_EXTERN void tuba_widgets_rich_label_set_use_markup (TubaWidgetsRichLabel* self,
                                             gboolean value);
VALA_EXTERN void tuba_widgets_rich_label_set_smaller_emoji_pixel_size (TubaWidgetsRichLabel* self,
                                                           gboolean value);
VALA_EXTERN GType tuba_api_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAccount, g_object_unref)
VALA_EXTERN TubaAPIAccount* tuba_api_notification_filter_request_get_account (TubaAPINotificationFilterRequest* self);
VALA_EXTERN GeeHashMap* tuba_api_account_get_emojis_map (TubaAPIAccount* self);
VALA_EXTERN void tuba_widgets_rich_label_set_instance_emojis (TubaWidgetsRichLabel* self,
                                                  GeeHashMap* value);
VALA_EXTERN const gchar* tuba_api_account_get_display_name (TubaAPIAccount* self);
VALA_EXTERN void tuba_widgets_rich_label_set_label (TubaWidgetsRichLabel* self,
                                        const gchar* value);
VALA_EXTERN gchar* tuba_api_account_get_handle (TubaAPIAccount* self);
VALA_EXTERN GType tuba_widgets_avatar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsAvatar, g_object_unref)
VALA_EXTERN TubaWidgetsAvatar* tuba_widgets_avatar_new (void);
VALA_EXTERN TubaWidgetsAvatar* tuba_widgets_avatar_construct (GType object_type);
VALA_EXTERN void tuba_widgets_avatar_set_account (TubaWidgetsAvatar* self,
                                      TubaAPIAccount* value);
VALA_EXTERN const gchar* tuba_api_notification_filter_request_get_notifications_count (TubaAPINotificationFilterRequest* self);
VALA_EXTERN void tuba_widgets_notification_request_on_dismiss (TubaWidgetsNotificationRequest* self);
static void _tuba_widgets_notification_request_on_dismiss_gtk_button_clicked (GtkButton* _sender,
                                                                       gpointer self);
VALA_EXTERN void tuba_widgets_notification_request_on_accept (TubaWidgetsNotificationRequest* self);
static void _tuba_widgets_notification_request_on_accept_gtk_button_clicked (GtkButton* _sender,
                                                                      gpointer self);
VALA_EXTERN const gchar* tuba_api_notification_filter_request_get_id (TubaAPINotificationFilterRequest* self);
VALA_EXTERN GType tuba_request_v2_method_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType tuba_account_store_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAccountStore, g_object_unref)
VALA_EXTERN GType tuba_instance_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaInstanceAccount, g_object_unref)
VALA_EXTERN TubaInstanceAccount* tuba_account_store_get_active (TubaAccountStore* self);
VALA_EXTERN GType tuba_request_v2_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaRequestV2, g_object_unref)
VALA_EXTERN TubaRequestV2* tuba_request_v2_new (const gchar* url,
                                    TubaRequestV2Method method);
VALA_EXTERN TubaRequestV2* tuba_request_v2_construct (GType object_type,
                                          const gchar* url,
                                          TubaRequestV2Method method);
VALA_EXTERN void tuba_request_v2_set_account (TubaRequestV2* self,
                                  TubaInstanceAccount* value);
VALA_EXTERN void tuba_widgets_notification_request_open (TubaWidgetsNotificationRequest* self);
VALA_EXTERN GType tuba_application_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaApplication, g_object_unref)
VALA_EXTERN GType tuba_dialogs_main_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsMainWindow, g_object_unref)
VALA_EXTERN TubaDialogsMainWindow* tuba_application_get_main_window (TubaApplication* self);
VALA_EXTERN GType tuba_views_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsBase, g_object_unref)
VALA_EXTERN TubaViewsBase* tuba_dialogs_main_window_open_view (TubaDialogsMainWindow* self,
                                                   TubaViewsBase* view);
VALA_EXTERN const gchar* tuba_api_account_get_id (TubaAPIAccount* self);
VALA_EXTERN TubaViewsNotificationRequestsList* tuba_views_notification_requests_list_new (const gchar* account_id,
                                                                              const gchar* account_handle,
                                                                              TubaWidgetsNotificationRequest* notification_req_wdg);
VALA_EXTERN TubaViewsNotificationRequestsList* tuba_views_notification_requests_list_construct (GType object_type,
                                                                                    const gchar* account_id,
                                                                                    const gchar* account_handle,
                                                                                    TubaWidgetsNotificationRequest* notification_req_wdg);
VALA_EXTERN GType tuba_views_content_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsContentBase, g_object_unref)
VALA_EXTERN GType tuba_views_timeline_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsTimeline, g_object_unref)
VALA_EXTERN GType tuba_views_notification_requests_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsNotificationRequestsList, g_object_unref)
static void g_cclosure_user_marshal_VOID__OBJECT_OBJECT (GClosure * closure,
                                                  GValue * return_value,
                                                  guint n_param_values,
                                                  const GValue * param_values,
                                                  gpointer invocation_hint,
                                                  gpointer marshal_data);
static void tuba_widgets_notification_request_finalize (GObject * obj);
static GType tuba_widgets_notification_request_get_type_once (void);
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
tuba_widgets_notification_request_get_instance_private (TubaWidgetsNotificationRequest* self)
{
	return G_STRUCT_MEMBER_P (self, TubaWidgetsNotificationRequest_private_offset);
}

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

static void
_tuba_widgets_notification_request_on_dismiss_gtk_button_clicked (GtkButton* _sender,
                                                                  gpointer self)
{
	tuba_widgets_notification_request_on_dismiss ((TubaWidgetsNotificationRequest*) self);
}

static void
_tuba_widgets_notification_request_on_accept_gtk_button_clicked (GtkButton* _sender,
                                                                 gpointer self)
{
	tuba_widgets_notification_request_on_accept ((TubaWidgetsNotificationRequest*) self);
}

TubaWidgetsNotificationRequest*
tuba_widgets_notification_request_construct (GType object_type,
                                             TubaAPINotificationFilterRequest* request)
{
	TubaWidgetsNotificationRequest * self = NULL;
	TubaAPINotificationFilterRequest* _tmp0_;
	GtkBox* box = NULL;
	GtkBox* _tmp1_ = NULL;
	GtkBox* name_box = NULL;
	GtkBox* _tmp2_ = NULL;
	TubaWidgetsRichLabel* name = NULL;
	TubaWidgetsRichLabel* _tmp3_ = NULL;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	GeeHashMap* _tmp6_;
	GeeHashMap* _tmp7_;
	GeeHashMap* _tmp8_;
	TubaAPIAccount* _tmp9_;
	TubaAPIAccount* _tmp10_;
	const gchar* _tmp11_;
	const gchar* _tmp12_;
	TubaAPIAccount* _tmp13_;
	TubaAPIAccount* _tmp14_;
	gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
	gchar** _tmp20_;
	GtkLabel* _tmp21_ = NULL;
	GtkLabel* _tmp22_;
	TubaAPIAccount* _tmp23_;
	TubaAPIAccount* _tmp24_;
	TubaAPIAccount* _tmp25_;
	TubaWidgetsAvatar* _tmp26_ = NULL;
	TubaWidgetsAvatar* _tmp27_;
	const gchar* _tmp28_;
	const gchar* _tmp29_;
	gchar* _tmp30_;
	gchar** _tmp31_;
	GtkLabel* _tmp32_ = NULL;
	GtkLabel* _tmp33_;
	GtkButton* dismiss_btn = NULL;
	gchar* _tmp34_;
	gchar* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	gchar** _tmp38_;
	gchar* _tmp39_;
	GtkButton* _tmp40_ = NULL;
	GtkButton* accept_btn = NULL;
	gchar* _tmp41_;
	gchar* _tmp42_;
	gchar* _tmp43_;
	gchar* _tmp44_;
	gchar** _tmp45_;
	gchar* _tmp46_;
	GtkButton* _tmp47_ = NULL;
	GtkBox* _tmp48_ = NULL;
	GtkBox* _tmp49_;
	GtkBox* _tmp50_;
	GtkBox* _tmp51_;
	g_return_val_if_fail (request != NULL, NULL);
	self = (TubaWidgetsNotificationRequest*) g_object_new (object_type, NULL);
	_tmp0_ = _g_object_ref0 (request);
	_g_object_unref0 (self->priv->request);
	self->priv->request = _tmp0_;
	_tmp1_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp1_, TRUE);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp1_, 8);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp1_, 8);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp1_, 12);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp1_, 12);
	g_object_ref_sink (_tmp1_);
	box = _tmp1_;
	_tmp2_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
	gtk_widget_set_vexpand ((GtkWidget*) _tmp2_, TRUE);
	gtk_widget_set_valign ((GtkWidget*) _tmp2_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp2_);
	name_box = _tmp2_;
	_tmp3_ = tuba_widgets_rich_label_new (NULL);
	gtk_widget_set_vexpand ((GtkWidget*) _tmp3_, TRUE);
	tuba_widgets_rich_label_set_use_markup (_tmp3_, FALSE);
	tuba_widgets_rich_label_set_smaller_emoji_pixel_size (_tmp3_, TRUE);
	g_object_ref_sink (_tmp3_);
	name = _tmp3_;
	_tmp4_ = tuba_api_notification_filter_request_get_account (request);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_account_get_emojis_map (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = _tmp7_;
	tuba_widgets_rich_label_set_instance_emojis (name, _tmp8_);
	_g_object_unref0 (_tmp8_);
	_tmp9_ = tuba_api_notification_filter_request_get_account (request);
	_tmp10_ = _tmp9_;
	_tmp11_ = tuba_api_account_get_display_name (_tmp10_);
	_tmp12_ = _tmp11_;
	tuba_widgets_rich_label_set_label (name, _tmp12_);
	gtk_box_append (name_box, (GtkWidget*) name);
	_tmp13_ = tuba_api_notification_filter_request_get_account (request);
	_tmp14_ = _tmp13_;
	_tmp15_ = tuba_api_account_get_handle (_tmp14_);
	_tmp16_ = _tmp15_;
	_tmp17_ = _tmp16_;
	_tmp18_ = g_strdup ("body");
	_tmp19_ = g_strdup ("dim-label");
	_tmp20_ = g_new0 (gchar*, 2 + 1);
	_tmp20_[0] = _tmp18_;
	_tmp20_[1] = _tmp19_;
	_tmp21_ = (GtkLabel*) gtk_label_new (_tmp17_);
	gtk_label_set_single_line_mode (_tmp21_, TRUE);
	gtk_label_set_xalign (_tmp21_, 0.0f);
	gtk_label_set_wrap (_tmp21_, TRUE);
	gtk_label_set_wrap_mode (_tmp21_, PANGO_WRAP_WORD_CHAR);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp21_, _tmp20_);
	_tmp20_ = (_vala_array_free (_tmp20_, 2, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_valign ((GtkWidget*) _tmp21_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp21_);
	_tmp22_ = _tmp21_;
	gtk_box_append (name_box, (GtkWidget*) _tmp22_);
	_g_object_unref0 (_tmp22_);
	_g_free0 (_tmp17_);
	_tmp23_ = tuba_api_notification_filter_request_get_account (request);
	_tmp24_ = _tmp23_;
	_tmp25_ = _g_object_ref0 (_tmp24_);
	_tmp26_ = tuba_widgets_avatar_new ();
	tuba_widgets_avatar_set_account (_tmp26_, _tmp25_);
	_g_object_unref0 (_tmp25_);
	gtk_widget_set_can_focus ((GtkWidget*) _tmp26_, FALSE);
	g_object_ref_sink (_tmp26_);
	_tmp27_ = _tmp26_;
	gtk_box_append (box, (GtkWidget*) _tmp27_);
	_g_object_unref0 (_tmp27_);
	gtk_box_append (box, (GtkWidget*) name_box);
	_tmp28_ = tuba_api_notification_filter_request_get_notifications_count (request);
	_tmp29_ = _tmp28_;
	_tmp30_ = g_strdup ("notification-badge");
	_tmp31_ = g_new0 (gchar*, 1 + 1);
	_tmp31_[0] = _tmp30_;
	_tmp32_ = (GtkLabel*) gtk_label_new (_tmp29_);
	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_);
	_tmp33_ = _tmp32_;
	gtk_box_append (box, (GtkWidget*) _tmp33_);
	_g_object_unref0 (_tmp33_);
	_tmp34_ = g_strdup ("user-trash-symbolic");
	_tmp35_ = g_strdup ("flat");
	_tmp36_ = g_strdup ("circular");
	_tmp37_ = g_strdup ("error");
	_tmp38_ = g_new0 (gchar*, 3 + 1);
	_tmp38_[0] = _tmp35_;
	_tmp38_[1] = _tmp36_;
	_tmp38_[2] = _tmp37_;
	_tmp39_ = g_strdup (_ ("Dismiss"));
	_tmp40_ = (GtkButton*) gtk_button_new ();
	gtk_button_set_icon_name (_tmp40_, _tmp34_);
	_g_free0 (_tmp34_);
	gtk_widget_set_valign ((GtkWidget*) _tmp40_, GTK_ALIGN_CENTER);
	gtk_widget_set_halign ((GtkWidget*) _tmp40_, GTK_ALIGN_CENTER);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp40_, _tmp38_);
	_tmp38_ = (_vala_array_free (_tmp38_, 3, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp40_, _tmp39_);
	_g_free0 (_tmp39_);
	g_object_ref_sink (_tmp40_);
	dismiss_btn = _tmp40_;
	g_signal_connect_object (dismiss_btn, "clicked", (GCallback) _tuba_widgets_notification_request_on_dismiss_gtk_button_clicked, self, 0);
	_tmp41_ = g_strdup ("tuba-check-round-outline-symbolic");
	_tmp42_ = g_strdup ("flat");
	_tmp43_ = g_strdup ("circular");
	_tmp44_ = g_strdup ("success");
	_tmp45_ = g_new0 (gchar*, 3 + 1);
	_tmp45_[0] = _tmp42_;
	_tmp45_[1] = _tmp43_;
	_tmp45_[2] = _tmp44_;
	_tmp46_ = g_strdup (_ ("Accept"));
	_tmp47_ = (GtkButton*) gtk_button_new ();
	gtk_button_set_icon_name (_tmp47_, _tmp41_);
	_g_free0 (_tmp41_);
	gtk_widget_set_valign ((GtkWidget*) _tmp47_, GTK_ALIGN_CENTER);
	gtk_widget_set_halign ((GtkWidget*) _tmp47_, GTK_ALIGN_CENTER);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp47_, _tmp45_);
	_tmp45_ = (_vala_array_free (_tmp45_, 3, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp47_, _tmp46_);
	_g_free0 (_tmp46_);
	g_object_ref_sink (_tmp47_);
	accept_btn = _tmp47_;
	g_signal_connect_object (accept_btn, "clicked", (GCallback) _tuba_widgets_notification_request_on_accept_gtk_button_clicked, self, 0);
	_tmp48_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp48_, TRUE);
	gtk_widget_set_halign ((GtkWidget*) _tmp48_, GTK_ALIGN_END);
	g_object_ref_sink (_tmp48_);
	_g_object_unref0 (self->btns_box);
	self->btns_box = _tmp48_;
	_tmp49_ = self->btns_box;
	gtk_box_append (_tmp49_, (GtkWidget*) dismiss_btn);
	_tmp50_ = self->btns_box;
	gtk_box_append (_tmp50_, (GtkWidget*) accept_btn);
	_tmp51_ = self->btns_box;
	gtk_box_append (box, (GtkWidget*) _tmp51_);
	gtk_list_box_row_set_child ((GtkListBoxRow*) self, (GtkWidget*) box);
	_g_object_unref0 (accept_btn);
	_g_object_unref0 (dismiss_btn);
	_g_object_unref0 (name);
	_g_object_unref0 (name_box);
	_g_object_unref0 (box);
	return self;
}

TubaWidgetsNotificationRequest*
tuba_widgets_notification_request_new (TubaAPINotificationFilterRequest* request)
{
	return tuba_widgets_notification_request_construct (TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, request);
}

static const gchar*
string_to_string (const gchar* self)
{
	const gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	result = self;
	return result;
}

void
tuba_widgets_notification_request_on_dismiss (TubaWidgetsNotificationRequest* self)
{
	TubaAPINotificationFilterRequest* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	TubaAccountStore* _tmp6_;
	TubaInstanceAccount* _tmp7_;
	TubaInstanceAccount* _tmp8_;
	TubaInstanceAccount* _tmp9_;
	TubaRequestV2* _tmp10_ = NULL;
	TubaRequestV2* _tmp11_;
	TubaAPINotificationFilterRequest* _tmp12_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->request;
	_tmp1_ = tuba_api_notification_filter_request_get_id (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = string_to_string (_tmp2_);
	_tmp4_ = g_strconcat ("/api/v1/notifications/requests/", _tmp3_, "/dismiss", NULL);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_accounts;
	_tmp7_ = tuba_account_store_get_active (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = _g_object_ref0 (_tmp8_);
	_tmp10_ = tuba_request_v2_new (_tmp5_, TUBA_REQUEST_V2_METHOD_POST);
	tuba_request_v2_set_account (_tmp10_, _tmp9_);
	_g_object_unref0 (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = self->priv->request;
	g_signal_emit (self, tuba_widgets_notification_request_signals[TUBA_WIDGETS_NOTIFICATION_REQUEST_DISMISSED_SIGNAL], 0, _tmp11_, _tmp12_);
	_g_object_unref0 (_tmp11_);
	_g_free0 (_tmp5_);
}

void
tuba_widgets_notification_request_on_accept (TubaWidgetsNotificationRequest* self)
{
	TubaAPINotificationFilterRequest* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	TubaAccountStore* _tmp6_;
	TubaInstanceAccount* _tmp7_;
	TubaInstanceAccount* _tmp8_;
	TubaInstanceAccount* _tmp9_;
	TubaRequestV2* _tmp10_ = NULL;
	TubaRequestV2* _tmp11_;
	TubaAPINotificationFilterRequest* _tmp12_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->request;
	_tmp1_ = tuba_api_notification_filter_request_get_id (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = string_to_string (_tmp2_);
	_tmp4_ = g_strconcat ("/api/v1/notifications/requests/", _tmp3_, "/accept", NULL);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_accounts;
	_tmp7_ = tuba_account_store_get_active (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = _g_object_ref0 (_tmp8_);
	_tmp10_ = tuba_request_v2_new (_tmp5_, TUBA_REQUEST_V2_METHOD_POST);
	tuba_request_v2_set_account (_tmp10_, _tmp9_);
	_g_object_unref0 (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = self->priv->request;
	g_signal_emit (self, tuba_widgets_notification_request_signals[TUBA_WIDGETS_NOTIFICATION_REQUEST_ACCEPTED_SIGNAL], 0, _tmp11_, _tmp12_);
	_g_object_unref0 (_tmp11_);
	_g_free0 (_tmp5_);
}

void
tuba_widgets_notification_request_open (TubaWidgetsNotificationRequest* self)
{
	TubaApplication* _tmp0_;
	TubaDialogsMainWindow* _tmp1_;
	TubaDialogsMainWindow* _tmp2_;
	TubaAPINotificationFilterRequest* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	TubaAPINotificationFilterRequest* _tmp8_;
	TubaAPIAccount* _tmp9_;
	TubaAPIAccount* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	TubaViewsNotificationRequestsList* _tmp14_;
	TubaViewsNotificationRequestsList* _tmp15_;
	TubaViewsBase* _tmp16_;
	TubaViewsBase* _tmp17_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_app;
	_tmp1_ = tuba_application_get_main_window (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = self->priv->request;
	_tmp4_ = tuba_api_notification_filter_request_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_account_get_id (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = self->priv->request;
	_tmp9_ = tuba_api_notification_filter_request_get_account (_tmp8_);
	_tmp10_ = _tmp9_;
	_tmp11_ = tuba_api_account_get_handle (_tmp10_);
	_tmp12_ = _tmp11_;
	_tmp13_ = _tmp12_;
	_tmp14_ = tuba_views_notification_requests_list_new (_tmp7_, _tmp13_, self);
	g_object_ref_sink (_tmp14_);
	_tmp15_ = _tmp14_;
	_tmp16_ = tuba_dialogs_main_window_open_view (_tmp2_, (TubaViewsBase*) _tmp15_);
	_tmp17_ = _tmp16_;
	_g_object_unref0 (_tmp17_);
	_g_object_unref0 (_tmp15_);
	_g_free0 (_tmp13_);
}

static void
g_cclosure_user_marshal_VOID__OBJECT_OBJECT (GClosure * closure,
                                             GValue * return_value,
                                             guint n_param_values,
                                             const GValue * param_values,
                                             gpointer invocation_hint,
                                             gpointer marshal_data)
{
	typedef void (*GMarshalFunc_VOID__OBJECT_OBJECT) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer data2);
	register GMarshalFunc_VOID__OBJECT_OBJECT callback;
	register GCClosure * cc;
	register gpointer data1;
	register gpointer data2;
	cc = (GCClosure *) closure;
	g_return_if_fail (n_param_values == 3);
	if (G_CCLOSURE_SWAP_DATA (closure)) {
		data1 = closure->data;
		data2 = param_values->data[0].v_pointer;
	} else {
		data1 = param_values->data[0].v_pointer;
		data2 = closure->data;
	}
	callback = (GMarshalFunc_VOID__OBJECT_OBJECT) (marshal_data ? marshal_data : cc->callback);
	callback (data1, g_value_get_object (param_values + 1), g_value_get_object (param_values + 2), data2);
}

static void
tuba_widgets_notification_request_class_init (TubaWidgetsNotificationRequestClass * klass,
                                              gpointer klass_data)
{
	tuba_widgets_notification_request_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &TubaWidgetsNotificationRequest_private_offset);
	G_OBJECT_CLASS (klass)->finalize = tuba_widgets_notification_request_finalize;
	tuba_widgets_notification_request_signals[TUBA_WIDGETS_NOTIFICATION_REQUEST_DISMISSED_SIGNAL] = g_signal_new ("dismissed", TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__OBJECT_OBJECT, G_TYPE_NONE, 2, TUBA_TYPE_REQUEST_V2, TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST);
	tuba_widgets_notification_request_signals[TUBA_WIDGETS_NOTIFICATION_REQUEST_ACCEPTED_SIGNAL] = g_signal_new ("accepted", TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__OBJECT_OBJECT, G_TYPE_NONE, 2, TUBA_TYPE_REQUEST_V2, TUBA_API_NOTIFICATION_FILTER_TYPE_REQUEST);
}

static void
tuba_widgets_notification_request_instance_init (TubaWidgetsNotificationRequest * self,
                                                 gpointer klass)
{
	self->priv = tuba_widgets_notification_request_get_instance_private (self);
}

static void
tuba_widgets_notification_request_finalize (GObject * obj)
{
	TubaWidgetsNotificationRequest * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_WIDGETS_TYPE_NOTIFICATION_REQUEST, TubaWidgetsNotificationRequest);
	_g_object_unref0 (self->btns_box);
	_g_object_unref0 (self->priv->request);
	G_OBJECT_CLASS (tuba_widgets_notification_request_parent_class)->finalize (obj);
}

 G_GNUC_NO_INLINE static GType
tuba_widgets_notification_request_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (TubaWidgetsNotificationRequestClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tuba_widgets_notification_request_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TubaWidgetsNotificationRequest), 0, (GInstanceInitFunc) tuba_widgets_notification_request_instance_init, NULL };
	GType tuba_widgets_notification_request_type_id;
	tuba_widgets_notification_request_type_id = g_type_register_static (gtk_list_box_row_get_type (), "TubaWidgetsNotificationRequest", &g_define_type_info, G_TYPE_FLAG_NONE);
	TubaWidgetsNotificationRequest_private_offset = g_type_add_instance_private (tuba_widgets_notification_request_type_id, sizeof (TubaWidgetsNotificationRequestPrivate));
	return tuba_widgets_notification_request_type_id;
}

GType
tuba_widgets_notification_request_get_type (void)
{
	static GType tuba_widgets_notification_request_type_id__once = 0;
	if (g_once_init_enter_pointer (&tuba_widgets_notification_request_type_id__once)) {
		GType tuba_widgets_notification_request_type_id;
		tuba_widgets_notification_request_type_id = tuba_widgets_notification_request_get_type_once ();
		g_once_init_leave_pointer (&tuba_widgets_notification_request_type_id__once, tuba_widgets_notification_request_type_id);
	}
	return tuba_widgets_notification_request_type_id__once;
}

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);
}

