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

/*
 * Copyright (C) 2010 Michal Hruby <michal.mhr@gmail.com>
 * Copyright (C) 2010 Alberto Aldegheri <albyrock87+dev@gmail.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * Authored by Alberto Aldegheri <albyrock87+dev@gmail.com>
 *
 */

#include <synapse-core.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gtk/gtk.h>
#include <gdk/gdk.h>
#include <gee.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 SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG (synapse_gui_key_combo_config_get_type ())
#define SYNAPSE_GUI_KEY_COMBO_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfigClass))
#define SYNAPSE_GUI_IS_KEY_COMBO_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG))
#define SYNAPSE_GUI_IS_KEY_COMBO_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfigClass))

typedef struct _SynapseGuiKeyComboConfig SynapseGuiKeyComboConfig;
typedef struct _SynapseGuiKeyComboConfigClass SynapseGuiKeyComboConfigClass;
typedef struct _SynapseGuiKeyComboConfigPrivate SynapseGuiKeyComboConfigPrivate;

#define SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE (synapse_gui_key_combo_config_key_combo_storage_get_type ())
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE, SynapseGuiKeyComboConfigKeyComboStorage))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE, SynapseGuiKeyComboConfigKeyComboStorageClass))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_IS_KEY_COMBO_STORAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_IS_KEY_COMBO_STORAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE, SynapseGuiKeyComboConfigKeyComboStorageClass))

typedef struct _SynapseGuiKeyComboConfigKeyComboStorage SynapseGuiKeyComboConfigKeyComboStorage;
typedef struct _SynapseGuiKeyComboConfigKeyComboStorageClass SynapseGuiKeyComboConfigKeyComboStorageClass;
enum  {
	SYNAPSE_GUI_KEY_COMBO_CONFIG_0_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NUM_PROPERTIES];
typedef enum  {
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_ACTIVATE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_CHAR,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_WORD,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_RESULT,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_RESULT,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_CATEGORY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_CATEGORY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PANE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PANE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE_WITHOUT_HIDE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PAGE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PAGE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_FIRST_RESULT,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_LAST_RESULT,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_CLEAR_SEARCH_OR_HIDE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE_SELECTION,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXIT_SYNAPSE,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_TOTAL_COMMANDS
} SynapseGuiKeyComboConfigCommands;

#define SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_COMMANDS (synapse_gui_key_combo_config_commands_get_type ())
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
typedef struct _SynapseGuiKeyComboConfigKeyComboStoragePrivate SynapseGuiKeyComboConfigKeyComboStoragePrivate;

#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD (synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type ())
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, SynapseGuiKeyComboConfigKeyComboStorageModCmd))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, SynapseGuiKeyComboConfigKeyComboStorageModCmdClass))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_IS_MOD_CMD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_IS_MOD_CMD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, SynapseGuiKeyComboConfigKeyComboStorageModCmdClass))

typedef struct _SynapseGuiKeyComboConfigKeyComboStorageModCmd SynapseGuiKeyComboConfigKeyComboStorageModCmd;
typedef struct _SynapseGuiKeyComboConfigKeyComboStorageModCmdClass SynapseGuiKeyComboConfigKeyComboStorageModCmdClass;
enum  {
	SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_0_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_key_combo_config_key_combo_storage_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_NUM_PROPERTIES];
typedef struct _SynapseGuiKeyComboConfigKeyComboStorageModCmdPrivate SynapseGuiKeyComboConfigKeyComboStorageModCmdPrivate;
enum  {
	SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD_0_PROPERTY,
	SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_key_combo_config_key_combo_storage_mod_cmd_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_MOD_CMD_NUM_PROPERTIES];

struct _SynapseGuiKeyComboConfig {
	SynapseConfigObject parent_instance;
	SynapseGuiKeyComboConfigPrivate * priv;
};

struct _SynapseGuiKeyComboConfigClass {
	SynapseConfigObjectClass parent_class;
};

struct _SynapseGuiKeyComboConfigPrivate {
	gchar* _activate;
	gchar* _execute;
	gchar* _execute_without_hide;
	gchar* _delete_char;
	gchar* _delete_word;
	gchar* _alternative_delete_char;
	gchar* _next_match;
	gchar* _prev_match;
	gchar* _first_match;
	gchar* _last_match;
	gchar* _next_match_page;
	gchar* _prev_match_page;
	gchar* _next_category;
	gchar* _prev_category;
	gchar* _next_search_type;
	gchar* _prev_search_type;
	gchar* _cancel;
	gchar* _paste;
	gchar* _alt_paste;
	gchar* _exit;
	SynapseGuiKeyComboConfigKeyComboStorage* kcs;
};

struct _SynapseGuiKeyComboConfigKeyComboStorage {
	GObject parent_instance;
	SynapseGuiKeyComboConfigKeyComboStoragePrivate * priv;
};

struct _SynapseGuiKeyComboConfigKeyComboStorageClass {
	GObjectClass parent_class;
};

struct _SynapseGuiKeyComboConfigKeyComboStoragePrivate {
	GeeMap* map;
};

struct _SynapseGuiKeyComboConfigKeyComboStorageModCmd {
	GObject parent_instance;
	SynapseGuiKeyComboConfigKeyComboStorageModCmdPrivate * priv;
	GdkModifierType mods;
	SynapseGuiKeyComboConfigCommands cmd;
};

struct _SynapseGuiKeyComboConfigKeyComboStorageModCmdClass {
	GObjectClass parent_class;
};

static gint SynapseGuiKeyComboConfig_private_offset;
static gpointer synapse_gui_key_combo_config_parent_class = NULL;
VALA_EXTERN guint synapse_gui_key_combo_config_mod_normalize_mask;
guint synapse_gui_key_combo_config_mod_normalize_mask = 0U;
static gint SynapseGuiKeyComboConfigKeyComboStorage_private_offset;
static gpointer synapse_gui_key_combo_config_key_combo_storage_parent_class = NULL;
static gpointer synapse_gui_key_combo_config_key_combo_storage_mod_cmd_parent_class = NULL;

VALA_EXTERN GType synapse_gui_key_combo_config_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiKeyComboConfig, g_object_unref)
static GType synapse_gui_key_combo_config_key_combo_storage_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiKeyComboConfigKeyComboStorage, g_object_unref)
VALA_EXTERN GType synapse_gui_key_combo_config_commands_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void synapse_gui_key_combo_config_update_bindings (SynapseGuiKeyComboConfig* self);
static void synapse_gui_key_combo_config_key_combo_storage_clear (SynapseGuiKeyComboConfigKeyComboStorage* self);
VALA_EXTERN void synapse_gui_key_combo_config_name_to_key_mod (const gchar* name,
                                                   guint* keyval,
                                                   GdkModifierType* mod);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_activate (SynapseGuiKeyComboConfig* self);
static void synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (SynapseGuiKeyComboConfigKeyComboStorage* self,
                                                                          guint keyval,
                                                                          GdkModifierType mods,
                                                                          SynapseGuiKeyComboConfigCommands cmd);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_execute (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_execute_without_hide (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_delete_char (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_alternative_delete_char (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_delete_word (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_next_match (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_prev_match (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_first_match (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_last_match (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_next_match_page (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_prev_match_page (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_next_category (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_prev_category (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_next_search_type (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_prev_search_type (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_cancel (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_paste (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_alt_paste (SynapseGuiKeyComboConfig* self);
VALA_EXTERN const gchar* synapse_gui_key_combo_config_get_exit (SynapseGuiKeyComboConfig* self);
VALA_EXTERN SynapseGuiKeyComboConfigCommands synapse_gui_key_combo_config_get_command_from_eventkey (SynapseGuiKeyComboConfig* self,
                                                                                         GdkEventKey* event);
static SynapseGuiKeyComboConfigCommands synapse_gui_key_combo_config_key_combo_storage_get_command_for_keycombo (SynapseGuiKeyComboConfigKeyComboStorage* self,
                                                                                                          guint keyval,
                                                                                                          GdkModifierType mods);
VALA_EXTERN gchar* synapse_gui_key_combo_config_get_name_from_key (guint keyval,
                                                       GdkModifierType mods);
VALA_EXTERN SynapseGuiKeyComboConfig* synapse_gui_key_combo_config_new (void);
VALA_EXTERN SynapseGuiKeyComboConfig* synapse_gui_key_combo_config_construct (GType object_type);
VALA_EXTERN void synapse_gui_key_combo_config_set_activate (SynapseGuiKeyComboConfig* self,
                                                const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_execute (SynapseGuiKeyComboConfig* self,
                                               const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_execute_without_hide (SynapseGuiKeyComboConfig* self,
                                                            const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_delete_char (SynapseGuiKeyComboConfig* self,
                                                   const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_delete_word (SynapseGuiKeyComboConfig* self,
                                                   const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_alternative_delete_char (SynapseGuiKeyComboConfig* self,
                                                               const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_next_match (SynapseGuiKeyComboConfig* self,
                                                  const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_prev_match (SynapseGuiKeyComboConfig* self,
                                                  const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_first_match (SynapseGuiKeyComboConfig* self,
                                                   const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_last_match (SynapseGuiKeyComboConfig* self,
                                                  const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_next_match_page (SynapseGuiKeyComboConfig* self,
                                                       const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_prev_match_page (SynapseGuiKeyComboConfig* self,
                                                       const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_next_category (SynapseGuiKeyComboConfig* self,
                                                     const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_prev_category (SynapseGuiKeyComboConfig* self,
                                                     const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_next_search_type (SynapseGuiKeyComboConfig* self,
                                                        const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_prev_search_type (SynapseGuiKeyComboConfig* self,
                                                        const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_cancel (SynapseGuiKeyComboConfig* self,
                                              const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_paste (SynapseGuiKeyComboConfig* self,
                                             const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_alt_paste (SynapseGuiKeyComboConfig* self,
                                                 const gchar* value);
VALA_EXTERN void synapse_gui_key_combo_config_set_exit (SynapseGuiKeyComboConfig* self,
                                            const gchar* value);
static GType synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiKeyComboConfigKeyComboStorageModCmd, g_object_unref)
static SynapseGuiKeyComboConfigKeyComboStorageModCmd* synapse_gui_key_combo_config_key_combo_storage_mod_cmd_new (GdkModifierType mods,
                                                                                                           SynapseGuiKeyComboConfigCommands cmd);
static SynapseGuiKeyComboConfigKeyComboStorageModCmd* synapse_gui_key_combo_config_key_combo_storage_mod_cmd_construct (GType object_type,
                                                                                                                 GdkModifierType mods,
                                                                                                                 SynapseGuiKeyComboConfigCommands cmd);
static gint synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare (SynapseGuiKeyComboConfigKeyComboStorageModCmd* a,
                                                                     SynapseGuiKeyComboConfigKeyComboStorageModCmd* b);
static gint _synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare_gcompare_data_func (gconstpointer a,
                                                                                         gconstpointer b,
                                                                                         gpointer self);
static SynapseGuiKeyComboConfigKeyComboStorage* synapse_gui_key_combo_config_key_combo_storage_new (void);
static SynapseGuiKeyComboConfigKeyComboStorage* synapse_gui_key_combo_config_key_combo_storage_construct (GType object_type);
static void synapse_gui_key_combo_config_key_combo_storage_mod_cmd_finalize (GObject * obj);
static GType synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type_once (void);
static GObject * synapse_gui_key_combo_config_key_combo_storage_constructor (GType type,
                                                                      guint n_construct_properties,
                                                                      GObjectConstructParam * construct_properties);
static void synapse_gui_key_combo_config_key_combo_storage_finalize (GObject * obj);
static GType synapse_gui_key_combo_config_key_combo_storage_get_type_once (void);
static GObject * synapse_gui_key_combo_config_constructor (GType type,
                                                    guint n_construct_properties,
                                                    GObjectConstructParam * construct_properties);
static void synapse_gui_key_combo_config_finalize (GObject * obj);
static GType synapse_gui_key_combo_config_get_type_once (void);
static void _vala_synapse_gui_key_combo_config_get_property (GObject * object,
                                                      guint property_id,
                                                      GValue * value,
                                                      GParamSpec * pspec);
static void _vala_synapse_gui_key_combo_config_set_property (GObject * object,
                                                      guint property_id,
                                                      const GValue * value,
                                                      GParamSpec * pspec);
static void _vala_array_destroy (gpointer array,
                          gssize array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gssize array_length,
                       GDestroyNotify destroy_func);
static gssize _vala_array_length (gpointer array);

static inline gpointer
synapse_gui_key_combo_config_get_instance_private (SynapseGuiKeyComboConfig* self)
{
	return G_STRUCT_MEMBER_P (self, SynapseGuiKeyComboConfig_private_offset);
}

static GType
synapse_gui_key_combo_config_commands_get_type_once (void)
{
	static const GEnumValue values[] = {{SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_ACTIVATE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_ACTIVATE", "activate"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND", "invalid-command"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_CHAR, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_CHAR", "search-delete-char"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_WORD, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_WORD", "search-delete-word"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_RESULT, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_RESULT", "next-result"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_RESULT, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_RESULT", "prev-result"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_CATEGORY, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_CATEGORY", "next-category"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_CATEGORY, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_CATEGORY", "prev-category"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PANE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PANE", "next-pane"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PANE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PANE", "prev-pane"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE", "execute"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE_WITHOUT_HIDE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE_WITHOUT_HIDE", "execute-without-hide"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PAGE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PAGE", "next-page"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PAGE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PAGE", "prev-page"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_FIRST_RESULT, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_FIRST_RESULT", "first-result"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_LAST_RESULT, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_LAST_RESULT", "last-result"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_CLEAR_SEARCH_OR_HIDE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_CLEAR_SEARCH_OR_HIDE", "clear-search-or-hide"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE", "paste"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE_SELECTION, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE_SELECTION", "paste-selection"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXIT_SYNAPSE, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXIT_SYNAPSE", "exit-synapse"}, {SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_TOTAL_COMMANDS, "SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_TOTAL_COMMANDS", "total-commands"}, {0, NULL, NULL}};
	GType synapse_gui_key_combo_config_commands_type_id;
	synapse_gui_key_combo_config_commands_type_id = g_enum_register_static ("SynapseGuiKeyComboConfigCommands", values);
	return synapse_gui_key_combo_config_commands_type_id;
}

GType
synapse_gui_key_combo_config_commands_get_type (void)
{
	static volatile gsize synapse_gui_key_combo_config_commands_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_key_combo_config_commands_type_id__once)) {
		GType synapse_gui_key_combo_config_commands_type_id;
		synapse_gui_key_combo_config_commands_type_id = synapse_gui_key_combo_config_commands_get_type_once ();
		g_once_init_leave (&synapse_gui_key_combo_config_commands_type_id__once, synapse_gui_key_combo_config_commands_type_id);
	}
	return synapse_gui_key_combo_config_commands_type_id__once;
}

void
synapse_gui_key_combo_config_update_bindings (SynapseGuiKeyComboConfig* self)
{
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp0_;
	guint keyval = 0U;
	GdkModifierType mods = 0U;
	const gchar* _tmp1_;
	guint _tmp2_ = 0U;
	GdkModifierType _tmp3_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp4_;
	const gchar* _tmp5_;
	guint _tmp6_ = 0U;
	GdkModifierType _tmp7_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp8_;
	const gchar* _tmp9_;
	guint _tmp10_ = 0U;
	GdkModifierType _tmp11_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp12_;
	const gchar* _tmp13_;
	guint _tmp14_ = 0U;
	GdkModifierType _tmp15_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp16_;
	const gchar* _tmp17_;
	guint _tmp18_ = 0U;
	GdkModifierType _tmp19_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp20_;
	const gchar* _tmp21_;
	guint _tmp22_ = 0U;
	GdkModifierType _tmp23_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp24_;
	const gchar* _tmp25_;
	guint _tmp26_ = 0U;
	GdkModifierType _tmp27_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp28_;
	const gchar* _tmp29_;
	guint _tmp30_ = 0U;
	GdkModifierType _tmp31_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp32_;
	const gchar* _tmp33_;
	guint _tmp34_ = 0U;
	GdkModifierType _tmp35_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp36_;
	const gchar* _tmp37_;
	guint _tmp38_ = 0U;
	GdkModifierType _tmp39_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp40_;
	const gchar* _tmp41_;
	guint _tmp42_ = 0U;
	GdkModifierType _tmp43_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp44_;
	const gchar* _tmp45_;
	guint _tmp46_ = 0U;
	GdkModifierType _tmp47_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp48_;
	const gchar* _tmp49_;
	guint _tmp50_ = 0U;
	GdkModifierType _tmp51_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp52_;
	const gchar* _tmp53_;
	guint _tmp54_ = 0U;
	GdkModifierType _tmp55_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp56_;
	const gchar* _tmp57_;
	guint _tmp58_ = 0U;
	GdkModifierType _tmp59_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp60_;
	const gchar* _tmp61_;
	guint _tmp62_ = 0U;
	GdkModifierType _tmp63_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp64_;
	const gchar* _tmp65_;
	guint _tmp66_ = 0U;
	GdkModifierType _tmp67_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp68_;
	const gchar* _tmp69_;
	guint _tmp70_ = 0U;
	GdkModifierType _tmp71_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp72_;
	const gchar* _tmp73_;
	guint _tmp74_ = 0U;
	GdkModifierType _tmp75_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp76_;
	const gchar* _tmp77_;
	guint _tmp78_ = 0U;
	GdkModifierType _tmp79_ = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp80_;
#line 155 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 157 "keybindings.vala"
	_tmp0_ = self->priv->kcs;
#line 157 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_clear (_tmp0_);
#line 161 "keybindings.vala"
	_tmp1_ = self->priv->_activate;
#line 161 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp1_, &_tmp2_, &_tmp3_);
#line 161 "keybindings.vala"
	keyval = _tmp2_;
#line 161 "keybindings.vala"
	mods = _tmp3_;
#line 162 "keybindings.vala"
	_tmp4_ = self->priv->kcs;
#line 162 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp4_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_ACTIVATE);
#line 163 "keybindings.vala"
	_tmp5_ = self->priv->_execute;
#line 163 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp5_, &_tmp6_, &_tmp7_);
#line 163 "keybindings.vala"
	keyval = _tmp6_;
#line 163 "keybindings.vala"
	mods = _tmp7_;
#line 164 "keybindings.vala"
	_tmp8_ = self->priv->kcs;
#line 164 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp8_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE);
#line 165 "keybindings.vala"
	_tmp9_ = self->priv->_execute_without_hide;
#line 165 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp9_, &_tmp10_, &_tmp11_);
#line 165 "keybindings.vala"
	keyval = _tmp10_;
#line 165 "keybindings.vala"
	mods = _tmp11_;
#line 166 "keybindings.vala"
	_tmp12_ = self->priv->kcs;
#line 166 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp12_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXECUTE_WITHOUT_HIDE);
#line 167 "keybindings.vala"
	_tmp13_ = self->priv->_delete_char;
#line 167 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp13_, &_tmp14_, &_tmp15_);
#line 167 "keybindings.vala"
	keyval = _tmp14_;
#line 167 "keybindings.vala"
	mods = _tmp15_;
#line 168 "keybindings.vala"
	_tmp16_ = self->priv->kcs;
#line 168 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp16_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_CHAR);
#line 169 "keybindings.vala"
	_tmp17_ = self->priv->_alternative_delete_char;
#line 169 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp17_, &_tmp18_, &_tmp19_);
#line 169 "keybindings.vala"
	keyval = _tmp18_;
#line 169 "keybindings.vala"
	mods = _tmp19_;
#line 170 "keybindings.vala"
	_tmp20_ = self->priv->kcs;
#line 170 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp20_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_CHAR);
#line 171 "keybindings.vala"
	_tmp21_ = self->priv->_delete_word;
#line 171 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp21_, &_tmp22_, &_tmp23_);
#line 171 "keybindings.vala"
	keyval = _tmp22_;
#line 171 "keybindings.vala"
	mods = _tmp23_;
#line 172 "keybindings.vala"
	_tmp24_ = self->priv->kcs;
#line 172 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp24_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_SEARCH_DELETE_WORD);
#line 173 "keybindings.vala"
	_tmp25_ = self->priv->_next_match;
#line 173 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp25_, &_tmp26_, &_tmp27_);
#line 173 "keybindings.vala"
	keyval = _tmp26_;
#line 173 "keybindings.vala"
	mods = _tmp27_;
#line 174 "keybindings.vala"
	_tmp28_ = self->priv->kcs;
#line 174 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp28_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_RESULT);
#line 175 "keybindings.vala"
	_tmp29_ = self->priv->_prev_match;
#line 175 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp29_, &_tmp30_, &_tmp31_);
#line 175 "keybindings.vala"
	keyval = _tmp30_;
#line 175 "keybindings.vala"
	mods = _tmp31_;
#line 176 "keybindings.vala"
	_tmp32_ = self->priv->kcs;
#line 176 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp32_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_RESULT);
#line 177 "keybindings.vala"
	_tmp33_ = self->priv->_first_match;
#line 177 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp33_, &_tmp34_, &_tmp35_);
#line 177 "keybindings.vala"
	keyval = _tmp34_;
#line 177 "keybindings.vala"
	mods = _tmp35_;
#line 178 "keybindings.vala"
	_tmp36_ = self->priv->kcs;
#line 178 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp36_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_FIRST_RESULT);
#line 179 "keybindings.vala"
	_tmp37_ = self->priv->_last_match;
#line 179 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp37_, &_tmp38_, &_tmp39_);
#line 179 "keybindings.vala"
	keyval = _tmp38_;
#line 179 "keybindings.vala"
	mods = _tmp39_;
#line 180 "keybindings.vala"
	_tmp40_ = self->priv->kcs;
#line 180 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp40_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_LAST_RESULT);
#line 181 "keybindings.vala"
	_tmp41_ = self->priv->_next_match_page;
#line 181 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp41_, &_tmp42_, &_tmp43_);
#line 181 "keybindings.vala"
	keyval = _tmp42_;
#line 181 "keybindings.vala"
	mods = _tmp43_;
#line 182 "keybindings.vala"
	_tmp44_ = self->priv->kcs;
#line 182 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp44_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PAGE);
#line 183 "keybindings.vala"
	_tmp45_ = self->priv->_prev_match_page;
#line 183 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp45_, &_tmp46_, &_tmp47_);
#line 183 "keybindings.vala"
	keyval = _tmp46_;
#line 183 "keybindings.vala"
	mods = _tmp47_;
#line 184 "keybindings.vala"
	_tmp48_ = self->priv->kcs;
#line 184 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp48_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PAGE);
#line 185 "keybindings.vala"
	_tmp49_ = self->priv->_next_category;
#line 185 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp49_, &_tmp50_, &_tmp51_);
#line 185 "keybindings.vala"
	keyval = _tmp50_;
#line 185 "keybindings.vala"
	mods = _tmp51_;
#line 186 "keybindings.vala"
	_tmp52_ = self->priv->kcs;
#line 186 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp52_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_CATEGORY);
#line 187 "keybindings.vala"
	_tmp53_ = self->priv->_prev_category;
#line 187 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp53_, &_tmp54_, &_tmp55_);
#line 187 "keybindings.vala"
	keyval = _tmp54_;
#line 187 "keybindings.vala"
	mods = _tmp55_;
#line 188 "keybindings.vala"
	_tmp56_ = self->priv->kcs;
#line 188 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp56_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_CATEGORY);
#line 189 "keybindings.vala"
	_tmp57_ = self->priv->_next_search_type;
#line 189 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp57_, &_tmp58_, &_tmp59_);
#line 189 "keybindings.vala"
	keyval = _tmp58_;
#line 189 "keybindings.vala"
	mods = _tmp59_;
#line 190 "keybindings.vala"
	_tmp60_ = self->priv->kcs;
#line 190 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp60_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_NEXT_PANE);
#line 191 "keybindings.vala"
	_tmp61_ = self->priv->_prev_search_type;
#line 191 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp61_, &_tmp62_, &_tmp63_);
#line 191 "keybindings.vala"
	keyval = _tmp62_;
#line 191 "keybindings.vala"
	mods = _tmp63_;
#line 192 "keybindings.vala"
	_tmp64_ = self->priv->kcs;
#line 192 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp64_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PREV_PANE);
#line 193 "keybindings.vala"
	_tmp65_ = self->priv->_cancel;
#line 193 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp65_, &_tmp66_, &_tmp67_);
#line 193 "keybindings.vala"
	keyval = _tmp66_;
#line 193 "keybindings.vala"
	mods = _tmp67_;
#line 194 "keybindings.vala"
	_tmp68_ = self->priv->kcs;
#line 194 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp68_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_CLEAR_SEARCH_OR_HIDE);
#line 195 "keybindings.vala"
	_tmp69_ = self->priv->_paste;
#line 195 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp69_, &_tmp70_, &_tmp71_);
#line 195 "keybindings.vala"
	keyval = _tmp70_;
#line 195 "keybindings.vala"
	mods = _tmp71_;
#line 196 "keybindings.vala"
	_tmp72_ = self->priv->kcs;
#line 196 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp72_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE);
#line 197 "keybindings.vala"
	_tmp73_ = self->priv->_alt_paste;
#line 197 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp73_, &_tmp74_, &_tmp75_);
#line 197 "keybindings.vala"
	keyval = _tmp74_;
#line 197 "keybindings.vala"
	mods = _tmp75_;
#line 198 "keybindings.vala"
	_tmp76_ = self->priv->kcs;
#line 198 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp76_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_PASTE_SELECTION);
#line 199 "keybindings.vala"
	_tmp77_ = self->priv->_exit;
#line 199 "keybindings.vala"
	synapse_gui_key_combo_config_name_to_key_mod (_tmp77_, &_tmp78_, &_tmp79_);
#line 199 "keybindings.vala"
	keyval = _tmp78_;
#line 199 "keybindings.vala"
	mods = _tmp79_;
#line 200 "keybindings.vala"
	_tmp80_ = self->priv->kcs;
#line 200 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (_tmp80_, keyval, mods, SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_EXIT_SYNAPSE);
#line 697 "keybindings.c"
}

SynapseGuiKeyComboConfigCommands
synapse_gui_key_combo_config_get_command_from_eventkey (SynapseGuiKeyComboConfig* self,
                                                        GdkEventKey* event)
{
	guint keyval = 0U;
	gboolean _tmp0_ = FALSE;
	GdkModifierType mod = 0U;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp1_;
	SynapseGuiKeyComboConfigCommands result;
#line 207 "keybindings.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 207 "keybindings.vala"
	g_return_val_if_fail (event != NULL, 0);
#line 209 "keybindings.vala"
	keyval = event->keyval;
#line 210 "keybindings.vala"
	if (keyval == GDK_KEY_KP_Enter) {
#line 210 "keybindings.vala"
		_tmp0_ = TRUE;
#line 719 "keybindings.c"
	} else {
#line 210 "keybindings.vala"
		_tmp0_ = keyval == GDK_KEY_ISO_Enter;
#line 723 "keybindings.c"
	}
#line 210 "keybindings.vala"
	if (_tmp0_) {
#line 212 "keybindings.vala"
		keyval = GDK_KEY_Return;
#line 729 "keybindings.c"
	}
#line 214 "keybindings.vala"
	mod = event->state & synapse_gui_key_combo_config_mod_normalize_mask;
#line 216 "keybindings.vala"
	_tmp1_ = self->priv->kcs;
#line 216 "keybindings.vala"
	result = synapse_gui_key_combo_config_key_combo_storage_get_command_for_keycombo (_tmp1_, keyval, mod);
#line 216 "keybindings.vala"
	return result;
#line 739 "keybindings.c"
}

gchar*
synapse_gui_key_combo_config_get_name_from_key (guint keyval,
                                                GdkModifierType mods)
{
	gboolean _tmp0_ = FALSE;
	const gchar* keyname = NULL;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* res = NULL;
	gchar* _tmp3_;
	const gchar* _tmp24_;
	const gchar* _tmp25_;
	gchar* _tmp26_;
	gchar* result;
#line 221 "keybindings.vala"
	mods = mods & synapse_gui_key_combo_config_mod_normalize_mask;
#line 222 "keybindings.vala"
	if (keyval == GDK_KEY_KP_Enter) {
#line 222 "keybindings.vala"
		_tmp0_ = TRUE;
#line 762 "keybindings.c"
	} else {
#line 222 "keybindings.vala"
		_tmp0_ = keyval == GDK_KEY_ISO_Enter;
#line 766 "keybindings.c"
	}
#line 222 "keybindings.vala"
	if (_tmp0_) {
#line 224 "keybindings.vala"
		keyval = GDK_KEY_Return;
#line 772 "keybindings.c"
	}
#line 226 "keybindings.vala"
	_tmp1_ = gdk_keyval_name (gdk_keyval_to_lower (keyval));
#line 226 "keybindings.vala"
	keyname = _tmp1_;
#line 227 "keybindings.vala"
	_tmp2_ = keyname;
#line 227 "keybindings.vala"
	if (_tmp2_ == NULL) {
#line 227 "keybindings.vala"
		result = NULL;
#line 227 "keybindings.vala"
		return result;
#line 786 "keybindings.c"
	}
#line 229 "keybindings.vala"
	_tmp3_ = g_strdup ("");
#line 229 "keybindings.vala"
	res = _tmp3_;
#line 230 "keybindings.vala"
	if ((mods & GDK_SHIFT_MASK) == GDK_SHIFT_MASK) {
#line 794 "keybindings.c"
		const gchar* _tmp4_;
		gchar* _tmp5_;
#line 230 "keybindings.vala"
		_tmp4_ = res;
#line 230 "keybindings.vala"
		_tmp5_ = g_strconcat (_tmp4_, "<Shift>", NULL);
#line 230 "keybindings.vala"
		_g_free0 (res);
#line 230 "keybindings.vala"
		res = _tmp5_;
#line 805 "keybindings.c"
	}
#line 231 "keybindings.vala"
	if ((mods & GDK_CONTROL_MASK) == GDK_CONTROL_MASK) {
#line 809 "keybindings.c"
		const gchar* _tmp6_;
		gchar* _tmp7_;
#line 231 "keybindings.vala"
		_tmp6_ = res;
#line 231 "keybindings.vala"
		_tmp7_ = g_strconcat (_tmp6_, "<Control>", NULL);
#line 231 "keybindings.vala"
		_g_free0 (res);
#line 231 "keybindings.vala"
		res = _tmp7_;
#line 820 "keybindings.c"
	}
#line 232 "keybindings.vala"
	if ((mods & GDK_MOD1_MASK) == GDK_MOD1_MASK) {
#line 824 "keybindings.c"
		const gchar* _tmp8_;
		gchar* _tmp9_;
#line 232 "keybindings.vala"
		_tmp8_ = res;
#line 232 "keybindings.vala"
		_tmp9_ = g_strconcat (_tmp8_, "<Alt>", NULL);
#line 232 "keybindings.vala"
		_g_free0 (res);
#line 232 "keybindings.vala"
		res = _tmp9_;
#line 835 "keybindings.c"
	}
#line 233 "keybindings.vala"
	if ((mods & GDK_MOD2_MASK) == GDK_MOD2_MASK) {
#line 839 "keybindings.c"
		const gchar* _tmp10_;
		gchar* _tmp11_;
#line 233 "keybindings.vala"
		_tmp10_ = res;
#line 233 "keybindings.vala"
		_tmp11_ = g_strconcat (_tmp10_, "<Mod2>", NULL);
#line 233 "keybindings.vala"
		_g_free0 (res);
#line 233 "keybindings.vala"
		res = _tmp11_;
#line 850 "keybindings.c"
	}
#line 234 "keybindings.vala"
	if ((mods & GDK_MOD3_MASK) == GDK_MOD3_MASK) {
#line 854 "keybindings.c"
		const gchar* _tmp12_;
		gchar* _tmp13_;
#line 234 "keybindings.vala"
		_tmp12_ = res;
#line 234 "keybindings.vala"
		_tmp13_ = g_strconcat (_tmp12_, "<Mod3>", NULL);
#line 234 "keybindings.vala"
		_g_free0 (res);
#line 234 "keybindings.vala"
		res = _tmp13_;
#line 865 "keybindings.c"
	}
#line 235 "keybindings.vala"
	if ((mods & GDK_MOD4_MASK) == GDK_MOD4_MASK) {
#line 869 "keybindings.c"
		const gchar* _tmp14_;
		gchar* _tmp15_;
#line 235 "keybindings.vala"
		_tmp14_ = res;
#line 235 "keybindings.vala"
		_tmp15_ = g_strconcat (_tmp14_, "<Mod4>", NULL);
#line 235 "keybindings.vala"
		_g_free0 (res);
#line 235 "keybindings.vala"
		res = _tmp15_;
#line 880 "keybindings.c"
	}
#line 236 "keybindings.vala"
	if ((mods & GDK_MOD5_MASK) == GDK_MOD5_MASK) {
#line 884 "keybindings.c"
		const gchar* _tmp16_;
		gchar* _tmp17_;
#line 236 "keybindings.vala"
		_tmp16_ = res;
#line 236 "keybindings.vala"
		_tmp17_ = g_strconcat (_tmp16_, "<Mod5>", NULL);
#line 236 "keybindings.vala"
		_g_free0 (res);
#line 236 "keybindings.vala"
		res = _tmp17_;
#line 895 "keybindings.c"
	}
#line 237 "keybindings.vala"
	if ((mods & GDK_META_MASK) == GDK_META_MASK) {
#line 899 "keybindings.c"
		const gchar* _tmp18_;
		gchar* _tmp19_;
#line 237 "keybindings.vala"
		_tmp18_ = res;
#line 237 "keybindings.vala"
		_tmp19_ = g_strconcat (_tmp18_, "<Meta>", NULL);
#line 237 "keybindings.vala"
		_g_free0 (res);
#line 237 "keybindings.vala"
		res = _tmp19_;
#line 910 "keybindings.c"
	}
#line 238 "keybindings.vala"
	if ((mods & GDK_SUPER_MASK) == GDK_SUPER_MASK) {
#line 914 "keybindings.c"
		const gchar* _tmp20_;
		gchar* _tmp21_;
#line 238 "keybindings.vala"
		_tmp20_ = res;
#line 238 "keybindings.vala"
		_tmp21_ = g_strconcat (_tmp20_, "<Super>", NULL);
#line 238 "keybindings.vala"
		_g_free0 (res);
#line 238 "keybindings.vala"
		res = _tmp21_;
#line 925 "keybindings.c"
	}
#line 239 "keybindings.vala"
	if ((mods & GDK_HYPER_MASK) == GDK_HYPER_MASK) {
#line 929 "keybindings.c"
		const gchar* _tmp22_;
		gchar* _tmp23_;
#line 239 "keybindings.vala"
		_tmp22_ = res;
#line 239 "keybindings.vala"
		_tmp23_ = g_strconcat (_tmp22_, "<Hyper>", NULL);
#line 239 "keybindings.vala"
		_g_free0 (res);
#line 239 "keybindings.vala"
		res = _tmp23_;
#line 940 "keybindings.c"
	}
#line 241 "keybindings.vala"
	_tmp24_ = res;
#line 241 "keybindings.vala"
	_tmp25_ = keyname;
#line 241 "keybindings.vala"
	_tmp26_ = g_strconcat (_tmp24_, _tmp25_, NULL);
#line 241 "keybindings.vala"
	_g_free0 (res);
#line 241 "keybindings.vala"
	res = _tmp26_;
#line 242 "keybindings.vala"
	result = res;
#line 242 "keybindings.vala"
	return result;
#line 956 "keybindings.c"
}

static gchar
string_get (const gchar* self,
            glong index)
{
	gchar _tmp0_;
	gchar result;
#line 1283 "glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, '\0');
#line 1284 "glib-2.0.vapi"
	_tmp0_ = ((gchar*) self)[index];
#line 1284 "glib-2.0.vapi"
	result = _tmp0_;
#line 1284 "glib-2.0.vapi"
	return result;
#line 973 "keybindings.c"
}

void
synapse_gui_key_combo_config_name_to_key_mod (const gchar* name,
                                              guint* keyval,
                                              GdkModifierType* mod)
{
	guint _vala_keyval = 0U;
	GdkModifierType _vala_mod = 0U;
	gchar** keys = NULL;
	gchar** _tmp0_;
	gchar** _tmp1_;
	gint keys_length1;
	gint _keys_size_;
	gchar** _tmp2_;
	gint _tmp2__length1;
	gboolean _tmp10_ = FALSE;
#line 245 "keybindings.vala"
	g_return_if_fail (name != NULL);
#line 247 "keybindings.vala"
	_vala_keyval = (guint) 0;
#line 248 "keybindings.vala"
	_vala_mod = 0;
#line 249 "keybindings.vala"
	_tmp1_ = _tmp0_ = g_strsplit (name, ">", 0);
#line 249 "keybindings.vala"
	keys = _tmp1_;
#line 249 "keybindings.vala"
	keys_length1 = _vala_array_length (_tmp0_);
#line 249 "keybindings.vala"
	_keys_size_ = keys_length1;
#line 250 "keybindings.vala"
	_tmp2_ = keys;
#line 250 "keybindings.vala"
	_tmp2__length1 = keys_length1;
#line 1009 "keybindings.c"
	{
		gchar** key_collection = NULL;
		gint key_collection_length1 = 0;
		gint _key_collection_size_ = 0;
		gint key_it = 0;
#line 250 "keybindings.vala"
		key_collection = _tmp2_;
#line 250 "keybindings.vala"
		key_collection_length1 = _tmp2__length1;
#line 250 "keybindings.vala"
		for (key_it = 0; key_it < key_collection_length1; key_it = key_it + 1) {
#line 1021 "keybindings.c"
			gchar* _tmp3_;
			gchar* key = NULL;
#line 250 "keybindings.vala"
			_tmp3_ = g_strdup (key_collection[key_it]);
#line 250 "keybindings.vala"
			key = _tmp3_;
#line 1028 "keybindings.c"
			{
				const gchar* _tmp4_;
#line 252 "keybindings.vala"
				_tmp4_ = key;
#line 252 "keybindings.vala"
				if (string_get (_tmp4_, (glong) 0) != '<') {
#line 1035 "keybindings.c"
					const gchar* _tmp5_;
#line 254 "keybindings.vala"
					_tmp5_ = key;
#line 254 "keybindings.vala"
					_vala_keyval = gdk_keyval_from_name (_tmp5_);
#line 1041 "keybindings.c"
				} else {
					const gchar* _tmp6_;
					const gchar* _tmp7_;
					GQuark _tmp9_ = 0U;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label0 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label1 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label2 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label3 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label4 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label5 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label6 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label7 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label8 = 0;
#line 258 "keybindings.vala"
					static GQuark _tmp8_label9 = 0;
#line 258 "keybindings.vala"
					_tmp6_ = key;
#line 258 "keybindings.vala"
					_tmp7_ = _tmp6_;
#line 258 "keybindings.vala"
					_tmp9_ = (NULL == _tmp7_) ? 0 : g_quark_from_string (_tmp7_);
#line 258 "keybindings.vala"
					if (_tmp9_ == ((0 != _tmp8_label0) ? _tmp8_label0 : (_tmp8_label0 = g_quark_from_static_string ("<Shift")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1076 "keybindings.c"
							default:
							{
#line 261 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_SHIFT_MASK;
#line 262 "keybindings.vala"
								break;
#line 1083 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label1) ? _tmp8_label1 : (_tmp8_label1 = g_quark_from_static_string ("<Control")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1089 "keybindings.c"
							default:
							{
#line 264 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_CONTROL_MASK;
#line 265 "keybindings.vala"
								break;
#line 1096 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label2) ? _tmp8_label2 : (_tmp8_label2 = g_quark_from_static_string ("<Alt")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1102 "keybindings.c"
							default:
							{
#line 267 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_MOD1_MASK;
#line 268 "keybindings.vala"
								break;
#line 1109 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label3) ? _tmp8_label3 : (_tmp8_label3 = g_quark_from_static_string ("<Super")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1115 "keybindings.c"
							default:
							{
#line 270 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_SUPER_MASK;
#line 271 "keybindings.vala"
								break;
#line 1122 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label4) ? _tmp8_label4 : (_tmp8_label4 = g_quark_from_static_string ("<Hyper")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1128 "keybindings.c"
							default:
							{
#line 273 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_HYPER_MASK;
#line 274 "keybindings.vala"
								break;
#line 1135 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label5) ? _tmp8_label5 : (_tmp8_label5 = g_quark_from_static_string ("<Meta")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1141 "keybindings.c"
							default:
							{
#line 276 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_META_MASK;
#line 277 "keybindings.vala"
								break;
#line 1148 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label6) ? _tmp8_label6 : (_tmp8_label6 = g_quark_from_static_string ("<Mod2")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1154 "keybindings.c"
							default:
							{
#line 279 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_MOD2_MASK;
#line 280 "keybindings.vala"
								break;
#line 1161 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label7) ? _tmp8_label7 : (_tmp8_label7 = g_quark_from_static_string ("<Mod3")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1167 "keybindings.c"
							default:
							{
#line 282 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_MOD3_MASK;
#line 283 "keybindings.vala"
								break;
#line 1174 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label8) ? _tmp8_label8 : (_tmp8_label8 = g_quark_from_static_string ("<Mod4")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1180 "keybindings.c"
							default:
							{
#line 285 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_MOD4_MASK;
#line 286 "keybindings.vala"
								break;
#line 1187 "keybindings.c"
							}
						}
					} else if (_tmp9_ == ((0 != _tmp8_label9) ? _tmp8_label9 : (_tmp8_label9 = g_quark_from_static_string ("<Mod5")))) {
#line 258 "keybindings.vala"
						switch (0) {
#line 1193 "keybindings.c"
							default:
							{
#line 288 "keybindings.vala"
								_vala_mod = _vala_mod | GDK_MOD5_MASK;
#line 289 "keybindings.vala"
								break;
#line 1200 "keybindings.c"
							}
						}
					}
				}
#line 250 "keybindings.vala"
				_g_free0 (key);
#line 1207 "keybindings.c"
			}
		}
	}
#line 293 "keybindings.vala"
	if (_vala_keyval == GDK_KEY_KP_Enter) {
#line 293 "keybindings.vala"
		_tmp10_ = TRUE;
#line 1215 "keybindings.c"
	} else {
#line 293 "keybindings.vala"
		_tmp10_ = _vala_keyval == GDK_KEY_ISO_Enter;
#line 1219 "keybindings.c"
	}
#line 293 "keybindings.vala"
	if (_tmp10_) {
#line 295 "keybindings.vala"
		_vala_keyval = GDK_KEY_Return;
#line 1225 "keybindings.c"
	}
#line 245 "keybindings.vala"
	keys = (_vala_array_free (keys, keys_length1, (GDestroyNotify) g_free), NULL);
#line 245 "keybindings.vala"
	if (keyval) {
#line 245 "keybindings.vala"
		*keyval = _vala_keyval;
#line 1233 "keybindings.c"
	}
#line 245 "keybindings.vala"
	if (mod) {
#line 245 "keybindings.vala"
		*mod = _vala_mod;
#line 1239 "keybindings.c"
	}
}

SynapseGuiKeyComboConfig*
synapse_gui_key_combo_config_construct (GType object_type)
{
	SynapseGuiKeyComboConfig * self = NULL;
#line 24 "keybindings.vala"
	self = (SynapseGuiKeyComboConfig*) synapse_config_object_construct (object_type);
#line 24 "keybindings.vala"
	return self;
#line 1251 "keybindings.c"
}

SynapseGuiKeyComboConfig*
synapse_gui_key_combo_config_new (void)
{
#line 24 "keybindings.vala"
	return synapse_gui_key_combo_config_construct (SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG);
#line 1259 "keybindings.c"
}

const gchar*
synapse_gui_key_combo_config_get_activate (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 53 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 53 "keybindings.vala"
	_tmp0_ = self->priv->_activate;
#line 53 "keybindings.vala"
	result = _tmp0_;
#line 53 "keybindings.vala"
	return result;
#line 1275 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_activate (SynapseGuiKeyComboConfig* self,
                                           const gchar* value)
{
	gchar* old_value;
#line 53 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 53 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_activate (self);
#line 53 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1289 "keybindings.c"
		gchar* _tmp0_;
#line 53 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 53 "keybindings.vala"
		_g_free0 (self->priv->_activate);
#line 53 "keybindings.vala"
		self->priv->_activate = _tmp0_;
#line 53 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY]);
#line 1299 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_execute (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 54 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 54 "keybindings.vala"
	_tmp0_ = self->priv->_execute;
#line 54 "keybindings.vala"
	result = _tmp0_;
#line 54 "keybindings.vala"
	return result;
#line 1316 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_execute (SynapseGuiKeyComboConfig* self,
                                          const gchar* value)
{
	gchar* old_value;
#line 54 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 54 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_execute (self);
#line 54 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1330 "keybindings.c"
		gchar* _tmp0_;
#line 54 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 54 "keybindings.vala"
		_g_free0 (self->priv->_execute);
#line 54 "keybindings.vala"
		self->priv->_execute = _tmp0_;
#line 54 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY]);
#line 1340 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_execute_without_hide (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 55 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 55 "keybindings.vala"
	_tmp0_ = self->priv->_execute_without_hide;
#line 55 "keybindings.vala"
	result = _tmp0_;
#line 55 "keybindings.vala"
	return result;
#line 1357 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_execute_without_hide (SynapseGuiKeyComboConfig* self,
                                                       const gchar* value)
{
	gchar* old_value;
#line 55 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 55 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_execute_without_hide (self);
#line 55 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1371 "keybindings.c"
		gchar* _tmp0_;
#line 55 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 55 "keybindings.vala"
		_g_free0 (self->priv->_execute_without_hide);
#line 55 "keybindings.vala"
		self->priv->_execute_without_hide = _tmp0_;
#line 55 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY]);
#line 1381 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_delete_char (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 56 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 56 "keybindings.vala"
	_tmp0_ = self->priv->_delete_char;
#line 56 "keybindings.vala"
	result = _tmp0_;
#line 56 "keybindings.vala"
	return result;
#line 1398 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_delete_char (SynapseGuiKeyComboConfig* self,
                                              const gchar* value)
{
	gchar* old_value;
#line 56 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 56 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_delete_char (self);
#line 56 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1412 "keybindings.c"
		gchar* _tmp0_;
#line 56 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 56 "keybindings.vala"
		_g_free0 (self->priv->_delete_char);
#line 56 "keybindings.vala"
		self->priv->_delete_char = _tmp0_;
#line 56 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY]);
#line 1422 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_delete_word (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 57 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 57 "keybindings.vala"
	_tmp0_ = self->priv->_delete_word;
#line 57 "keybindings.vala"
	result = _tmp0_;
#line 57 "keybindings.vala"
	return result;
#line 1439 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_delete_word (SynapseGuiKeyComboConfig* self,
                                              const gchar* value)
{
	gchar* old_value;
#line 57 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 57 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_delete_word (self);
#line 57 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1453 "keybindings.c"
		gchar* _tmp0_;
#line 57 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 57 "keybindings.vala"
		_g_free0 (self->priv->_delete_word);
#line 57 "keybindings.vala"
		self->priv->_delete_word = _tmp0_;
#line 57 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY]);
#line 1463 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_alternative_delete_char (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 58 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 58 "keybindings.vala"
	_tmp0_ = self->priv->_alternative_delete_char;
#line 58 "keybindings.vala"
	result = _tmp0_;
#line 58 "keybindings.vala"
	return result;
#line 1480 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_alternative_delete_char (SynapseGuiKeyComboConfig* self,
                                                          const gchar* value)
{
	gchar* old_value;
#line 58 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 58 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_alternative_delete_char (self);
#line 58 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1494 "keybindings.c"
		gchar* _tmp0_;
#line 58 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 58 "keybindings.vala"
		_g_free0 (self->priv->_alternative_delete_char);
#line 58 "keybindings.vala"
		self->priv->_alternative_delete_char = _tmp0_;
#line 58 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY]);
#line 1504 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_next_match (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 59 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 59 "keybindings.vala"
	_tmp0_ = self->priv->_next_match;
#line 59 "keybindings.vala"
	result = _tmp0_;
#line 59 "keybindings.vala"
	return result;
#line 1521 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_next_match (SynapseGuiKeyComboConfig* self,
                                             const gchar* value)
{
	gchar* old_value;
#line 59 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 59 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_next_match (self);
#line 59 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1535 "keybindings.c"
		gchar* _tmp0_;
#line 59 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 59 "keybindings.vala"
		_g_free0 (self->priv->_next_match);
#line 59 "keybindings.vala"
		self->priv->_next_match = _tmp0_;
#line 59 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY]);
#line 1545 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_prev_match (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 60 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 60 "keybindings.vala"
	_tmp0_ = self->priv->_prev_match;
#line 60 "keybindings.vala"
	result = _tmp0_;
#line 60 "keybindings.vala"
	return result;
#line 1562 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_prev_match (SynapseGuiKeyComboConfig* self,
                                             const gchar* value)
{
	gchar* old_value;
#line 60 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 60 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_prev_match (self);
#line 60 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1576 "keybindings.c"
		gchar* _tmp0_;
#line 60 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 60 "keybindings.vala"
		_g_free0 (self->priv->_prev_match);
#line 60 "keybindings.vala"
		self->priv->_prev_match = _tmp0_;
#line 60 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY]);
#line 1586 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_first_match (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 61 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 61 "keybindings.vala"
	_tmp0_ = self->priv->_first_match;
#line 61 "keybindings.vala"
	result = _tmp0_;
#line 61 "keybindings.vala"
	return result;
#line 1603 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_first_match (SynapseGuiKeyComboConfig* self,
                                              const gchar* value)
{
	gchar* old_value;
#line 61 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 61 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_first_match (self);
#line 61 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1617 "keybindings.c"
		gchar* _tmp0_;
#line 61 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 61 "keybindings.vala"
		_g_free0 (self->priv->_first_match);
#line 61 "keybindings.vala"
		self->priv->_first_match = _tmp0_;
#line 61 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY]);
#line 1627 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_last_match (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 62 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 62 "keybindings.vala"
	_tmp0_ = self->priv->_last_match;
#line 62 "keybindings.vala"
	result = _tmp0_;
#line 62 "keybindings.vala"
	return result;
#line 1644 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_last_match (SynapseGuiKeyComboConfig* self,
                                             const gchar* value)
{
	gchar* old_value;
#line 62 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 62 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_last_match (self);
#line 62 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1658 "keybindings.c"
		gchar* _tmp0_;
#line 62 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 62 "keybindings.vala"
		_g_free0 (self->priv->_last_match);
#line 62 "keybindings.vala"
		self->priv->_last_match = _tmp0_;
#line 62 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY]);
#line 1668 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_next_match_page (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 63 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 63 "keybindings.vala"
	_tmp0_ = self->priv->_next_match_page;
#line 63 "keybindings.vala"
	result = _tmp0_;
#line 63 "keybindings.vala"
	return result;
#line 1685 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_next_match_page (SynapseGuiKeyComboConfig* self,
                                                  const gchar* value)
{
	gchar* old_value;
#line 63 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 63 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_next_match_page (self);
#line 63 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1699 "keybindings.c"
		gchar* _tmp0_;
#line 63 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 63 "keybindings.vala"
		_g_free0 (self->priv->_next_match_page);
#line 63 "keybindings.vala"
		self->priv->_next_match_page = _tmp0_;
#line 63 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY]);
#line 1709 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_prev_match_page (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 64 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 64 "keybindings.vala"
	_tmp0_ = self->priv->_prev_match_page;
#line 64 "keybindings.vala"
	result = _tmp0_;
#line 64 "keybindings.vala"
	return result;
#line 1726 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_prev_match_page (SynapseGuiKeyComboConfig* self,
                                                  const gchar* value)
{
	gchar* old_value;
#line 64 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 64 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_prev_match_page (self);
#line 64 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1740 "keybindings.c"
		gchar* _tmp0_;
#line 64 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 64 "keybindings.vala"
		_g_free0 (self->priv->_prev_match_page);
#line 64 "keybindings.vala"
		self->priv->_prev_match_page = _tmp0_;
#line 64 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY]);
#line 1750 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_next_category (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 65 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 65 "keybindings.vala"
	_tmp0_ = self->priv->_next_category;
#line 65 "keybindings.vala"
	result = _tmp0_;
#line 65 "keybindings.vala"
	return result;
#line 1767 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_next_category (SynapseGuiKeyComboConfig* self,
                                                const gchar* value)
{
	gchar* old_value;
#line 65 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 65 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_next_category (self);
#line 65 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1781 "keybindings.c"
		gchar* _tmp0_;
#line 65 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 65 "keybindings.vala"
		_g_free0 (self->priv->_next_category);
#line 65 "keybindings.vala"
		self->priv->_next_category = _tmp0_;
#line 65 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY]);
#line 1791 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_prev_category (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 66 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 66 "keybindings.vala"
	_tmp0_ = self->priv->_prev_category;
#line 66 "keybindings.vala"
	result = _tmp0_;
#line 66 "keybindings.vala"
	return result;
#line 1808 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_prev_category (SynapseGuiKeyComboConfig* self,
                                                const gchar* value)
{
	gchar* old_value;
#line 66 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 66 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_prev_category (self);
#line 66 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1822 "keybindings.c"
		gchar* _tmp0_;
#line 66 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 66 "keybindings.vala"
		_g_free0 (self->priv->_prev_category);
#line 66 "keybindings.vala"
		self->priv->_prev_category = _tmp0_;
#line 66 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY]);
#line 1832 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_next_search_type (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 67 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 67 "keybindings.vala"
	_tmp0_ = self->priv->_next_search_type;
#line 67 "keybindings.vala"
	result = _tmp0_;
#line 67 "keybindings.vala"
	return result;
#line 1849 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_next_search_type (SynapseGuiKeyComboConfig* self,
                                                   const gchar* value)
{
	gchar* old_value;
#line 67 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 67 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_next_search_type (self);
#line 67 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1863 "keybindings.c"
		gchar* _tmp0_;
#line 67 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 67 "keybindings.vala"
		_g_free0 (self->priv->_next_search_type);
#line 67 "keybindings.vala"
		self->priv->_next_search_type = _tmp0_;
#line 67 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY]);
#line 1873 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_prev_search_type (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 68 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 68 "keybindings.vala"
	_tmp0_ = self->priv->_prev_search_type;
#line 68 "keybindings.vala"
	result = _tmp0_;
#line 68 "keybindings.vala"
	return result;
#line 1890 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_prev_search_type (SynapseGuiKeyComboConfig* self,
                                                   const gchar* value)
{
	gchar* old_value;
#line 68 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 68 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_prev_search_type (self);
#line 68 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1904 "keybindings.c"
		gchar* _tmp0_;
#line 68 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 68 "keybindings.vala"
		_g_free0 (self->priv->_prev_search_type);
#line 68 "keybindings.vala"
		self->priv->_prev_search_type = _tmp0_;
#line 68 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY]);
#line 1914 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_cancel (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 69 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 69 "keybindings.vala"
	_tmp0_ = self->priv->_cancel;
#line 69 "keybindings.vala"
	result = _tmp0_;
#line 69 "keybindings.vala"
	return result;
#line 1931 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_cancel (SynapseGuiKeyComboConfig* self,
                                         const gchar* value)
{
	gchar* old_value;
#line 69 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 69 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_cancel (self);
#line 69 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1945 "keybindings.c"
		gchar* _tmp0_;
#line 69 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 69 "keybindings.vala"
		_g_free0 (self->priv->_cancel);
#line 69 "keybindings.vala"
		self->priv->_cancel = _tmp0_;
#line 69 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY]);
#line 1955 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_paste (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 70 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 70 "keybindings.vala"
	_tmp0_ = self->priv->_paste;
#line 70 "keybindings.vala"
	result = _tmp0_;
#line 70 "keybindings.vala"
	return result;
#line 1972 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_paste (SynapseGuiKeyComboConfig* self,
                                        const gchar* value)
{
	gchar* old_value;
#line 70 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 70 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_paste (self);
#line 70 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 1986 "keybindings.c"
		gchar* _tmp0_;
#line 70 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 70 "keybindings.vala"
		_g_free0 (self->priv->_paste);
#line 70 "keybindings.vala"
		self->priv->_paste = _tmp0_;
#line 70 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY]);
#line 1996 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_alt_paste (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 71 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 71 "keybindings.vala"
	_tmp0_ = self->priv->_alt_paste;
#line 71 "keybindings.vala"
	result = _tmp0_;
#line 71 "keybindings.vala"
	return result;
#line 2013 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_alt_paste (SynapseGuiKeyComboConfig* self,
                                            const gchar* value)
{
	gchar* old_value;
#line 71 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 71 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_alt_paste (self);
#line 71 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 2027 "keybindings.c"
		gchar* _tmp0_;
#line 71 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 71 "keybindings.vala"
		_g_free0 (self->priv->_alt_paste);
#line 71 "keybindings.vala"
		self->priv->_alt_paste = _tmp0_;
#line 71 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY]);
#line 2037 "keybindings.c"
	}
}

const gchar*
synapse_gui_key_combo_config_get_exit (SynapseGuiKeyComboConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 72 "keybindings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 72 "keybindings.vala"
	_tmp0_ = self->priv->_exit;
#line 72 "keybindings.vala"
	result = _tmp0_;
#line 72 "keybindings.vala"
	return result;
#line 2054 "keybindings.c"
}

void
synapse_gui_key_combo_config_set_exit (SynapseGuiKeyComboConfig* self,
                                       const gchar* value)
{
	gchar* old_value;
#line 72 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 72 "keybindings.vala"
	old_value = synapse_gui_key_combo_config_get_exit (self);
#line 72 "keybindings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 2068 "keybindings.c"
		gchar* _tmp0_;
#line 72 "keybindings.vala"
		_tmp0_ = g_strdup (value);
#line 72 "keybindings.vala"
		_g_free0 (self->priv->_exit);
#line 72 "keybindings.vala"
		self->priv->_exit = _tmp0_;
#line 72 "keybindings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY]);
#line 2078 "keybindings.c"
	}
}

static inline gpointer
synapse_gui_key_combo_config_key_combo_storage_get_instance_private (SynapseGuiKeyComboConfigKeyComboStorage* self)
{
	return G_STRUCT_MEMBER_P (self, SynapseGuiKeyComboConfigKeyComboStorage_private_offset);
}

static gint
_synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare_gcompare_data_func (gconstpointer a,
                                                                                    gconstpointer b,
                                                                                    gpointer self)
{
	gint result;
	result = synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare ((SynapseGuiKeyComboConfigKeyComboStorageModCmd*) a, (SynapseGuiKeyComboConfigKeyComboStorageModCmd*) b);
#line 111 "keybindings.vala"
	return result;
#line 2097 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_set_keycombo_command (SynapseGuiKeyComboConfigKeyComboStorage* self,
                                                                     guint keyval,
                                                                     GdkModifierType mods,
                                                                     SynapseGuiKeyComboConfigCommands cmd)
{
	GeeList* list = NULL;
	GeeMap* _tmp0_;
	GeeList* _tmp6_;
	SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp7_;
	SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp8_;
	GeeList* _tmp9_;
#line 98 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 100 "keybindings.vala"
	list = NULL;
#line 101 "keybindings.vala"
	_tmp0_ = self->priv->map;
#line 101 "keybindings.vala"
	if (!gee_map_has_key (_tmp0_, (gpointer) ((guintptr) keyval))) {
#line 2120 "keybindings.c"
		GeeArrayList* _tmp1_;
		GeeMap* _tmp2_;
		GeeList* _tmp3_;
#line 103 "keybindings.vala"
		_tmp1_ = gee_array_list_new (SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
#line 103 "keybindings.vala"
		_g_object_unref0 (list);
#line 103 "keybindings.vala"
		list = (GeeList*) _tmp1_;
#line 104 "keybindings.vala"
		_tmp2_ = self->priv->map;
#line 104 "keybindings.vala"
		_tmp3_ = list;
#line 104 "keybindings.vala"
		gee_map_set (_tmp2_, (gpointer) ((guintptr) keyval), _tmp3_);
#line 2136 "keybindings.c"
	} else {
		GeeMap* _tmp4_;
		gpointer _tmp5_;
#line 108 "keybindings.vala"
		_tmp4_ = self->priv->map;
#line 108 "keybindings.vala"
		_tmp5_ = gee_map_get (_tmp4_, (gpointer) ((guintptr) keyval));
#line 108 "keybindings.vala"
		_g_object_unref0 (list);
#line 108 "keybindings.vala"
		list = (GeeList*) _tmp5_;
#line 2148 "keybindings.c"
	}
#line 110 "keybindings.vala"
	_tmp6_ = list;
#line 110 "keybindings.vala"
	_tmp7_ = synapse_gui_key_combo_config_key_combo_storage_mod_cmd_new (mods, cmd);
#line 110 "keybindings.vala"
	_tmp8_ = _tmp7_;
#line 110 "keybindings.vala"
	gee_collection_add ((GeeCollection*) _tmp6_, _tmp8_);
#line 110 "keybindings.vala"
	_g_object_unref0 (_tmp8_);
#line 111 "keybindings.vala"
	_tmp9_ = list;
#line 111 "keybindings.vala"
	gee_list_sort (_tmp9_, _synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare_gcompare_data_func, NULL, NULL);
#line 98 "keybindings.vala"
	_g_object_unref0 (list);
#line 2166 "keybindings.c"
}

static SynapseGuiKeyComboConfigCommands
synapse_gui_key_combo_config_key_combo_storage_get_command_for_keycombo (SynapseGuiKeyComboConfigKeyComboStorage* self,
                                                                         guint keyval,
                                                                         GdkModifierType mods)
{
	GeeList* list = NULL;
	GeeMap* _tmp0_;
	gpointer _tmp1_;
	GeeList* _tmp2_;
	SynapseGuiKeyComboConfigCommands _tmp3_ = 0;
	gboolean _tmp4_ = FALSE;
	gboolean _tmp5_ = FALSE;
	SynapseGuiKeyComboConfigCommands cmd = 0;
	gboolean _tmp15_ = FALSE;
	GeeList* _tmp16_;
	gint _tmp17_;
	gint _tmp18_;
	SynapseGuiKeyComboConfigCommands result;
#line 114 "keybindings.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 116 "keybindings.vala"
	list = NULL;
#line 117 "keybindings.vala"
	_tmp0_ = self->priv->map;
#line 117 "keybindings.vala"
	_tmp1_ = gee_map_get (_tmp0_, (gpointer) ((guintptr) keyval));
#line 117 "keybindings.vala"
	_g_object_unref0 (list);
#line 117 "keybindings.vala"
	list = (GeeList*) _tmp1_;
#line 118 "keybindings.vala"
	_tmp2_ = list;
#line 118 "keybindings.vala"
	if (_tmp2_ == NULL) {
#line 118 "keybindings.vala"
		result = SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND;
#line 118 "keybindings.vala"
		_g_object_unref0 (list);
#line 118 "keybindings.vala"
		return result;
#line 2209 "keybindings.c"
	}
#line 121 "keybindings.vala"
	if (mods > 0) {
#line 2213 "keybindings.c"
		GeeList* _tmp6_;
		gint _tmp7_;
		gint _tmp8_;
#line 122 "keybindings.vala"
		_tmp6_ = list;
#line 122 "keybindings.vala"
		_tmp7_ = gee_collection_get_size ((GeeCollection*) _tmp6_);
#line 122 "keybindings.vala"
		_tmp8_ = _tmp7_;
#line 122 "keybindings.vala"
		_tmp5_ = _tmp8_ == 1;
#line 2225 "keybindings.c"
	} else {
#line 121 "keybindings.vala"
		_tmp5_ = FALSE;
#line 2229 "keybindings.c"
	}
#line 121 "keybindings.vala"
	if (_tmp5_) {
#line 2233 "keybindings.c"
		GeeList* _tmp9_;
		gpointer _tmp10_;
		SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp11_;
#line 123 "keybindings.vala"
		_tmp9_ = list;
#line 123 "keybindings.vala"
		_tmp10_ = gee_list_get (_tmp9_, 0);
#line 123 "keybindings.vala"
		_tmp11_ = (SynapseGuiKeyComboConfigKeyComboStorageModCmd*) _tmp10_;
#line 123 "keybindings.vala"
		_tmp4_ = _tmp11_->mods == 0;
#line 123 "keybindings.vala"
		_g_object_unref0 (_tmp11_);
#line 2247 "keybindings.c"
	} else {
#line 121 "keybindings.vala"
		_tmp4_ = FALSE;
#line 2251 "keybindings.c"
	}
#line 121 "keybindings.vala"
	if (_tmp4_) {
#line 2255 "keybindings.c"
		GeeList* _tmp12_;
		gpointer _tmp13_;
		SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp14_;
#line 124 "keybindings.vala"
		_tmp12_ = list;
#line 124 "keybindings.vala"
		_tmp13_ = gee_list_get (_tmp12_, 0);
#line 124 "keybindings.vala"
		_tmp14_ = (SynapseGuiKeyComboConfigKeyComboStorageModCmd*) _tmp13_;
#line 124 "keybindings.vala"
		_tmp3_ = _tmp14_->cmd;
#line 124 "keybindings.vala"
		_g_object_unref0 (_tmp14_);
#line 2269 "keybindings.c"
	} else {
#line 124 "keybindings.vala"
		_tmp3_ = SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND;
#line 2273 "keybindings.c"
	}
#line 121 "keybindings.vala"
	cmd = _tmp3_;
#line 127 "keybindings.vala"
	_tmp16_ = list;
#line 127 "keybindings.vala"
	_tmp17_ = gee_collection_get_size ((GeeCollection*) _tmp16_);
#line 127 "keybindings.vala"
	_tmp18_ = _tmp17_;
#line 127 "keybindings.vala"
	if (_tmp18_ > 1) {
#line 127 "keybindings.vala"
		_tmp15_ = TRUE;
#line 2287 "keybindings.c"
	} else {
#line 127 "keybindings.vala"
		_tmp15_ = cmd == SYNAPSE_GUI_KEY_COMBO_CONFIG_COMMANDS_INVALID_COMMAND;
#line 2291 "keybindings.c"
	}
#line 127 "keybindings.vala"
	if (_tmp15_) {
#line 2295 "keybindings.c"
		{
			GeeList* _e_list = NULL;
			GeeList* _tmp19_;
			gint _e_size = 0;
			GeeList* _tmp20_;
			gint _tmp21_;
			gint _tmp22_;
			gint _e_index = 0;
#line 129 "keybindings.vala"
			_tmp19_ = list;
#line 129 "keybindings.vala"
			_e_list = _tmp19_;
#line 129 "keybindings.vala"
			_tmp20_ = _e_list;
#line 129 "keybindings.vala"
			_tmp21_ = gee_collection_get_size ((GeeCollection*) _tmp20_);
#line 129 "keybindings.vala"
			_tmp22_ = _tmp21_;
#line 129 "keybindings.vala"
			_e_size = _tmp22_;
#line 129 "keybindings.vala"
			_e_index = -1;
#line 129 "keybindings.vala"
			while (TRUE) {
#line 2320 "keybindings.c"
				gint _tmp23_;
				gint _tmp24_;
				SynapseGuiKeyComboConfigKeyComboStorageModCmd* e = NULL;
				GeeList* _tmp25_;
				gpointer _tmp26_;
				SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp27_;
#line 129 "keybindings.vala"
				_e_index = _e_index + 1;
#line 129 "keybindings.vala"
				_tmp23_ = _e_index;
#line 129 "keybindings.vala"
				_tmp24_ = _e_size;
#line 129 "keybindings.vala"
				if (!(_tmp23_ < _tmp24_)) {
#line 129 "keybindings.vala"
					break;
#line 2337 "keybindings.c"
				}
#line 129 "keybindings.vala"
				_tmp25_ = _e_list;
#line 129 "keybindings.vala"
				_tmp26_ = gee_list_get (_tmp25_, _e_index);
#line 129 "keybindings.vala"
				e = (SynapseGuiKeyComboConfigKeyComboStorageModCmd*) _tmp26_;
#line 131 "keybindings.vala"
				_tmp27_ = e;
#line 131 "keybindings.vala"
				if (_tmp27_->mods == mods) {
#line 2349 "keybindings.c"
					SynapseGuiKeyComboConfigKeyComboStorageModCmd* _tmp28_;
#line 133 "keybindings.vala"
					_tmp28_ = e;
#line 133 "keybindings.vala"
					cmd = _tmp28_->cmd;
#line 134 "keybindings.vala"
					_g_object_unref0 (e);
#line 134 "keybindings.vala"
					break;
#line 2359 "keybindings.c"
				}
#line 129 "keybindings.vala"
				_g_object_unref0 (e);
#line 2363 "keybindings.c"
			}
		}
	}
#line 138 "keybindings.vala"
	result = cmd;
#line 138 "keybindings.vala"
	_g_object_unref0 (list);
#line 138 "keybindings.vala"
	return result;
#line 2373 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_clear (SynapseGuiKeyComboConfigKeyComboStorage* self)
{
	GeeMap* _tmp0_;
#line 141 "keybindings.vala"
	g_return_if_fail (self != NULL);
#line 143 "keybindings.vala"
	_tmp0_ = self->priv->map;
#line 143 "keybindings.vala"
	gee_map_clear (_tmp0_);
#line 2386 "keybindings.c"
}

static SynapseGuiKeyComboConfigKeyComboStorage*
synapse_gui_key_combo_config_key_combo_storage_construct (GType object_type)
{
	SynapseGuiKeyComboConfigKeyComboStorage * self = NULL;
#line 74 "keybindings.vala"
	self = (SynapseGuiKeyComboConfigKeyComboStorage*) g_object_new (object_type, NULL);
#line 74 "keybindings.vala"
	return self;
#line 2397 "keybindings.c"
}

static SynapseGuiKeyComboConfigKeyComboStorage*
synapse_gui_key_combo_config_key_combo_storage_new (void)
{
#line 74 "keybindings.vala"
	return synapse_gui_key_combo_config_key_combo_storage_construct (SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE);
#line 2405 "keybindings.c"
}

static SynapseGuiKeyComboConfigKeyComboStorageModCmd*
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_construct (GType object_type,
                                                                  GdkModifierType mods,
                                                                  SynapseGuiKeyComboConfigCommands cmd)
{
	SynapseGuiKeyComboConfigKeyComboStorageModCmd * self = NULL;
#line 80 "keybindings.vala"
	self = (SynapseGuiKeyComboConfigKeyComboStorageModCmd*) g_object_new (object_type, NULL);
#line 82 "keybindings.vala"
	self->cmd = cmd;
#line 83 "keybindings.vala"
	self->mods = mods;
#line 80 "keybindings.vala"
	return self;
#line 2422 "keybindings.c"
}

static SynapseGuiKeyComboConfigKeyComboStorageModCmd*
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_new (GdkModifierType mods,
                                                            SynapseGuiKeyComboConfigCommands cmd)
{
#line 80 "keybindings.vala"
	return synapse_gui_key_combo_config_key_combo_storage_mod_cmd_construct (SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, mods, cmd);
#line 2431 "keybindings.c"
}

static gint
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_compare (SynapseGuiKeyComboConfigKeyComboStorageModCmd* a,
                                                                SynapseGuiKeyComboConfigKeyComboStorageModCmd* b)
{
	gint result;
#line 85 "keybindings.vala"
	g_return_val_if_fail (a != NULL, 0);
#line 85 "keybindings.vala"
	g_return_val_if_fail (b != NULL, 0);
#line 87 "keybindings.vala"
	result = ((gint) a->mods) - ((gint) b->mods);
#line 87 "keybindings.vala"
	return result;
#line 2447 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_class_init (SynapseGuiKeyComboConfigKeyComboStorageModCmdClass * klass,
                                                                   gpointer klass_data)
{
#line 76 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_mod_cmd_parent_class = g_type_class_peek_parent (klass);
#line 76 "keybindings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_key_combo_config_key_combo_storage_mod_cmd_finalize;
#line 2458 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_instance_init (SynapseGuiKeyComboConfigKeyComboStorageModCmd * self,
                                                                      gpointer klass)
{
#line 78 "keybindings.vala"
	self->mods = 0;
#line 79 "keybindings.vala"
	self->cmd = 0;
#line 2469 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_finalize (GObject * obj)
{
	SynapseGuiKeyComboConfigKeyComboStorageModCmd * self;
#line 76 "keybindings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_KEY_COMBO_CONFIG_KEY_COMBO_STORAGE_TYPE_MOD_CMD, SynapseGuiKeyComboConfigKeyComboStorageModCmd);
#line 76 "keybindings.vala"
	G_OBJECT_CLASS (synapse_gui_key_combo_config_key_combo_storage_mod_cmd_parent_class)->finalize (obj);
#line 2480 "keybindings.c"
}

static GType
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiKeyComboConfigKeyComboStorageModCmdClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_key_combo_config_key_combo_storage_mod_cmd_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiKeyComboConfigKeyComboStorageModCmd), 0, (GInstanceInitFunc) synapse_gui_key_combo_config_key_combo_storage_mod_cmd_instance_init, NULL };
	GType synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id;
	synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id = g_type_register_static (G_TYPE_OBJECT, "SynapseGuiKeyComboConfigKeyComboStorageModCmd", &g_define_type_info, 0);
	return synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id;
}

static GType
synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type (void)
{
	static volatile gsize synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id__once)) {
		GType synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id;
		synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id = synapse_gui_key_combo_config_key_combo_storage_mod_cmd_get_type_once ();
		g_once_init_leave (&synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id__once, synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id);
	}
	return synapse_gui_key_combo_config_key_combo_storage_mod_cmd_type_id__once;
}

static GObject *
synapse_gui_key_combo_config_key_combo_storage_constructor (GType type,
                                                            guint n_construct_properties,
                                                            GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	SynapseGuiKeyComboConfigKeyComboStorage * self;
	GeeHashMap* _tmp0_;
#line 93 "keybindings.vala"
	parent_class = G_OBJECT_CLASS (synapse_gui_key_combo_config_key_combo_storage_parent_class);
#line 93 "keybindings.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 93 "keybindings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE, SynapseGuiKeyComboConfigKeyComboStorage);
#line 95 "keybindings.vala"
	_tmp0_ = gee_hash_map_new (G_TYPE_UINT, NULL, NULL, GEE_TYPE_LIST, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 95 "keybindings.vala"
	_g_object_unref0 (self->priv->map);
#line 95 "keybindings.vala"
	self->priv->map = (GeeMap*) _tmp0_;
#line 93 "keybindings.vala"
	return obj;
#line 2527 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_class_init (SynapseGuiKeyComboConfigKeyComboStorageClass * klass,
                                                           gpointer klass_data)
{
#line 74 "keybindings.vala"
	synapse_gui_key_combo_config_key_combo_storage_parent_class = g_type_class_peek_parent (klass);
#line 74 "keybindings.vala"
	g_type_class_adjust_private_offset (klass, &SynapseGuiKeyComboConfigKeyComboStorage_private_offset);
#line 74 "keybindings.vala"
	G_OBJECT_CLASS (klass)->constructor = synapse_gui_key_combo_config_key_combo_storage_constructor;
#line 74 "keybindings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_key_combo_config_key_combo_storage_finalize;
#line 2542 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_instance_init (SynapseGuiKeyComboConfigKeyComboStorage * self,
                                                              gpointer klass)
{
#line 74 "keybindings.vala"
	self->priv = synapse_gui_key_combo_config_key_combo_storage_get_instance_private (self);
#line 2551 "keybindings.c"
}

static void
synapse_gui_key_combo_config_key_combo_storage_finalize (GObject * obj)
{
	SynapseGuiKeyComboConfigKeyComboStorage * self;
#line 74 "keybindings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_KEY_COMBO_CONFIG_TYPE_KEY_COMBO_STORAGE, SynapseGuiKeyComboConfigKeyComboStorage);
#line 91 "keybindings.vala"
	_g_object_unref0 (self->priv->map);
#line 74 "keybindings.vala"
	G_OBJECT_CLASS (synapse_gui_key_combo_config_key_combo_storage_parent_class)->finalize (obj);
#line 2564 "keybindings.c"
}

static GType
synapse_gui_key_combo_config_key_combo_storage_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiKeyComboConfigKeyComboStorageClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_key_combo_config_key_combo_storage_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiKeyComboConfigKeyComboStorage), 0, (GInstanceInitFunc) synapse_gui_key_combo_config_key_combo_storage_instance_init, NULL };
	GType synapse_gui_key_combo_config_key_combo_storage_type_id;
	synapse_gui_key_combo_config_key_combo_storage_type_id = g_type_register_static (G_TYPE_OBJECT, "SynapseGuiKeyComboConfigKeyComboStorage", &g_define_type_info, 0);
	SynapseGuiKeyComboConfigKeyComboStorage_private_offset = g_type_add_instance_private (synapse_gui_key_combo_config_key_combo_storage_type_id, sizeof (SynapseGuiKeyComboConfigKeyComboStoragePrivate));
	return synapse_gui_key_combo_config_key_combo_storage_type_id;
}

static GType
synapse_gui_key_combo_config_key_combo_storage_get_type (void)
{
	static volatile gsize synapse_gui_key_combo_config_key_combo_storage_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_key_combo_config_key_combo_storage_type_id__once)) {
		GType synapse_gui_key_combo_config_key_combo_storage_type_id;
		synapse_gui_key_combo_config_key_combo_storage_type_id = synapse_gui_key_combo_config_key_combo_storage_get_type_once ();
		g_once_init_leave (&synapse_gui_key_combo_config_key_combo_storage_type_id__once, synapse_gui_key_combo_config_key_combo_storage_type_id);
	}
	return synapse_gui_key_combo_config_key_combo_storage_type_id__once;
}

static GObject *
synapse_gui_key_combo_config_constructor (GType type,
                                          guint n_construct_properties,
                                          GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	SynapseGuiKeyComboConfig * self;
	SynapseGuiKeyComboConfigKeyComboStorage* _tmp0_;
#line 149 "keybindings.vala"
	parent_class = G_OBJECT_CLASS (synapse_gui_key_combo_config_parent_class);
#line 149 "keybindings.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 149 "keybindings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig);
#line 151 "keybindings.vala"
	_tmp0_ = synapse_gui_key_combo_config_key_combo_storage_new ();
#line 151 "keybindings.vala"
	_g_object_unref0 (self->priv->kcs);
#line 151 "keybindings.vala"
	self->priv->kcs = _tmp0_;
#line 152 "keybindings.vala"
	synapse_gui_key_combo_config_update_bindings (self);
#line 149 "keybindings.vala"
	return obj;
#line 2614 "keybindings.c"
}

static void
synapse_gui_key_combo_config_class_init (SynapseGuiKeyComboConfigClass * klass,
                                         gpointer klass_data)
{
#line 24 "keybindings.vala"
	synapse_gui_key_combo_config_parent_class = g_type_class_peek_parent (klass);
#line 24 "keybindings.vala"
	g_type_class_adjust_private_offset (klass, &SynapseGuiKeyComboConfig_private_offset);
#line 24 "keybindings.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_synapse_gui_key_combo_config_get_property;
#line 24 "keybindings.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_synapse_gui_key_combo_config_set_property;
#line 24 "keybindings.vala"
	G_OBJECT_CLASS (klass)->constructor = synapse_gui_key_combo_config_constructor;
#line 24 "keybindings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_key_combo_config_finalize;
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY] = g_param_spec_string ("activate", "activate", "activate", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY] = g_param_spec_string ("execute", "execute", "execute", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY] = g_param_spec_string ("execute-without-hide", "execute-without-hide", "execute-without-hide", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY] = g_param_spec_string ("delete-char", "delete-char", "delete-char", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY] = g_param_spec_string ("delete-word", "delete-word", "delete-word", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY] = g_param_spec_string ("alternative-delete-char", "alternative-delete-char", "alternative-delete-char", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY] = g_param_spec_string ("next-match", "next-match", "next-match", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY] = g_param_spec_string ("prev-match", "prev-match", "prev-match", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY] = g_param_spec_string ("first-match", "first-match", "first-match", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY] = g_param_spec_string ("last-match", "last-match", "last-match", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY] = g_param_spec_string ("next-match-page", "next-match-page", "next-match-page", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY] = g_param_spec_string ("prev-match-page", "prev-match-page", "prev-match-page", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY] = g_param_spec_string ("next-category", "next-category", "next-category", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY] = g_param_spec_string ("prev-category", "prev-category", "prev-category", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY] = g_param_spec_string ("next-search-type", "next-search-type", "next-search-type", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY] = g_param_spec_string ("prev-search-type", "prev-search-type", "prev-search-type", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY] = g_param_spec_string ("cancel", "cancel", "cancel", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY] = g_param_spec_string ("paste", "paste", "paste", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY] = g_param_spec_string ("alt-paste", "alt-paste", "alt-paste", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 24 "keybindings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY, synapse_gui_key_combo_config_properties[SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY] = g_param_spec_string ("exit", "exit", "exit", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 205 "keybindings.vala"
	synapse_gui_key_combo_config_mod_normalize_mask = (guint) gtk_accelerator_get_default_mod_mask ();
#line 2675 "keybindings.c"
}

static void
synapse_gui_key_combo_config_instance_init (SynapseGuiKeyComboConfig * self,
                                            gpointer klass)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	gchar* _tmp14_;
	gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
#line 24 "keybindings.vala"
	self->priv = synapse_gui_key_combo_config_get_instance_private (self);
#line 53 "keybindings.vala"
	_tmp0_ = g_strdup ("<Control>space");
#line 53 "keybindings.vala"
	self->priv->_activate = _tmp0_;
#line 54 "keybindings.vala"
	_tmp1_ = g_strdup ("Return");
#line 54 "keybindings.vala"
	self->priv->_execute = _tmp1_;
#line 55 "keybindings.vala"
	_tmp2_ = g_strdup ("<Shift>Return");
#line 55 "keybindings.vala"
	self->priv->_execute_without_hide = _tmp2_;
#line 56 "keybindings.vala"
	_tmp3_ = g_strdup ("BackSpace");
#line 56 "keybindings.vala"
	self->priv->_delete_char = _tmp3_;
#line 57 "keybindings.vala"
	_tmp4_ = g_strdup ("<Control>BackSpace");
#line 57 "keybindings.vala"
	self->priv->_delete_word = _tmp4_;
#line 58 "keybindings.vala"
	_tmp5_ = g_strdup ("Delete");
#line 58 "keybindings.vala"
	self->priv->_alternative_delete_char = _tmp5_;
#line 59 "keybindings.vala"
	_tmp6_ = g_strdup ("Down");
#line 59 "keybindings.vala"
	self->priv->_next_match = _tmp6_;
#line 60 "keybindings.vala"
	_tmp7_ = g_strdup ("Up");
#line 60 "keybindings.vala"
	self->priv->_prev_match = _tmp7_;
#line 61 "keybindings.vala"
	_tmp8_ = g_strdup ("Home");
#line 61 "keybindings.vala"
	self->priv->_first_match = _tmp8_;
#line 62 "keybindings.vala"
	_tmp9_ = g_strdup ("End");
#line 62 "keybindings.vala"
	self->priv->_last_match = _tmp9_;
#line 63 "keybindings.vala"
	_tmp10_ = g_strdup ("Page_Down");
#line 63 "keybindings.vala"
	self->priv->_next_match_page = _tmp10_;
#line 64 "keybindings.vala"
	_tmp11_ = g_strdup ("Page_Up");
#line 64 "keybindings.vala"
	self->priv->_prev_match_page = _tmp11_;
#line 65 "keybindings.vala"
	_tmp12_ = g_strdup ("Right");
#line 65 "keybindings.vala"
	self->priv->_next_category = _tmp12_;
#line 66 "keybindings.vala"
	_tmp13_ = g_strdup ("Left");
#line 66 "keybindings.vala"
	self->priv->_prev_category = _tmp13_;
#line 67 "keybindings.vala"
	_tmp14_ = g_strdup ("Tab");
#line 67 "keybindings.vala"
	self->priv->_next_search_type = _tmp14_;
#line 68 "keybindings.vala"
	_tmp15_ = g_strdup ("<Shift>ISO_Left_Tab");
#line 68 "keybindings.vala"
	self->priv->_prev_search_type = _tmp15_;
#line 69 "keybindings.vala"
	_tmp16_ = g_strdup ("Escape");
#line 69 "keybindings.vala"
	self->priv->_cancel = _tmp16_;
#line 70 "keybindings.vala"
	_tmp17_ = g_strdup ("<Control>v");
#line 70 "keybindings.vala"
	self->priv->_paste = _tmp17_;
#line 71 "keybindings.vala"
	_tmp18_ = g_strdup ("<Shift>Insert");
#line 71 "keybindings.vala"
	self->priv->_alt_paste = _tmp18_;
#line 72 "keybindings.vala"
	_tmp19_ = g_strdup ("<Control>q");
#line 72 "keybindings.vala"
	self->priv->_exit = _tmp19_;
#line 2784 "keybindings.c"
}

static void
synapse_gui_key_combo_config_finalize (GObject * obj)
{
	SynapseGuiKeyComboConfig * self;
#line 24 "keybindings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig);
#line 53 "keybindings.vala"
	_g_free0 (self->priv->_activate);
#line 54 "keybindings.vala"
	_g_free0 (self->priv->_execute);
#line 55 "keybindings.vala"
	_g_free0 (self->priv->_execute_without_hide);
#line 56 "keybindings.vala"
	_g_free0 (self->priv->_delete_char);
#line 57 "keybindings.vala"
	_g_free0 (self->priv->_delete_word);
#line 58 "keybindings.vala"
	_g_free0 (self->priv->_alternative_delete_char);
#line 59 "keybindings.vala"
	_g_free0 (self->priv->_next_match);
#line 60 "keybindings.vala"
	_g_free0 (self->priv->_prev_match);
#line 61 "keybindings.vala"
	_g_free0 (self->priv->_first_match);
#line 62 "keybindings.vala"
	_g_free0 (self->priv->_last_match);
#line 63 "keybindings.vala"
	_g_free0 (self->priv->_next_match_page);
#line 64 "keybindings.vala"
	_g_free0 (self->priv->_prev_match_page);
#line 65 "keybindings.vala"
	_g_free0 (self->priv->_next_category);
#line 66 "keybindings.vala"
	_g_free0 (self->priv->_prev_category);
#line 67 "keybindings.vala"
	_g_free0 (self->priv->_next_search_type);
#line 68 "keybindings.vala"
	_g_free0 (self->priv->_prev_search_type);
#line 69 "keybindings.vala"
	_g_free0 (self->priv->_cancel);
#line 70 "keybindings.vala"
	_g_free0 (self->priv->_paste);
#line 71 "keybindings.vala"
	_g_free0 (self->priv->_alt_paste);
#line 72 "keybindings.vala"
	_g_free0 (self->priv->_exit);
#line 147 "keybindings.vala"
	_g_object_unref0 (self->priv->kcs);
#line 24 "keybindings.vala"
	G_OBJECT_CLASS (synapse_gui_key_combo_config_parent_class)->finalize (obj);
#line 2837 "keybindings.c"
}

static GType
synapse_gui_key_combo_config_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiKeyComboConfigClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_key_combo_config_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiKeyComboConfig), 0, (GInstanceInitFunc) synapse_gui_key_combo_config_instance_init, NULL };
	GType synapse_gui_key_combo_config_type_id;
	synapse_gui_key_combo_config_type_id = g_type_register_static (SYNAPSE_TYPE_CONFIG_OBJECT, "SynapseGuiKeyComboConfig", &g_define_type_info, 0);
	SynapseGuiKeyComboConfig_private_offset = g_type_add_instance_private (synapse_gui_key_combo_config_type_id, sizeof (SynapseGuiKeyComboConfigPrivate));
	return synapse_gui_key_combo_config_type_id;
}

GType
synapse_gui_key_combo_config_get_type (void)
{
	static volatile gsize synapse_gui_key_combo_config_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_key_combo_config_type_id__once)) {
		GType synapse_gui_key_combo_config_type_id;
		synapse_gui_key_combo_config_type_id = synapse_gui_key_combo_config_get_type_once ();
		g_once_init_leave (&synapse_gui_key_combo_config_type_id__once, synapse_gui_key_combo_config_type_id);
	}
	return synapse_gui_key_combo_config_type_id__once;
}

static void
_vala_synapse_gui_key_combo_config_get_property (GObject * object,
                                                 guint property_id,
                                                 GValue * value,
                                                 GParamSpec * pspec)
{
	SynapseGuiKeyComboConfig * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig);
#line 24 "keybindings.vala"
	switch (property_id) {
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_activate (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_execute (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_execute_without_hide (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_delete_char (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_delete_word (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_alternative_delete_char (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_next_match (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_prev_match (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_first_match (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_last_match (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_next_match_page (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_prev_match_page (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_next_category (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_prev_category (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_next_search_type (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_prev_search_type (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_cancel (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_paste (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_alt_paste (self));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY:
#line 24 "keybindings.vala"
		g_value_set_string (value, synapse_gui_key_combo_config_get_exit (self));
#line 24 "keybindings.vala"
		break;
#line 2992 "keybindings.c"
		default:
#line 24 "keybindings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 24 "keybindings.vala"
		break;
#line 2998 "keybindings.c"
	}
}

static void
_vala_synapse_gui_key_combo_config_set_property (GObject * object,
                                                 guint property_id,
                                                 const GValue * value,
                                                 GParamSpec * pspec)
{
	SynapseGuiKeyComboConfig * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig);
#line 24 "keybindings.vala"
	switch (property_id) {
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ACTIVATE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_activate (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_execute (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXECUTE_WITHOUT_HIDE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_execute_without_hide (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_CHAR_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_delete_char (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_DELETE_WORD_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_delete_word (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ALTERNATIVE_DELETE_CHAR_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_alternative_delete_char (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_next_match (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_prev_match (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_FIRST_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_first_match (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_LAST_MATCH_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_last_match (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_MATCH_PAGE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_next_match_page (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_MATCH_PAGE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_prev_match_page (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_CATEGORY_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_next_category (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_CATEGORY_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_prev_category (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_NEXT_SEARCH_TYPE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_next_search_type (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PREV_SEARCH_TYPE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_prev_search_type (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_CANCEL_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_cancel (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_PASTE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_paste (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_ALT_PASTE_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_alt_paste (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 24 "keybindings.vala"
		case SYNAPSE_GUI_KEY_COMBO_CONFIG_EXIT_PROPERTY:
#line 24 "keybindings.vala"
		synapse_gui_key_combo_config_set_exit (self, g_value_get_string (value));
#line 24 "keybindings.vala"
		break;
#line 3132 "keybindings.c"
		default:
#line 24 "keybindings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 24 "keybindings.vala"
		break;
#line 3138 "keybindings.c"
	}
}

static void
_vala_array_destroy (gpointer array,
                     gssize array_length,
                     GDestroyNotify destroy_func)
{
#line 24 "synapse-main.vala"
	if ((array != NULL) && (destroy_func != NULL)) {
#line 3149 "keybindings.c"
		gssize i;
#line 24 "synapse-main.vala"
		for (i = 0; i < array_length; i = i + 1) {
#line 24 "synapse-main.vala"
			if (((gpointer*) array)[i] != NULL) {
#line 24 "synapse-main.vala"
				destroy_func (((gpointer*) array)[i]);
#line 3157 "keybindings.c"
			}
		}
	}
}

static void
_vala_array_free (gpointer array,
                  gssize array_length,
                  GDestroyNotify destroy_func)
{
#line 24 "synapse-main.vala"
	_vala_array_destroy (array, array_length, destroy_func);
#line 24 "synapse-main.vala"
	g_free (array);
#line 3172 "keybindings.c"
}

static gssize
_vala_array_length (gpointer array)
{
	gssize length;
	length = 0;
#line 24 "synapse-main.vala"
	if (array) {
#line 24 "synapse-main.vala"
		while (((gpointer*) array)[length]) {
#line 24 "synapse-main.vala"
			length++;
#line 3186 "keybindings.c"
		}
	}
#line 24 "synapse-main.vala"
	return length;
#line 3191 "keybindings.c"
}

