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

/*
* Copyright (c) 2019 Alexander Mikhaylenko <exalm7659@gmail.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 3 as published by the Free Software Foundation.
*
* 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser 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
*/

#include <glib-object.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
#include <glib.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 SCREENSHOT_TYPE_INTROSPECTABLE_PROXY (screenshot_introspectable_proxy_get_type ())
#define SCREENSHOT_INTROSPECTABLE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCREENSHOT_TYPE_INTROSPECTABLE_PROXY, ScreenshotIntrospectableProxy))
#define SCREENSHOT_IS_INTROSPECTABLE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCREENSHOT_TYPE_INTROSPECTABLE_PROXY))
#define SCREENSHOT_INTROSPECTABLE_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SCREENSHOT_TYPE_INTROSPECTABLE_PROXY, ScreenshotIntrospectableProxyIface))

typedef struct _ScreenshotIntrospectableProxy ScreenshotIntrospectableProxy;
typedef struct _ScreenshotIntrospectableProxyIface ScreenshotIntrospectableProxyIface;

#define SCREENSHOT_TYPE_INTROSPECTABLE_PROXY_PROXY (screenshot_introspectable_proxy_proxy_get_type ())
typedef GDBusProxy ScreenshotIntrospectableProxyProxy;
typedef GDBusProxyClass ScreenshotIntrospectableProxyProxyClass;
#define _g_free0(var) (var = (g_free (var), NULL))

#define SCREENSHOT_TYPE_SCREENSHOT_PROXY (screenshot_screenshot_proxy_get_type ())
#define SCREENSHOT_SCREENSHOT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCREENSHOT_TYPE_SCREENSHOT_PROXY, ScreenshotScreenshotProxy))
#define SCREENSHOT_IS_SCREENSHOT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCREENSHOT_TYPE_SCREENSHOT_PROXY))
#define SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SCREENSHOT_TYPE_SCREENSHOT_PROXY, ScreenshotScreenshotProxyIface))

typedef struct _ScreenshotScreenshotProxy ScreenshotScreenshotProxy;
typedef struct _ScreenshotScreenshotProxyIface ScreenshotScreenshotProxyIface;

#define SCREENSHOT_TYPE_SCREENSHOT_PROXY_PROXY (screenshot_screenshot_proxy_proxy_get_type ())
typedef GDBusProxy ScreenshotScreenshotProxyProxy;
typedef GDBusProxyClass ScreenshotScreenshotProxyProxyClass;
typedef struct _ScreenshotScreenshotProxyConcealTextReadyData ScreenshotScreenshotProxyConcealTextReadyData;
typedef struct _ScreenshotScreenshotProxyScreenshotReadyData ScreenshotScreenshotProxyScreenshotReadyData;
typedef struct _ScreenshotScreenshotProxyScreenshotWindowReadyData ScreenshotScreenshotProxyScreenshotWindowReadyData;
typedef struct _ScreenshotScreenshotProxyScreenshotAreaReadyData ScreenshotScreenshotProxyScreenshotAreaReadyData;
typedef struct _ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData;
typedef struct _ScreenshotScreenshotProxySelectAreaReadyData ScreenshotScreenshotProxySelectAreaReadyData;

struct _ScreenshotIntrospectableProxyIface {
	GTypeInterface parent_iface;
	gchar* (*introspect) (ScreenshotIntrospectableProxy* self, GError** error);
};

struct _ScreenshotScreenshotProxyIface {
	GTypeInterface parent_iface;
	void (*conceal_text) (ScreenshotScreenshotProxy* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*conceal_text_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, GError** error);
	void (*screenshot) (ScreenshotScreenshotProxy* self, gboolean include_cursor, gboolean flash, const gchar* filename, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*screenshot_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, gboolean* success, gchar** filename_used, GError** error);
	void (*screenshot_window) (ScreenshotScreenshotProxy* self, gboolean include_frame, gboolean include_cursor, gboolean flash, const gchar* filename, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*screenshot_window_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, gboolean* success, gchar** filename_used, GError** error);
	void (*screenshot_area) (ScreenshotScreenshotProxy* self, gint x, gint y, gint width, gint height, gboolean flash, const gchar* filename, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*screenshot_area_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, gboolean* success, gchar** filename_used, GError** error);
	void (*screenshot_area_with_cursor) (ScreenshotScreenshotProxy* self, gint x, gint y, gint width, gint height, gboolean include_cursor, gboolean flash, const gchar* filename, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*screenshot_area_with_cursor_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, gboolean* success, gchar** filename_used, GError** error);
	void (*select_area) (ScreenshotScreenshotProxy* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*select_area_finish) (ScreenshotScreenshotProxy* self, GAsyncResult* _res_, gint* x, gint* y, gint* width, gint* height, GError** error);
};

struct _ScreenshotScreenshotProxyConcealTextReadyData {
	GDBusMethodInvocation* _invocation_;
};

struct _ScreenshotScreenshotProxyScreenshotReadyData {
	GDBusMethodInvocation* _invocation_;
	gboolean include_cursor;
	gboolean flash;
	gchar* filename;
};

struct _ScreenshotScreenshotProxyScreenshotWindowReadyData {
	GDBusMethodInvocation* _invocation_;
	gboolean include_frame;
	gboolean include_cursor;
	gboolean flash;
	gchar* filename;
};

struct _ScreenshotScreenshotProxyScreenshotAreaReadyData {
	GDBusMethodInvocation* _invocation_;
	gint x;
	gint y;
	gint width;
	gint height;
	gboolean flash;
	gchar* filename;
};

struct _ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData {
	GDBusMethodInvocation* _invocation_;
	gint x;
	gint y;
	gint width;
	gint height;
	gboolean include_cursor;
	gboolean flash;
	gchar* filename;
};

struct _ScreenshotScreenshotProxySelectAreaReadyData {
	GDBusMethodInvocation* _invocation_;
};

VALA_EXTERN GType screenshot_introspectable_proxy_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN guint screenshot_introspectable_proxy_register_object (void* object,
                                                       GDBusConnection* connection,
                                                       const gchar* path,
                                                       GError** error);
VALA_EXTERN GType screenshot_introspectable_proxy_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScreenshotIntrospectableProxy, g_object_unref)
VALA_EXTERN gchar* screenshot_introspectable_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                                   GError** error);
static GType screenshot_introspectable_proxy_get_type_once (void);
static void screenshot_introspectable_proxy_proxy_g_signal (GDBusProxy* proxy,
                                                     const gchar* sender_name,
                                                     const gchar* signal_name,
                                                     GVariant* parameters);
static gchar* screenshot_introspectable_proxy_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                                         GError** error);
static void screenshot_introspectable_proxy_proxy_screenshot_introspectable_proxy_interface_init (ScreenshotIntrospectableProxyIface* iface);
static void _dbus_screenshot_introspectable_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                                       GVariant* _parameters_,
                                                       GDBusMethodInvocation* invocation);
static void screenshot_introspectable_proxy_dbus_interface_method_call (GDBusConnection* connection,
                                                                 const gchar* sender,
                                                                 const gchar* object_path,
                                                                 const gchar* interface_name,
                                                                 const gchar* method_name,
                                                                 GVariant* parameters,
                                                                 GDBusMethodInvocation* invocation,
                                                                 gpointer user_data);
static GVariant* screenshot_introspectable_proxy_dbus_interface_get_property (GDBusConnection* connection,
                                                                       const gchar* sender,
                                                                       const gchar* object_path,
                                                                       const gchar* interface_name,
                                                                       const gchar* property_name,
                                                                       GError** error,
                                                                       gpointer user_data);
static gboolean screenshot_introspectable_proxy_dbus_interface_set_property (GDBusConnection* connection,
                                                                      const gchar* sender,
                                                                      const gchar* object_path,
                                                                      const gchar* interface_name,
                                                                      const gchar* property_name,
                                                                      GVariant* value,
                                                                      GError** error,
                                                                      gpointer user_data);
static void _screenshot_introspectable_proxy_unregister_object (gpointer user_data);
VALA_EXTERN GType screenshot_screenshot_proxy_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN guint screenshot_screenshot_proxy_register_object (void* object,
                                                   GDBusConnection* connection,
                                                   const gchar* path,
                                                   GError** error);
VALA_EXTERN GType screenshot_screenshot_proxy_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScreenshotScreenshotProxy, g_object_unref)
VALA_EXTERN void screenshot_screenshot_proxy_conceal_text (ScreenshotScreenshotProxy* self,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_conceal_text_finish (ScreenshotScreenshotProxy* self,
                                                      GAsyncResult* _res_,
                                                      GError** error);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot (ScreenshotScreenshotProxy* self,
                                             gboolean include_cursor,
                                             gboolean flash,
                                             const gchar* filename,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_finish (ScreenshotScreenshotProxy* self,
                                                    GAsyncResult* _res_,
                                                    gboolean* success,
                                                    gchar** filename_used,
                                                    GError** error);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_window (ScreenshotScreenshotProxy* self,
                                                    gboolean include_frame,
                                                    gboolean include_cursor,
                                                    gboolean flash,
                                                    const gchar* filename,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_window_finish (ScreenshotScreenshotProxy* self,
                                                           GAsyncResult* _res_,
                                                           gboolean* success,
                                                           gchar** filename_used,
                                                           GError** error);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_area (ScreenshotScreenshotProxy* self,
                                                  gint x,
                                                  gint y,
                                                  gint width,
                                                  gint height,
                                                  gboolean flash,
                                                  const gchar* filename,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_area_finish (ScreenshotScreenshotProxy* self,
                                                         GAsyncResult* _res_,
                                                         gboolean* success,
                                                         gchar** filename_used,
                                                         GError** error);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_area_with_cursor (ScreenshotScreenshotProxy* self,
                                                              gint x,
                                                              gint y,
                                                              gint width,
                                                              gint height,
                                                              gboolean include_cursor,
                                                              gboolean flash,
                                                              const gchar* filename,
                                                              GAsyncReadyCallback _callback_,
                                                              gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_screenshot_area_with_cursor_finish (ScreenshotScreenshotProxy* self,
                                                                     GAsyncResult* _res_,
                                                                     gboolean* success,
                                                                     gchar** filename_used,
                                                                     GError** error);
VALA_EXTERN void screenshot_screenshot_proxy_select_area (ScreenshotScreenshotProxy* self,
                                              GAsyncReadyCallback _callback_,
                                              gpointer _user_data_);
VALA_EXTERN void screenshot_screenshot_proxy_select_area_finish (ScreenshotScreenshotProxy* self,
                                                     GAsyncResult* _res_,
                                                     gint* x,
                                                     gint* y,
                                                     gint* width,
                                                     gint* height,
                                                     GError** error);
static GType screenshot_screenshot_proxy_get_type_once (void);
static void screenshot_screenshot_proxy_proxy_g_signal (GDBusProxy* proxy,
                                                 const gchar* sender_name,
                                                 const gchar* signal_name,
                                                 GVariant* parameters);
static void _vala_g_async_ready_callback (GObject *source_object,
                                   GAsyncResult *res,
                                   void *user_data);
static void screenshot_screenshot_proxy_proxy_conceal_text_async (ScreenshotScreenshotProxy* self,
                                                           GAsyncReadyCallback _callback_,
                                                           gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_conceal_text_finish (ScreenshotScreenshotProxy* self,
                                                            GAsyncResult* _res_,
                                                            GError** error);
static void screenshot_screenshot_proxy_proxy_screenshot_async (ScreenshotScreenshotProxy* self,
                                                         gboolean include_cursor,
                                                         gboolean flash,
                                                         const gchar* filename,
                                                         GAsyncReadyCallback _callback_,
                                                         gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_screenshot_finish (ScreenshotScreenshotProxy* self,
                                                          GAsyncResult* _res_,
                                                          gboolean* success,
                                                          gchar** filename_used,
                                                          GError** error);
static void screenshot_screenshot_proxy_proxy_screenshot_window_async (ScreenshotScreenshotProxy* self,
                                                                gboolean include_frame,
                                                                gboolean include_cursor,
                                                                gboolean flash,
                                                                const gchar* filename,
                                                                GAsyncReadyCallback _callback_,
                                                                gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_screenshot_window_finish (ScreenshotScreenshotProxy* self,
                                                                 GAsyncResult* _res_,
                                                                 gboolean* success,
                                                                 gchar** filename_used,
                                                                 GError** error);
static void screenshot_screenshot_proxy_proxy_screenshot_area_async (ScreenshotScreenshotProxy* self,
                                                              gint x,
                                                              gint y,
                                                              gint width,
                                                              gint height,
                                                              gboolean flash,
                                                              const gchar* filename,
                                                              GAsyncReadyCallback _callback_,
                                                              gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_screenshot_area_finish (ScreenshotScreenshotProxy* self,
                                                               GAsyncResult* _res_,
                                                               gboolean* success,
                                                               gchar** filename_used,
                                                               GError** error);
static void screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_async (ScreenshotScreenshotProxy* self,
                                                                          gint x,
                                                                          gint y,
                                                                          gint width,
                                                                          gint height,
                                                                          gboolean include_cursor,
                                                                          gboolean flash,
                                                                          const gchar* filename,
                                                                          GAsyncReadyCallback _callback_,
                                                                          gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_finish (ScreenshotScreenshotProxy* self,
                                                                           GAsyncResult* _res_,
                                                                           gboolean* success,
                                                                           gchar** filename_used,
                                                                           GError** error);
static void screenshot_screenshot_proxy_proxy_select_area_async (ScreenshotScreenshotProxy* self,
                                                          GAsyncReadyCallback _callback_,
                                                          gpointer _user_data_);
static void screenshot_screenshot_proxy_proxy_select_area_finish (ScreenshotScreenshotProxy* self,
                                                           GAsyncResult* _res_,
                                                           gint* x,
                                                           gint* y,
                                                           gint* width,
                                                           gint* height,
                                                           GError** error);
static void screenshot_screenshot_proxy_proxy_screenshot_screenshot_proxy_interface_init (ScreenshotScreenshotProxyIface* iface);
static void _dbus_screenshot_screenshot_proxy_conceal_text (ScreenshotScreenshotProxy* self,
                                                     GVariant* _parameters_,
                                                     GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_conceal_text_ready (GObject * source_object,
                                                           GAsyncResult * _res_,
                                                           gpointer _user_data_);
static void _dbus_screenshot_screenshot_proxy_screenshot (ScreenshotScreenshotProxy* self,
                                                   GVariant* _parameters_,
                                                   GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_screenshot_ready (GObject * source_object,
                                                         GAsyncResult * _res_,
                                                         gpointer _user_data_);
static void _dbus_screenshot_screenshot_proxy_screenshot_window (ScreenshotScreenshotProxy* self,
                                                          GVariant* _parameters_,
                                                          GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_screenshot_window_ready (GObject * source_object,
                                                                GAsyncResult * _res_,
                                                                gpointer _user_data_);
static void _dbus_screenshot_screenshot_proxy_screenshot_area (ScreenshotScreenshotProxy* self,
                                                        GVariant* _parameters_,
                                                        GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_screenshot_area_ready (GObject * source_object,
                                                              GAsyncResult * _res_,
                                                              gpointer _user_data_);
static void _dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor (ScreenshotScreenshotProxy* self,
                                                                    GVariant* _parameters_,
                                                                    GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor_ready (GObject * source_object,
                                                                          GAsyncResult * _res_,
                                                                          gpointer _user_data_);
static void _dbus_screenshot_screenshot_proxy_select_area (ScreenshotScreenshotProxy* self,
                                                    GVariant* _parameters_,
                                                    GDBusMethodInvocation* invocation);
static void _dbus_screenshot_screenshot_proxy_select_area_ready (GObject * source_object,
                                                          GAsyncResult * _res_,
                                                          gpointer _user_data_);
static void screenshot_screenshot_proxy_dbus_interface_method_call (GDBusConnection* connection,
                                                             const gchar* sender,
                                                             const gchar* object_path,
                                                             const gchar* interface_name,
                                                             const gchar* method_name,
                                                             GVariant* parameters,
                                                             GDBusMethodInvocation* invocation,
                                                             gpointer user_data);
static GVariant* screenshot_screenshot_proxy_dbus_interface_get_property (GDBusConnection* connection,
                                                                   const gchar* sender,
                                                                   const gchar* object_path,
                                                                   const gchar* interface_name,
                                                                   const gchar* property_name,
                                                                   GError** error,
                                                                   gpointer user_data);
static gboolean screenshot_screenshot_proxy_dbus_interface_set_property (GDBusConnection* connection,
                                                                  const gchar* sender,
                                                                  const gchar* object_path,
                                                                  const gchar* interface_name,
                                                                  const gchar* property_name,
                                                                  GVariant* value,
                                                                  GError** error,
                                                                  gpointer user_data);
static void _screenshot_screenshot_proxy_unregister_object (gpointer user_data);

static const GDBusArgInfo _screenshot_introspectable_proxy_dbus_arg_info_introspect_result = {-1, "result", "s", NULL};
static const GDBusArgInfo * const _screenshot_introspectable_proxy_dbus_arg_info_introspect_in[] = {NULL};
static const GDBusArgInfo * const _screenshot_introspectable_proxy_dbus_arg_info_introspect_out[] = {&_screenshot_introspectable_proxy_dbus_arg_info_introspect_result, NULL};
static const GDBusMethodInfo _screenshot_introspectable_proxy_dbus_method_info_introspect = {-1, "Introspect", (GDBusArgInfo **) (&_screenshot_introspectable_proxy_dbus_arg_info_introspect_in), (GDBusArgInfo **) (&_screenshot_introspectable_proxy_dbus_arg_info_introspect_out), NULL};
static const GDBusMethodInfo * const _screenshot_introspectable_proxy_dbus_method_info[] = {&_screenshot_introspectable_proxy_dbus_method_info_introspect, NULL};
static const GDBusSignalInfo * const _screenshot_introspectable_proxy_dbus_signal_info[] = {NULL};
static const GDBusPropertyInfo * const _screenshot_introspectable_proxy_dbus_property_info[] = {NULL};
static const GDBusInterfaceInfo _screenshot_introspectable_proxy_dbus_interface_info = {-1, "org.freedesktop.DBus.Introspectable", (GDBusMethodInfo **) (&_screenshot_introspectable_proxy_dbus_method_info), (GDBusSignalInfo **) (&_screenshot_introspectable_proxy_dbus_signal_info), (GDBusPropertyInfo **) (&_screenshot_introspectable_proxy_dbus_property_info), NULL};
static const GDBusInterfaceVTable _screenshot_introspectable_proxy_dbus_interface_vtable = {screenshot_introspectable_proxy_dbus_interface_method_call, screenshot_introspectable_proxy_dbus_interface_get_property, screenshot_introspectable_proxy_dbus_interface_set_property};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_conceal_text_in[] = {NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_conceal_text_out[] = {NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_conceal_text = {-1, "ConcealText", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_conceal_text_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_conceal_text_out), NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_include_cursor = {-1, "include_cursor", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_flash = {-1, "flash", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_filename = {-1, "filename", "s", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_success = {-1, "success", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_filename_used = {-1, "filename_used", "s", NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_in[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_include_cursor, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_flash, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_filename, NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_out[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_success, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_filename_used, NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_screenshot = {-1, "Screenshot", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_out), NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_include_frame = {-1, "include_frame", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_include_cursor = {-1, "include_cursor", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_flash = {-1, "flash", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_filename = {-1, "filename", "s", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_success = {-1, "success", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_filename_used = {-1, "filename_used", "s", NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_in[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_include_frame, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_include_cursor, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_flash, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_filename, NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_out[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_success, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_filename_used, NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_screenshot_window = {-1, "ScreenshotWindow", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_window_out), NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_x = {-1, "x", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_y = {-1, "y", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_width = {-1, "width", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_height = {-1, "height", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_flash = {-1, "flash", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_filename = {-1, "filename", "s", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_success = {-1, "success", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_filename_used = {-1, "filename_used", "s", NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_in[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_x, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_y, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_width, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_height, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_flash, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_filename, NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_out[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_success, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_filename_used, NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_screenshot_area = {-1, "ScreenshotArea", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_out), NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_x = {-1, "x", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_y = {-1, "y", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_width = {-1, "width", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_height = {-1, "height", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_include_cursor = {-1, "include_cursor", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_flash = {-1, "flash", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_filename = {-1, "filename", "s", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_success = {-1, "success", "b", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_filename_used = {-1, "filename_used", "s", NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_in[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_x, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_y, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_width, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_height, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_include_cursor, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_flash, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_filename, NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_out[] = {&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_success, &_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_filename_used, NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_screenshot_area_with_cursor = {-1, "ScreenshotAreaWithCursor", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_screenshot_area_with_cursor_out), NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_select_area_x = {-1, "x", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_select_area_y = {-1, "y", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_select_area_width = {-1, "width", "i", NULL};
static const GDBusArgInfo _screenshot_screenshot_proxy_dbus_arg_info_select_area_height = {-1, "height", "i", NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_select_area_in[] = {NULL};
static const GDBusArgInfo * const _screenshot_screenshot_proxy_dbus_arg_info_select_area_out[] = {&_screenshot_screenshot_proxy_dbus_arg_info_select_area_x, &_screenshot_screenshot_proxy_dbus_arg_info_select_area_y, &_screenshot_screenshot_proxy_dbus_arg_info_select_area_width, &_screenshot_screenshot_proxy_dbus_arg_info_select_area_height, NULL};
static const GDBusMethodInfo _screenshot_screenshot_proxy_dbus_method_info_select_area = {-1, "SelectArea", (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_select_area_in), (GDBusArgInfo **) (&_screenshot_screenshot_proxy_dbus_arg_info_select_area_out), NULL};
static const GDBusMethodInfo * const _screenshot_screenshot_proxy_dbus_method_info[] = {&_screenshot_screenshot_proxy_dbus_method_info_conceal_text, &_screenshot_screenshot_proxy_dbus_method_info_screenshot, &_screenshot_screenshot_proxy_dbus_method_info_screenshot_window, &_screenshot_screenshot_proxy_dbus_method_info_screenshot_area, &_screenshot_screenshot_proxy_dbus_method_info_screenshot_area_with_cursor, &_screenshot_screenshot_proxy_dbus_method_info_select_area, NULL};
static const GDBusSignalInfo * const _screenshot_screenshot_proxy_dbus_signal_info[] = {NULL};
static const GDBusPropertyInfo * const _screenshot_screenshot_proxy_dbus_property_info[] = {NULL};
static const GDBusInterfaceInfo _screenshot_screenshot_proxy_dbus_interface_info = {-1, "org.gnome.Shell.Screenshot", (GDBusMethodInfo **) (&_screenshot_screenshot_proxy_dbus_method_info), (GDBusSignalInfo **) (&_screenshot_screenshot_proxy_dbus_signal_info), (GDBusPropertyInfo **) (&_screenshot_screenshot_proxy_dbus_property_info), NULL};
static const GDBusInterfaceVTable _screenshot_screenshot_proxy_dbus_interface_vtable = {screenshot_screenshot_proxy_dbus_interface_method_call, screenshot_screenshot_proxy_dbus_interface_get_property, screenshot_screenshot_proxy_dbus_interface_set_property};

gchar*
screenshot_introspectable_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                            GError** error)
{
	ScreenshotIntrospectableProxyIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = SCREENSHOT_INTROSPECTABLE_PROXY_GET_INTERFACE (self);
	if (_iface_->introspect) {
		return _iface_->introspect (self, error);
	}
	return NULL;
}

static void
screenshot_introspectable_proxy_default_init (ScreenshotIntrospectableProxyIface * iface,
                                              gpointer iface_data)
{
}

static GType
screenshot_introspectable_proxy_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ScreenshotIntrospectableProxyIface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) screenshot_introspectable_proxy_default_init, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
	GType screenshot_introspectable_proxy_type_id;
	screenshot_introspectable_proxy_type_id = g_type_register_static (G_TYPE_INTERFACE, "ScreenshotIntrospectableProxy", &g_define_type_info, 0);
	g_type_interface_add_prerequisite (screenshot_introspectable_proxy_type_id, G_TYPE_OBJECT);
	g_type_set_qdata (screenshot_introspectable_proxy_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) screenshot_introspectable_proxy_proxy_get_type);
	g_type_set_qdata (screenshot_introspectable_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.freedesktop.DBus.Introspectable");
	g_type_set_qdata (screenshot_introspectable_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-info"), (void*) (&_screenshot_introspectable_proxy_dbus_interface_info));
	g_type_set_qdata (screenshot_introspectable_proxy_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) screenshot_introspectable_proxy_register_object);
	return screenshot_introspectable_proxy_type_id;
}

GType
screenshot_introspectable_proxy_get_type (void)
{
	static volatile gsize screenshot_introspectable_proxy_type_id__once = 0;
	if (g_once_init_enter (&screenshot_introspectable_proxy_type_id__once)) {
		GType screenshot_introspectable_proxy_type_id;
		screenshot_introspectable_proxy_type_id = screenshot_introspectable_proxy_get_type_once ();
		g_once_init_leave (&screenshot_introspectable_proxy_type_id__once, screenshot_introspectable_proxy_type_id);
	}
	return screenshot_introspectable_proxy_type_id__once;
}

G_DEFINE_TYPE_EXTENDED (ScreenshotIntrospectableProxyProxy, screenshot_introspectable_proxy_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (SCREENSHOT_TYPE_INTROSPECTABLE_PROXY, screenshot_introspectable_proxy_proxy_screenshot_introspectable_proxy_interface_init) )
static void
screenshot_introspectable_proxy_proxy_class_init (ScreenshotIntrospectableProxyProxyClass* klass)
{
	G_DBUS_PROXY_CLASS (klass)->g_signal = screenshot_introspectable_proxy_proxy_g_signal;
}

static void
screenshot_introspectable_proxy_proxy_g_signal (GDBusProxy* proxy,
                                                const gchar* sender_name,
                                                const gchar* signal_name,
                                                GVariant* parameters)
{
}

static void
screenshot_introspectable_proxy_proxy_init (ScreenshotIntrospectableProxyProxy* self)
{
	g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_screenshot_introspectable_proxy_dbus_interface_info));
}

static gchar*
screenshot_introspectable_proxy_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                                  GError** error)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gchar* _result = NULL;
	GVariant* _tmp0_;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.freedesktop.DBus.Introspectable", "Introspect");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	_reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error);
	g_object_unref (_message);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp0_ = g_variant_iter_next_value (&_reply_iter);
	_result = g_variant_dup_string (_tmp0_, NULL);
	g_variant_unref (_tmp0_);
	g_object_unref (_reply_message);
	return _result;
}

static void
screenshot_introspectable_proxy_proxy_screenshot_introspectable_proxy_interface_init (ScreenshotIntrospectableProxyIface* iface)
{
	iface->introspect = screenshot_introspectable_proxy_proxy_introspect;
}

static void
_dbus_screenshot_introspectable_proxy_introspect (ScreenshotIntrospectableProxy* self,
                                                  GVariant* _parameters_,
                                                  GDBusMethodInvocation* invocation)
{
	GError* error = NULL;
	GVariantIter _arguments_iter;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gchar* result;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	result = screenshot_introspectable_proxy_introspect (self, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_string (result));
	_g_free0 (result);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}

static void
screenshot_introspectable_proxy_dbus_interface_method_call (GDBusConnection* connection,
                                                            const gchar* sender,
                                                            const gchar* object_path,
                                                            const gchar* interface_name,
                                                            const gchar* method_name,
                                                            GVariant* parameters,
                                                            GDBusMethodInvocation* invocation,
                                                            gpointer user_data)
{
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (method_name, "Introspect") == 0) {
		_dbus_screenshot_introspectable_proxy_introspect (object, parameters, invocation);
	} else {
		g_object_unref (invocation);
	}
}

static GVariant*
screenshot_introspectable_proxy_dbus_interface_get_property (GDBusConnection* connection,
                                                             const gchar* sender,
                                                             const gchar* object_path,
                                                             const gchar* interface_name,
                                                             const gchar* property_name,
                                                             GError** error,
                                                             gpointer user_data)
{
	return NULL;
}

static gboolean
screenshot_introspectable_proxy_dbus_interface_set_property (GDBusConnection* connection,
                                                             const gchar* sender,
                                                             const gchar* object_path,
                                                             const gchar* interface_name,
                                                             const gchar* property_name,
                                                             GVariant* value,
                                                             GError** error,
                                                             gpointer user_data)
{
	return FALSE;
}

guint
screenshot_introspectable_proxy_register_object (gpointer object,
                                                 GDBusConnection* connection,
                                                 const gchar* path,
                                                 GError** error)
{
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_screenshot_introspectable_proxy_dbus_interface_info), &_screenshot_introspectable_proxy_dbus_interface_vtable, data, _screenshot_introspectable_proxy_unregister_object, error);
	if (!result) {
		return 0;
	}
	return result;
}

static void
_screenshot_introspectable_proxy_unregister_object (gpointer user_data)
{
	gpointer* data;
	data = user_data;
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}

void
screenshot_screenshot_proxy_conceal_text (ScreenshotScreenshotProxy* self,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->conceal_text) {
		_iface_->conceal_text (self, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_conceal_text_finish (ScreenshotScreenshotProxy* self,
                                                 GAsyncResult* _res_,
                                                 GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->conceal_text_finish) {
		_iface_->conceal_text_finish (self, _res_, error);
	}
}

void
screenshot_screenshot_proxy_screenshot (ScreenshotScreenshotProxy* self,
                                        gboolean include_cursor,
                                        gboolean flash,
                                        const gchar* filename,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot) {
		_iface_->screenshot (self, include_cursor, flash, filename, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_screenshot_finish (ScreenshotScreenshotProxy* self,
                                               GAsyncResult* _res_,
                                               gboolean* success,
                                               gchar** filename_used,
                                               GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_finish) {
		_iface_->screenshot_finish (self, _res_, success, filename_used, error);
	}
}

void
screenshot_screenshot_proxy_screenshot_window (ScreenshotScreenshotProxy* self,
                                               gboolean include_frame,
                                               gboolean include_cursor,
                                               gboolean flash,
                                               const gchar* filename,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_window) {
		_iface_->screenshot_window (self, include_frame, include_cursor, flash, filename, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_screenshot_window_finish (ScreenshotScreenshotProxy* self,
                                                      GAsyncResult* _res_,
                                                      gboolean* success,
                                                      gchar** filename_used,
                                                      GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_window_finish) {
		_iface_->screenshot_window_finish (self, _res_, success, filename_used, error);
	}
}

void
screenshot_screenshot_proxy_screenshot_area (ScreenshotScreenshotProxy* self,
                                             gint x,
                                             gint y,
                                             gint width,
                                             gint height,
                                             gboolean flash,
                                             const gchar* filename,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_area) {
		_iface_->screenshot_area (self, x, y, width, height, flash, filename, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_screenshot_area_finish (ScreenshotScreenshotProxy* self,
                                                    GAsyncResult* _res_,
                                                    gboolean* success,
                                                    gchar** filename_used,
                                                    GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_area_finish) {
		_iface_->screenshot_area_finish (self, _res_, success, filename_used, error);
	}
}

void
screenshot_screenshot_proxy_screenshot_area_with_cursor (ScreenshotScreenshotProxy* self,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         gboolean include_cursor,
                                                         gboolean flash,
                                                         const gchar* filename,
                                                         GAsyncReadyCallback _callback_,
                                                         gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_area_with_cursor) {
		_iface_->screenshot_area_with_cursor (self, x, y, width, height, include_cursor, flash, filename, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_screenshot_area_with_cursor_finish (ScreenshotScreenshotProxy* self,
                                                                GAsyncResult* _res_,
                                                                gboolean* success,
                                                                gchar** filename_used,
                                                                GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->screenshot_area_with_cursor_finish) {
		_iface_->screenshot_area_with_cursor_finish (self, _res_, success, filename_used, error);
	}
}

void
screenshot_screenshot_proxy_select_area (ScreenshotScreenshotProxy* self,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->select_area) {
		_iface_->select_area (self, _callback_, _user_data_);
	}
}

void
screenshot_screenshot_proxy_select_area_finish (ScreenshotScreenshotProxy* self,
                                                GAsyncResult* _res_,
                                                gint* x,
                                                gint* y,
                                                gint* width,
                                                gint* height,
                                                GError** error)
{
	ScreenshotScreenshotProxyIface* _iface_;
	_iface_ = SCREENSHOT_SCREENSHOT_PROXY_GET_INTERFACE (self);
	if (_iface_->select_area_finish) {
		_iface_->select_area_finish (self, _res_, x, y, width, height, error);
	}
}

static void
screenshot_screenshot_proxy_default_init (ScreenshotScreenshotProxyIface * iface,
                                          gpointer iface_data)
{
}

static GType
screenshot_screenshot_proxy_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ScreenshotScreenshotProxyIface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) screenshot_screenshot_proxy_default_init, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
	GType screenshot_screenshot_proxy_type_id;
	screenshot_screenshot_proxy_type_id = g_type_register_static (G_TYPE_INTERFACE, "ScreenshotScreenshotProxy", &g_define_type_info, 0);
	g_type_interface_add_prerequisite (screenshot_screenshot_proxy_type_id, G_TYPE_OBJECT);
	g_type_set_qdata (screenshot_screenshot_proxy_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) screenshot_screenshot_proxy_proxy_get_type);
	g_type_set_qdata (screenshot_screenshot_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.gnome.Shell.Screenshot");
	g_type_set_qdata (screenshot_screenshot_proxy_type_id, g_quark_from_static_string ("vala-dbus-interface-info"), (void*) (&_screenshot_screenshot_proxy_dbus_interface_info));
	g_type_set_qdata (screenshot_screenshot_proxy_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) screenshot_screenshot_proxy_register_object);
	return screenshot_screenshot_proxy_type_id;
}

GType
screenshot_screenshot_proxy_get_type (void)
{
	static volatile gsize screenshot_screenshot_proxy_type_id__once = 0;
	if (g_once_init_enter (&screenshot_screenshot_proxy_type_id__once)) {
		GType screenshot_screenshot_proxy_type_id;
		screenshot_screenshot_proxy_type_id = screenshot_screenshot_proxy_get_type_once ();
		g_once_init_leave (&screenshot_screenshot_proxy_type_id__once, screenshot_screenshot_proxy_type_id);
	}
	return screenshot_screenshot_proxy_type_id__once;
}

G_DEFINE_TYPE_EXTENDED (ScreenshotScreenshotProxyProxy, screenshot_screenshot_proxy_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (SCREENSHOT_TYPE_SCREENSHOT_PROXY, screenshot_screenshot_proxy_proxy_screenshot_screenshot_proxy_interface_init) )
static void
screenshot_screenshot_proxy_proxy_class_init (ScreenshotScreenshotProxyProxyClass* klass)
{
	G_DBUS_PROXY_CLASS (klass)->g_signal = screenshot_screenshot_proxy_proxy_g_signal;
}

static void
screenshot_screenshot_proxy_proxy_g_signal (GDBusProxy* proxy,
                                            const gchar* sender_name,
                                            const gchar* signal_name,
                                            GVariant* parameters)
{
}

static void
screenshot_screenshot_proxy_proxy_init (ScreenshotScreenshotProxyProxy* self)
{
	g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_screenshot_screenshot_proxy_dbus_interface_info));
}

static void
_vala_g_async_ready_callback (GObject *source_object,
                              GAsyncResult *res,
                              void *user_data)
{
	g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
	g_object_unref (user_data);
}

static void
screenshot_screenshot_proxy_proxy_conceal_text_async (ScreenshotScreenshotProxy* self,
                                                      GAsyncReadyCallback _callback_,
                                                      gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "ConcealText");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_conceal_text_finish (ScreenshotScreenshotProxy* self,
                                                       GAsyncResult* _res_,
                                                       GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_async (ScreenshotScreenshotProxy* self,
                                                    gboolean include_cursor,
                                                    gboolean flash,
                                                    const gchar* filename,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "Screenshot");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (include_cursor));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (flash));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (filename));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_finish (ScreenshotScreenshotProxy* self,
                                                     GAsyncResult* _res_,
                                                     gboolean* success,
                                                     gchar** filename_used,
                                                     GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gboolean _vala_success = FALSE;
	GVariant* _tmp1_;
	gchar* _vala_filename_used = NULL;
	GVariant* _tmp2_;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp1_ = g_variant_iter_next_value (&_reply_iter);
	_vala_success = g_variant_get_boolean (_tmp1_);
	g_variant_unref (_tmp1_);
	*success = _vala_success;
	_tmp2_ = g_variant_iter_next_value (&_reply_iter);
	_vala_filename_used = g_variant_dup_string (_tmp2_, NULL);
	g_variant_unref (_tmp2_);
	*filename_used = _vala_filename_used;
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_window_async (ScreenshotScreenshotProxy* self,
                                                           gboolean include_frame,
                                                           gboolean include_cursor,
                                                           gboolean flash,
                                                           const gchar* filename,
                                                           GAsyncReadyCallback _callback_,
                                                           gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "ScreenshotWindow");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (include_frame));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (include_cursor));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (flash));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (filename));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_window_finish (ScreenshotScreenshotProxy* self,
                                                            GAsyncResult* _res_,
                                                            gboolean* success,
                                                            gchar** filename_used,
                                                            GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gboolean _vala_success = FALSE;
	GVariant* _tmp3_;
	gchar* _vala_filename_used = NULL;
	GVariant* _tmp4_;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp3_ = g_variant_iter_next_value (&_reply_iter);
	_vala_success = g_variant_get_boolean (_tmp3_);
	g_variant_unref (_tmp3_);
	*success = _vala_success;
	_tmp4_ = g_variant_iter_next_value (&_reply_iter);
	_vala_filename_used = g_variant_dup_string (_tmp4_, NULL);
	g_variant_unref (_tmp4_);
	*filename_used = _vala_filename_used;
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_area_async (ScreenshotScreenshotProxy* self,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         gboolean flash,
                                                         const gchar* filename,
                                                         GAsyncReadyCallback _callback_,
                                                         gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "ScreenshotArea");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (x));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (y));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (width));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (height));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (flash));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (filename));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_area_finish (ScreenshotScreenshotProxy* self,
                                                          GAsyncResult* _res_,
                                                          gboolean* success,
                                                          gchar** filename_used,
                                                          GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gboolean _vala_success = FALSE;
	GVariant* _tmp5_;
	gchar* _vala_filename_used = NULL;
	GVariant* _tmp6_;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp5_ = g_variant_iter_next_value (&_reply_iter);
	_vala_success = g_variant_get_boolean (_tmp5_);
	g_variant_unref (_tmp5_);
	*success = _vala_success;
	_tmp6_ = g_variant_iter_next_value (&_reply_iter);
	_vala_filename_used = g_variant_dup_string (_tmp6_, NULL);
	g_variant_unref (_tmp6_);
	*filename_used = _vala_filename_used;
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_async (ScreenshotScreenshotProxy* self,
                                                                     gint x,
                                                                     gint y,
                                                                     gint width,
                                                                     gint height,
                                                                     gboolean include_cursor,
                                                                     gboolean flash,
                                                                     const gchar* filename,
                                                                     GAsyncReadyCallback _callback_,
                                                                     gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "ScreenshotAreaWithCursor");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (x));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (y));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (width));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (height));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (include_cursor));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (flash));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (filename));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_finish (ScreenshotScreenshotProxy* self,
                                                                      GAsyncResult* _res_,
                                                                      gboolean* success,
                                                                      gchar** filename_used,
                                                                      GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gboolean _vala_success = FALSE;
	GVariant* _tmp7_;
	gchar* _vala_filename_used = NULL;
	GVariant* _tmp8_;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp7_ = g_variant_iter_next_value (&_reply_iter);
	_vala_success = g_variant_get_boolean (_tmp7_);
	g_variant_unref (_tmp7_);
	*success = _vala_success;
	_tmp8_ = g_variant_iter_next_value (&_reply_iter);
	_vala_filename_used = g_variant_dup_string (_tmp8_, NULL);
	g_variant_unref (_tmp8_);
	*filename_used = _vala_filename_used;
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_select_area_async (ScreenshotScreenshotProxy* self,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.gnome.Shell.Screenshot", "SelectArea");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	if (_callback_ != NULL) {
		g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
	} else {
		g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
		g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	}
	g_object_unref (_message);
}

static void
screenshot_screenshot_proxy_proxy_select_area_finish (ScreenshotScreenshotProxy* self,
                                                      GAsyncResult* _res_,
                                                      gint* x,
                                                      gint* y,
                                                      gint* width,
                                                      gint* height,
                                                      GError** error)
{
	GAsyncResult *_inner_res;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	gint _vala_x = 0;
	GVariant* _tmp9_;
	gint _vala_y = 0;
	GVariant* _tmp10_;
	gint _vala_width = 0;
	GVariant* _tmp11_;
	gint _vala_height = 0;
	GVariant* _tmp12_;
	_inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
	_reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
	g_object_unref (_inner_res);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_tmp9_ = g_variant_iter_next_value (&_reply_iter);
	_vala_x = g_variant_get_int32 (_tmp9_);
	g_variant_unref (_tmp9_);
	*x = _vala_x;
	_tmp10_ = g_variant_iter_next_value (&_reply_iter);
	_vala_y = g_variant_get_int32 (_tmp10_);
	g_variant_unref (_tmp10_);
	*y = _vala_y;
	_tmp11_ = g_variant_iter_next_value (&_reply_iter);
	_vala_width = g_variant_get_int32 (_tmp11_);
	g_variant_unref (_tmp11_);
	*width = _vala_width;
	_tmp12_ = g_variant_iter_next_value (&_reply_iter);
	_vala_height = g_variant_get_int32 (_tmp12_);
	g_variant_unref (_tmp12_);
	*height = _vala_height;
	g_object_unref (_reply_message);
}

static void
screenshot_screenshot_proxy_proxy_screenshot_screenshot_proxy_interface_init (ScreenshotScreenshotProxyIface* iface)
{
	iface->conceal_text = screenshot_screenshot_proxy_proxy_conceal_text_async;
	iface->conceal_text_finish = screenshot_screenshot_proxy_proxy_conceal_text_finish;
	iface->screenshot = screenshot_screenshot_proxy_proxy_screenshot_async;
	iface->screenshot_finish = screenshot_screenshot_proxy_proxy_screenshot_finish;
	iface->screenshot_window = screenshot_screenshot_proxy_proxy_screenshot_window_async;
	iface->screenshot_window_finish = screenshot_screenshot_proxy_proxy_screenshot_window_finish;
	iface->screenshot_area = screenshot_screenshot_proxy_proxy_screenshot_area_async;
	iface->screenshot_area_finish = screenshot_screenshot_proxy_proxy_screenshot_area_finish;
	iface->screenshot_area_with_cursor = screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_async;
	iface->screenshot_area_with_cursor_finish = screenshot_screenshot_proxy_proxy_screenshot_area_with_cursor_finish;
	iface->select_area = screenshot_screenshot_proxy_proxy_select_area_async;
	iface->select_area_finish = screenshot_screenshot_proxy_proxy_select_area_finish;
}

static void
_dbus_screenshot_screenshot_proxy_conceal_text (ScreenshotScreenshotProxy* self,
                                                GVariant* _parameters_,
                                                GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxyConcealTextReadyData* _ready_data;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxyConcealTextReadyData);
	_ready_data->_invocation_ = invocation;
	screenshot_screenshot_proxy_conceal_text (self, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_conceal_text_ready, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_conceal_text_ready (GObject * source_object,
                                                      GAsyncResult * _res_,
                                                      gpointer _user_data_)
{
	ScreenshotScreenshotProxyConcealTextReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_conceal_text_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	g_slice_free (ScreenshotScreenshotProxyConcealTextReadyData, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_screenshot (ScreenshotScreenshotProxy* self,
                                              GVariant* _parameters_,
                                              GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxyScreenshotReadyData* _ready_data;
	GVariant* _tmp13_;
	GVariant* _tmp14_;
	GVariant* _tmp15_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxyScreenshotReadyData);
	_ready_data->_invocation_ = invocation;
	_tmp13_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->include_cursor = g_variant_get_boolean (_tmp13_);
	g_variant_unref (_tmp13_);
	_tmp14_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->flash = g_variant_get_boolean (_tmp14_);
	g_variant_unref (_tmp14_);
	_tmp15_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->filename = g_variant_dup_string (_tmp15_, NULL);
	g_variant_unref (_tmp15_);
	screenshot_screenshot_proxy_screenshot (self, _ready_data->include_cursor, _ready_data->flash, _ready_data->filename, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_screenshot_ready, _ready_data);
	_error:
	;
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_ready (GObject * source_object,
                                                    GAsyncResult * _res_,
                                                    gpointer _user_data_)
{
	ScreenshotScreenshotProxyScreenshotReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gboolean success = FALSE;
	gchar* filename_used = NULL;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_screenshot_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &success, &filename_used, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (success));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_string (filename_used));
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (_ready_data->filename);
	_g_free0 (filename_used);
	g_slice_free (ScreenshotScreenshotProxyScreenshotReadyData, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_window (ScreenshotScreenshotProxy* self,
                                                     GVariant* _parameters_,
                                                     GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxyScreenshotWindowReadyData* _ready_data;
	GVariant* _tmp16_;
	GVariant* _tmp17_;
	GVariant* _tmp18_;
	GVariant* _tmp19_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxyScreenshotWindowReadyData);
	_ready_data->_invocation_ = invocation;
	_tmp16_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->include_frame = g_variant_get_boolean (_tmp16_);
	g_variant_unref (_tmp16_);
	_tmp17_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->include_cursor = g_variant_get_boolean (_tmp17_);
	g_variant_unref (_tmp17_);
	_tmp18_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->flash = g_variant_get_boolean (_tmp18_);
	g_variant_unref (_tmp18_);
	_tmp19_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->filename = g_variant_dup_string (_tmp19_, NULL);
	g_variant_unref (_tmp19_);
	screenshot_screenshot_proxy_screenshot_window (self, _ready_data->include_frame, _ready_data->include_cursor, _ready_data->flash, _ready_data->filename, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_screenshot_window_ready, _ready_data);
	_error:
	;
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_window_ready (GObject * source_object,
                                                           GAsyncResult * _res_,
                                                           gpointer _user_data_)
{
	ScreenshotScreenshotProxyScreenshotWindowReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gboolean success = FALSE;
	gchar* filename_used = NULL;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_screenshot_window_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &success, &filename_used, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (success));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_string (filename_used));
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (_ready_data->filename);
	_g_free0 (filename_used);
	g_slice_free (ScreenshotScreenshotProxyScreenshotWindowReadyData, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_area (ScreenshotScreenshotProxy* self,
                                                   GVariant* _parameters_,
                                                   GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxyScreenshotAreaReadyData* _ready_data;
	GVariant* _tmp20_;
	GVariant* _tmp21_;
	GVariant* _tmp22_;
	GVariant* _tmp23_;
	GVariant* _tmp24_;
	GVariant* _tmp25_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxyScreenshotAreaReadyData);
	_ready_data->_invocation_ = invocation;
	_tmp20_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->x = g_variant_get_int32 (_tmp20_);
	g_variant_unref (_tmp20_);
	_tmp21_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->y = g_variant_get_int32 (_tmp21_);
	g_variant_unref (_tmp21_);
	_tmp22_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->width = g_variant_get_int32 (_tmp22_);
	g_variant_unref (_tmp22_);
	_tmp23_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->height = g_variant_get_int32 (_tmp23_);
	g_variant_unref (_tmp23_);
	_tmp24_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->flash = g_variant_get_boolean (_tmp24_);
	g_variant_unref (_tmp24_);
	_tmp25_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->filename = g_variant_dup_string (_tmp25_, NULL);
	g_variant_unref (_tmp25_);
	screenshot_screenshot_proxy_screenshot_area (self, _ready_data->x, _ready_data->y, _ready_data->width, _ready_data->height, _ready_data->flash, _ready_data->filename, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_screenshot_area_ready, _ready_data);
	_error:
	;
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_area_ready (GObject * source_object,
                                                         GAsyncResult * _res_,
                                                         gpointer _user_data_)
{
	ScreenshotScreenshotProxyScreenshotAreaReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gboolean success = FALSE;
	gchar* filename_used = NULL;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_screenshot_area_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &success, &filename_used, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (success));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_string (filename_used));
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (_ready_data->filename);
	_g_free0 (filename_used);
	g_slice_free (ScreenshotScreenshotProxyScreenshotAreaReadyData, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor (ScreenshotScreenshotProxy* self,
                                                               GVariant* _parameters_,
                                                               GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData* _ready_data;
	GVariant* _tmp26_;
	GVariant* _tmp27_;
	GVariant* _tmp28_;
	GVariant* _tmp29_;
	GVariant* _tmp30_;
	GVariant* _tmp31_;
	GVariant* _tmp32_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData);
	_ready_data->_invocation_ = invocation;
	_tmp26_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->x = g_variant_get_int32 (_tmp26_);
	g_variant_unref (_tmp26_);
	_tmp27_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->y = g_variant_get_int32 (_tmp27_);
	g_variant_unref (_tmp27_);
	_tmp28_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->width = g_variant_get_int32 (_tmp28_);
	g_variant_unref (_tmp28_);
	_tmp29_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->height = g_variant_get_int32 (_tmp29_);
	g_variant_unref (_tmp29_);
	_tmp30_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->include_cursor = g_variant_get_boolean (_tmp30_);
	g_variant_unref (_tmp30_);
	_tmp31_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->flash = g_variant_get_boolean (_tmp31_);
	g_variant_unref (_tmp31_);
	_tmp32_ = g_variant_iter_next_value (&_arguments_iter);
	_ready_data->filename = g_variant_dup_string (_tmp32_, NULL);
	g_variant_unref (_tmp32_);
	screenshot_screenshot_proxy_screenshot_area_with_cursor (self, _ready_data->x, _ready_data->y, _ready_data->width, _ready_data->height, _ready_data->include_cursor, _ready_data->flash, _ready_data->filename, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor_ready, _ready_data);
	_error:
	;
}

static void
_dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor_ready (GObject * source_object,
                                                                     GAsyncResult * _res_,
                                                                     gpointer _user_data_)
{
	ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gboolean success = FALSE;
	gchar* filename_used = NULL;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_screenshot_area_with_cursor_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &success, &filename_used, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (success));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_string (filename_used));
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (_ready_data->filename);
	_g_free0 (filename_used);
	g_slice_free (ScreenshotScreenshotProxyScreenshotAreaWithCursorReadyData, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_select_area (ScreenshotScreenshotProxy* self,
                                               GVariant* _parameters_,
                                               GDBusMethodInvocation* invocation)
{
	GVariantIter _arguments_iter;
	ScreenshotScreenshotProxySelectAreaReadyData* _ready_data;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_ready_data = g_slice_new0 (ScreenshotScreenshotProxySelectAreaReadyData);
	_ready_data->_invocation_ = invocation;
	screenshot_screenshot_proxy_select_area (self, (GAsyncReadyCallback) _dbus_screenshot_screenshot_proxy_select_area_ready, _ready_data);
}

static void
_dbus_screenshot_screenshot_proxy_select_area_ready (GObject * source_object,
                                                     GAsyncResult * _res_,
                                                     gpointer _user_data_)
{
	ScreenshotScreenshotProxySelectAreaReadyData* _ready_data;
	GDBusMethodInvocation* invocation;
	GError* error = NULL;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	gint x = 0;
	gint y = 0;
	gint width = 0;
	gint height = 0;
	_ready_data = _user_data_;
	invocation = _ready_data->_invocation_;
	screenshot_screenshot_proxy_select_area_finish ((ScreenshotScreenshotProxy*) source_object, _res_, &x, &y, &width, &height, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (x));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (y));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (width));
	g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (height));
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	g_slice_free (ScreenshotScreenshotProxySelectAreaReadyData, _ready_data);
}

static void
screenshot_screenshot_proxy_dbus_interface_method_call (GDBusConnection* connection,
                                                        const gchar* sender,
                                                        const gchar* object_path,
                                                        const gchar* interface_name,
                                                        const gchar* method_name,
                                                        GVariant* parameters,
                                                        GDBusMethodInvocation* invocation,
                                                        gpointer user_data)
{
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (method_name, "ConcealText") == 0) {
		_dbus_screenshot_screenshot_proxy_conceal_text (object, parameters, invocation);
	} else if (strcmp (method_name, "Screenshot") == 0) {
		_dbus_screenshot_screenshot_proxy_screenshot (object, parameters, invocation);
	} else if (strcmp (method_name, "ScreenshotWindow") == 0) {
		_dbus_screenshot_screenshot_proxy_screenshot_window (object, parameters, invocation);
	} else if (strcmp (method_name, "ScreenshotArea") == 0) {
		_dbus_screenshot_screenshot_proxy_screenshot_area (object, parameters, invocation);
	} else if (strcmp (method_name, "ScreenshotAreaWithCursor") == 0) {
		_dbus_screenshot_screenshot_proxy_screenshot_area_with_cursor (object, parameters, invocation);
	} else if (strcmp (method_name, "SelectArea") == 0) {
		_dbus_screenshot_screenshot_proxy_select_area (object, parameters, invocation);
	} else {
		g_object_unref (invocation);
	}
}

static GVariant*
screenshot_screenshot_proxy_dbus_interface_get_property (GDBusConnection* connection,
                                                         const gchar* sender,
                                                         const gchar* object_path,
                                                         const gchar* interface_name,
                                                         const gchar* property_name,
                                                         GError** error,
                                                         gpointer user_data)
{
	return NULL;
}

static gboolean
screenshot_screenshot_proxy_dbus_interface_set_property (GDBusConnection* connection,
                                                         const gchar* sender,
                                                         const gchar* object_path,
                                                         const gchar* interface_name,
                                                         const gchar* property_name,
                                                         GVariant* value,
                                                         GError** error,
                                                         gpointer user_data)
{
	return FALSE;
}

guint
screenshot_screenshot_proxy_register_object (gpointer object,
                                             GDBusConnection* connection,
                                             const gchar* path,
                                             GError** error)
{
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_screenshot_screenshot_proxy_dbus_interface_info), &_screenshot_screenshot_proxy_dbus_interface_vtable, data, _screenshot_screenshot_proxy_unregister_object, error);
	if (!result) {
		return 0;
	}
	return result;
}

static void
_screenshot_screenshot_proxy_unregister_object (gpointer user_data)
{
	gpointer* data;
	data = user_data;
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}

