/* Clicking.c generated by valac 0.56.18-dirty, the Vala compiler
 * generated from Clicking.vala, do not modify */

/*
 * SPDX-License-Identifier: GPL-2.0-or-later
 * SPDX-FileCopyrightText: 2011-2026 elementary, Inc. (https://elementary.io)
 */

#include "mouse-touchpad.h"
#include <glib-object.h>
#include <glib.h>
#include <glib/gi18n-lib.h>
#include <gio/gio.h>
#include <gtk/gtk.h>
#include <switchboard.h>
#include <stdlib.h>
#include <string.h>
#include <granite-7.h>
#include <float.h>
#include <math.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

enum  {
	MOUSE_TOUCHPAD_CLICKING_VIEW_0_PROPERTY,
	MOUSE_TOUCHPAD_CLICKING_VIEW_NUM_PROPERTIES
};
static GParamSpec* mouse_touchpad_clicking_view_properties[MOUSE_TOUCHPAD_CLICKING_VIEW_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
typedef struct _Block1Data Block1Data;
#define _g_free0(var) (var = (g_free (var), NULL))

struct _Block1Data {
	int _ref_count_;
	MouseTouchpadClickingView* self;
	GtkAdjustment* hold_scale_adjustment;
	GtkSpinButton* hold_spinbutton;
	GtkAdjustment* dwell_click_adjustment;
	GtkSpinButton* dwell_click_spinbutton;
};

static gpointer mouse_touchpad_clicking_view_parent_class = NULL;

static GObject * mouse_touchpad_clicking_view_constructor (GType type,
                                                    guint n_construct_properties,
                                                    GObjectConstructParam * construct_properties);
static Block1Data* block1_data_ref (Block1Data* _data1_);
static void block1_data_unref (void * _userdata_);
static gboolean _mouse_touchpad_clicking_view___lambda4_ (Block1Data* _data1_);
static gboolean __mouse_touchpad_clicking_view___lambda4__gtk_spin_button_output (GtkSpinButton* _sender,
                                                                           gpointer self);
static gboolean _mouse_touchpad_clicking_view___lambda5_ (Block1Data* _data1_);
static gboolean __mouse_touchpad_clicking_view___lambda5__gtk_spin_button_output (GtkSpinButton* _sender,
                                                                           gpointer self);
static GType mouse_touchpad_clicking_view_get_type_once (void);

MouseTouchpadClickingView*
mouse_touchpad_clicking_view_construct (GType object_type)
{
	MouseTouchpadClickingView * self = NULL;
	GThemedIcon* _tmp0_;
	GThemedIcon* _tmp1_;
	_tmp0_ = (GThemedIcon*) g_themed_icon_new ("mouse-touchpad-clicking");
	_tmp1_ = _tmp0_;
	self = (MouseTouchpadClickingView*) g_object_new (object_type, "header", _ ("Behavior"), "icon", _tmp1_, "title", _ ("Clicking"), NULL);
	_g_object_unref0 (_tmp1_);
	return self;
}

MouseTouchpadClickingView*
mouse_touchpad_clicking_view_new (void)
{
	return mouse_touchpad_clicking_view_construct (MOUSE_TOUCHPAD_TYPE_CLICKING_VIEW);
}

static Block1Data*
block1_data_ref (Block1Data* _data1_)
{
	g_atomic_int_inc (&_data1_->_ref_count_);
	return _data1_;
}

static void
block1_data_unref (void * _userdata_)
{
	Block1Data* _data1_;
	_data1_ = (Block1Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
		MouseTouchpadClickingView* self;
		self = _data1_->self;
		_g_object_unref0 (_data1_->dwell_click_spinbutton);
		_g_object_unref0 (_data1_->dwell_click_adjustment);
		_g_object_unref0 (_data1_->hold_spinbutton);
		_g_object_unref0 (_data1_->hold_scale_adjustment);
		_g_object_unref0 (self);
		g_slice_free (Block1Data, _data1_);
	}
}

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

static gboolean
_mouse_touchpad_clicking_view___lambda4_ (Block1Data* _data1_)
{
	MouseTouchpadClickingView* self;
	GtkSpinButton* _tmp0_;
	GtkAdjustment* _tmp1_;
	gdouble _tmp2_;
	gdouble _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gboolean result;
	self = _data1_->self;
	_tmp0_ = _data1_->dwell_click_spinbutton;
	_tmp1_ = _data1_->dwell_click_adjustment;
	_tmp2_ = gtk_adjustment_get_value (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = g_strdup_printf (_ ("%.1f seconds"), _tmp3_);
	_tmp5_ = _tmp4_;
	gtk_editable_set_text ((GtkEditable*) _tmp0_, _tmp5_);
	_g_free0 (_tmp5_);
	result = TRUE;
	return result;
}

static gboolean
__mouse_touchpad_clicking_view___lambda4__gtk_spin_button_output (GtkSpinButton* _sender,
                                                                  gpointer self)
{
	gboolean result;
	result = _mouse_touchpad_clicking_view___lambda4_ (self);
	return result;
}

static gboolean
_mouse_touchpad_clicking_view___lambda5_ (Block1Data* _data1_)
{
	MouseTouchpadClickingView* self;
	GtkSpinButton* _tmp0_;
	GtkAdjustment* _tmp1_;
	gdouble _tmp2_;
	gdouble _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gboolean result;
	self = _data1_->self;
	_tmp0_ = _data1_->hold_spinbutton;
	_tmp1_ = _data1_->hold_scale_adjustment;
	_tmp2_ = gtk_adjustment_get_value (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = g_strdup_printf (_ ("%.1f seconds"), _tmp3_);
	_tmp5_ = _tmp4_;
	gtk_editable_set_text ((GtkEditable*) _tmp0_, _tmp5_);
	_g_free0 (_tmp5_);
	result = TRUE;
	return result;
}

static gboolean
__mouse_touchpad_clicking_view___lambda5__gtk_spin_button_output (GtkSpinButton* _sender,
                                                                  gpointer self)
{
	gboolean result;
	result = _mouse_touchpad_clicking_view___lambda5_ (self);
	return result;
}

static GObject *
mouse_touchpad_clicking_view_constructor (GType type,
                                          guint n_construct_properties,
                                          GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	MouseTouchpadClickingView * self;
	Block1Data* _data1_;
	GtkCheckButton* mouse_left = NULL;
	GtkImage* _tmp0_ = NULL;
	gchar* _tmp1_;
	GtkCheckButton* _tmp2_ = NULL;
	GtkCheckButton* _tmp3_;
	GtkCheckButton* mouse_right = NULL;
	GtkImage* _tmp4_ = NULL;
	GtkCheckButton* _tmp5_;
	GtkCheckButton* _tmp6_;
	gchar* _tmp7_;
	GtkCheckButton* _tmp8_ = NULL;
	GtkCheckButton* _tmp9_;
	GraniteBox* primary_button_switcher = NULL;
	GraniteBox* _tmp10_ = NULL;
	GraniteHeaderLabel* primary_button_label = NULL;
	GraniteBox* _tmp19_;
	GtkWidget* _tmp20_;
	GraniteHeaderLabel* _tmp21_ = NULL;
	GtkSwitch* hold_switch = NULL;
	GtkSwitch* _tmp22_ = NULL;
	GraniteHeaderLabel* hold_header = NULL;
	GtkSwitch* _tmp23_;
	GtkWidget* _tmp24_;
	gchar* _tmp25_;
	GraniteHeaderLabel* _tmp26_ = NULL;
	GtkAdjustment* _tmp27_;
	GtkScale* hold_scale = NULL;
	GtkAdjustment* _tmp28_;
	GtkScale* _tmp29_ = NULL;
	GtkScale* _tmp30_;
	GtkAdjustment* _tmp31_;
	GtkSpinButton* _tmp32_ = NULL;
	GtkBox* hold_spin_box = NULL;
	GtkBox* _tmp33_ = NULL;
	GtkBox* _tmp34_;
	GtkScale* _tmp35_;
	GtkBox* _tmp36_;
	GtkSpinButton* _tmp37_;
	GtkAdjustment* double_click_speed_adjustment = NULL;
	GtkAdjustment* _tmp38_;
	GtkScale* double_click_speed_scale = NULL;
	GtkAdjustment* _tmp39_;
	GtkScale* _tmp40_ = NULL;
	GtkScale* _tmp41_;
	GraniteHeaderLabel* double_click_header = NULL;
	GtkScale* _tmp42_;
	GtkWidget* _tmp43_;
	gchar* _tmp44_;
	GraniteHeaderLabel* _tmp45_ = NULL;
	GtkSwitch* dwell_click_switch = NULL;
	GtkSwitch* _tmp46_ = NULL;
	GraniteHeaderLabel* dwell_click_header = NULL;
	GtkSwitch* _tmp47_;
	GtkWidget* _tmp48_;
	gchar* _tmp49_;
	GraniteHeaderLabel* _tmp50_ = NULL;
	GtkAdjustment* _tmp51_;
	GtkScale* dwell_click_delay_scale = NULL;
	GtkAdjustment* _tmp52_;
	GtkScale* _tmp53_ = NULL;
	GtkScale* _tmp54_;
	GtkAdjustment* _tmp55_;
	GtkSpinButton* _tmp56_ = NULL;
	GtkBox* dwell_click_spin_box = NULL;
	GtkBox* _tmp57_ = NULL;
	GtkBox* _tmp58_;
	GtkScale* _tmp59_;
	GtkBox* _tmp60_;
	GtkSpinButton* _tmp61_;
	GtkSwitch* primary_paste_switch = NULL;
	gchar* _tmp62_;
	GtkSwitch* _tmp63_ = NULL;
	GraniteHeaderLabel* primary_paste_header = NULL;
	GtkSwitch* _tmp64_;
	GtkWidget* _tmp65_;
	gchar* _tmp66_;
	GraniteHeaderLabel* _tmp67_ = NULL;
	GtkGrid* content_area = NULL;
	GtkGrid* _tmp68_ = NULL;
	GtkGrid* _tmp69_;
	GraniteHeaderLabel* _tmp70_;
	GtkGrid* _tmp71_;
	GraniteBox* _tmp72_;
	GtkGrid* _tmp73_;
	GraniteHeaderLabel* _tmp74_;
	GtkGrid* _tmp75_;
	GtkScale* _tmp76_;
	GtkGrid* _tmp77_;
	GraniteHeaderLabel* _tmp78_;
	GtkGrid* _tmp79_;
	GtkSwitch* _tmp80_;
	GtkGrid* _tmp81_;
	GtkBox* _tmp82_;
	GtkGrid* _tmp83_;
	GraniteHeaderLabel* _tmp84_;
	GtkGrid* _tmp85_;
	GtkSwitch* _tmp86_;
	GtkGrid* _tmp87_;
	GtkBox* _tmp88_;
	GtkGrid* _tmp89_;
	GraniteHeaderLabel* _tmp90_;
	GtkGrid* _tmp91_;
	GtkSwitch* _tmp92_;
	GtkGrid* _tmp93_;
	GSimpleActionGroup* action_group = NULL;
	GSimpleActionGroup* _tmp94_;
	GSimpleActionGroup* _tmp95_;
	GSettings* _tmp96_;
	GSettings* _tmp97_;
	GAction* _tmp98_;
	GAction* _tmp99_;
	GSimpleActionGroup* _tmp100_;
	GSettings* a11y_mouse_settings = NULL;
	GSettings* _tmp101_;
	GSettings* _tmp102_;
	GtkSwitch* _tmp103_;
	GSettings* _tmp104_;
	GtkScale* _tmp105_;
	GSettings* _tmp106_;
	GtkBox* _tmp107_;
	GSettings* _tmp108_;
	GtkAdjustment* _tmp109_;
	GSettings* _tmp110_;
	GtkScale* _tmp111_;
	GSettings* _tmp112_;
	GtkBox* _tmp113_;
	GSettings* _tmp114_;
	GtkSwitch* _tmp115_;
	GSettings* _tmp116_;
	GtkAdjustment* _tmp117_;
	GSettings* mouse_settings = NULL;
	GSettings* _tmp118_;
	GSettings* _tmp119_;
	GtkAdjustment* _tmp120_;
	GSettings* _tmp121_;
	GtkCheckButton* _tmp122_;
	GtkSpinButton* _tmp123_;
	GtkSpinButton* _tmp124_;
	parent_class = G_OBJECT_CLASS (mouse_touchpad_clicking_view_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, MOUSE_TOUCHPAD_TYPE_CLICKING_VIEW, MouseTouchpadClickingView);
	_data1_ = g_slice_new0 (Block1Data);
	_data1_->_ref_count_ = 1;
	_data1_->self = g_object_ref (self);
	switchboard_settings_page_set_show_end_title_buttons ((SwitchboardSettingsPage*) self, TRUE);
	_tmp0_ = (GtkImage*) gtk_image_new_from_icon_name ("mouse-left-symbolic");
	gtk_image_set_pixel_size (_tmp0_, 32);
	g_object_ref_sink (_tmp0_);
	_tmp1_ = g_strdup (NC_ ("mouse-button", "Left"));
	_tmp2_ = (GtkCheckButton*) gtk_check_button_new ();
	gtk_check_button_set_child (_tmp2_, (GtkWidget*) _tmp0_);
	_g_object_unref0 (_tmp0_);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp2_, _tmp1_);
	_g_free0 (_tmp1_);
	g_object_ref_sink (_tmp2_);
	mouse_left = _tmp2_;
	_tmp3_ = mouse_left;
	gtk_widget_add_css_class ((GtkWidget*) _tmp3_, "image-button");
	_tmp4_ = (GtkImage*) gtk_image_new_from_icon_name ("mouse-right-symbolic");
	gtk_image_set_pixel_size (_tmp4_, 32);
	g_object_ref_sink (_tmp4_);
	_tmp5_ = mouse_left;
	_tmp6_ = _g_object_ref0 (_tmp5_);
	_tmp7_ = g_strdup (NC_ ("mouse-button", "Right"));
	_tmp8_ = (GtkCheckButton*) gtk_check_button_new ();
	gtk_check_button_set_child (_tmp8_, (GtkWidget*) _tmp4_);
	_g_object_unref0 (_tmp4_);
	gtk_check_button_set_group (_tmp8_, _tmp6_);
	_g_object_unref0 (_tmp6_);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp8_, _tmp7_);
	_g_free0 (_tmp7_);
	g_object_ref_sink (_tmp8_);
	mouse_right = _tmp8_;
	_tmp9_ = mouse_right;
	gtk_widget_add_css_class ((GtkWidget*) _tmp9_, "image-button");
	_tmp10_ = granite_box_new (GTK_ORIENTATION_HORIZONTAL, GRANITE_BOX_SPACING_DOUBLE);
	gtk_widget_set_halign ((GtkWidget*) _tmp10_, GTK_ALIGN_START);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp10_, 12);
	g_object_ref_sink (_tmp10_);
	primary_button_switcher = _tmp10_;
	if ((gtk_widget_get_state_flags ((GtkWidget*) self) & GTK_STATE_FLAG_DIR_LTR) == GTK_STATE_FLAG_DIR_LTR) {
		GraniteBox* _tmp11_;
		GtkCheckButton* _tmp12_;
		GraniteBox* _tmp13_;
		GtkCheckButton* _tmp14_;
		_tmp11_ = primary_button_switcher;
		_tmp12_ = mouse_left;
		gtk_box_append ((GtkBox*) _tmp11_, (GtkWidget*) _tmp12_);
		_tmp13_ = primary_button_switcher;
		_tmp14_ = mouse_right;
		gtk_box_append ((GtkBox*) _tmp13_, (GtkWidget*) _tmp14_);
	} else {
		GraniteBox* _tmp15_;
		GtkCheckButton* _tmp16_;
		GraniteBox* _tmp17_;
		GtkCheckButton* _tmp18_;
		_tmp15_ = primary_button_switcher;
		_tmp16_ = mouse_right;
		gtk_box_append ((GtkBox*) _tmp15_, (GtkWidget*) _tmp16_);
		_tmp17_ = primary_button_switcher;
		_tmp18_ = mouse_left;
		gtk_box_append ((GtkBox*) _tmp17_, (GtkWidget*) _tmp18_);
	}
	_tmp19_ = primary_button_switcher;
	_tmp20_ = _g_object_ref0 ((GtkWidget*) _tmp19_);
	_tmp21_ = granite_header_label_new (_ ("Primary Button"));
	granite_header_label_set_mnemonic_widget (_tmp21_, _tmp20_);
	_g_object_unref0 (_tmp20_);
	g_object_ref_sink (_tmp21_);
	primary_button_label = _tmp21_;
	_tmp22_ = (GtkSwitch*) gtk_switch_new ();
	gtk_widget_set_halign ((GtkWidget*) _tmp22_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp22_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp22_);
	hold_switch = _tmp22_;
	_tmp23_ = hold_switch;
	_tmp24_ = _g_object_ref0 ((GtkWidget*) _tmp23_);
	_tmp25_ = g_strdup (_ ("Long-press and release the primary button to secondary click"));
	_tmp26_ = granite_header_label_new (_ ("Long-press Secondary Click"));
	granite_header_label_set_mnemonic_widget (_tmp26_, _tmp24_);
	_g_object_unref0 (_tmp24_);
	granite_header_label_set_secondary_text (_tmp26_, _tmp25_);
	_g_free0 (_tmp25_);
	g_object_ref_sink (_tmp26_);
	hold_header = _tmp26_;
	_tmp27_ = gtk_adjustment_new ((gdouble) 0, 0.5, (gdouble) 3, 0.1, 0.1, 0.1);
	g_object_ref_sink (_tmp27_);
	_data1_->hold_scale_adjustment = _tmp27_;
	_tmp28_ = _data1_->hold_scale_adjustment;
	_tmp29_ = (GtkScale*) gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, _tmp28_);
	gtk_scale_set_draw_value (_tmp29_, FALSE);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp29_, TRUE);
	g_object_ref_sink (_tmp29_);
	hold_scale = _tmp29_;
	_tmp30_ = hold_scale;
	gtk_scale_add_mark (_tmp30_, 1.2, GTK_POS_BOTTOM, NULL);
	_tmp31_ = _data1_->hold_scale_adjustment;
	_tmp32_ = (GtkSpinButton*) gtk_spin_button_new (_tmp31_, (gdouble) 1, (guint) 1);
	gtk_editable_set_width_chars ((GtkEditable*) _tmp32_, 10);
	gtk_widget_set_valign ((GtkWidget*) _tmp32_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp32_);
	_data1_->hold_spinbutton = _tmp32_;
	_tmp33_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp33_, 12);
	g_object_ref_sink (_tmp33_);
	hold_spin_box = _tmp33_;
	_tmp34_ = hold_spin_box;
	_tmp35_ = hold_scale;
	gtk_box_append (_tmp34_, (GtkWidget*) _tmp35_);
	_tmp36_ = hold_spin_box;
	_tmp37_ = _data1_->hold_spinbutton;
	gtk_box_append (_tmp36_, (GtkWidget*) _tmp37_);
	_tmp38_ = gtk_adjustment_new ((gdouble) 400, (gdouble) 100, (gdouble) 1000, 0.1, 0.1, 0.1);
	g_object_ref_sink (_tmp38_);
	double_click_speed_adjustment = _tmp38_;
	_tmp39_ = double_click_speed_adjustment;
	_tmp40_ = (GtkScale*) gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, _tmp39_);
	gtk_scale_set_draw_value (_tmp40_, FALSE);
	g_object_ref_sink (_tmp40_);
	double_click_speed_scale = _tmp40_;
	_tmp41_ = double_click_speed_scale;
	gtk_scale_add_mark (_tmp41_, (gdouble) 400, GTK_POS_BOTTOM, NULL);
	_tmp42_ = double_click_speed_scale;
	_tmp43_ = _g_object_ref0 ((GtkWidget*) _tmp42_);
	_tmp44_ = g_strdup (_ ("How quickly two clicks in a row will be treated as a double-click"));
	_tmp45_ = granite_header_label_new (_ ("Double-click Speed"));
	granite_header_label_set_mnemonic_widget (_tmp45_, _tmp43_);
	_g_object_unref0 (_tmp43_);
	granite_header_label_set_secondary_text (_tmp45_, _tmp44_);
	_g_free0 (_tmp44_);
	g_object_ref_sink (_tmp45_);
	double_click_header = _tmp45_;
	_tmp46_ = (GtkSwitch*) gtk_switch_new ();
	gtk_widget_set_halign ((GtkWidget*) _tmp46_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp46_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp46_);
	dwell_click_switch = _tmp46_;
	_tmp47_ = dwell_click_switch;
	_tmp48_ = _g_object_ref0 ((GtkWidget*) _tmp47_);
	_tmp49_ = g_strdup (_ ("Hold the pointer still to automatically click"));
	_tmp50_ = granite_header_label_new (_ ("Dwell Click"));
	granite_header_label_set_mnemonic_widget (_tmp50_, _tmp48_);
	_g_object_unref0 (_tmp48_);
	granite_header_label_set_secondary_text (_tmp50_, _tmp49_);
	_g_free0 (_tmp49_);
	g_object_ref_sink (_tmp50_);
	dwell_click_header = _tmp50_;
	_tmp51_ = gtk_adjustment_new ((gdouble) 0, 0.5, (gdouble) 3, 0.1, 0.1, 0.1);
	g_object_ref_sink (_tmp51_);
	_data1_->dwell_click_adjustment = _tmp51_;
	_tmp52_ = _data1_->dwell_click_adjustment;
	_tmp53_ = (GtkScale*) gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, _tmp52_);
	gtk_scale_set_draw_value (_tmp53_, FALSE);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp53_, TRUE);
	g_object_ref_sink (_tmp53_);
	dwell_click_delay_scale = _tmp53_;
	_tmp54_ = dwell_click_delay_scale;
	gtk_scale_add_mark (_tmp54_, 1.2, GTK_POS_BOTTOM, NULL);
	_tmp55_ = _data1_->dwell_click_adjustment;
	_tmp56_ = (GtkSpinButton*) gtk_spin_button_new (_tmp55_, (gdouble) 1, (guint) 1);
	gtk_editable_set_width_chars ((GtkEditable*) _tmp56_, 10);
	gtk_widget_set_valign ((GtkWidget*) _tmp56_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp56_);
	_data1_->dwell_click_spinbutton = _tmp56_;
	_tmp57_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp57_, 12);
	g_object_ref_sink (_tmp57_);
	dwell_click_spin_box = _tmp57_;
	_tmp58_ = dwell_click_spin_box;
	_tmp59_ = dwell_click_delay_scale;
	gtk_box_append (_tmp58_, (GtkWidget*) _tmp59_);
	_tmp60_ = dwell_click_spin_box;
	_tmp61_ = _data1_->dwell_click_spinbutton;
	gtk_box_append (_tmp60_, (GtkWidget*) _tmp61_);
	_tmp62_ = g_strdup ("clicking.gtk-enable-primary-paste");
	_tmp63_ = (GtkSwitch*) gtk_switch_new ();
	gtk_actionable_set_action_name ((GtkActionable*) _tmp63_, _tmp62_);
	_g_free0 (_tmp62_);
	gtk_widget_set_halign ((GtkWidget*) _tmp63_, GTK_ALIGN_END);
	gtk_widget_set_valign ((GtkWidget*) _tmp63_, GTK_ALIGN_CENTER);
	g_object_ref_sink (_tmp63_);
	primary_paste_switch = _tmp63_;
	_tmp64_ = primary_paste_switch;
	_tmp65_ = _g_object_ref0 ((GtkWidget*) _tmp64_);
	_tmp66_ = g_strdup (_ ("Middle or three-finger click on an input to paste selected text"));
	_tmp67_ = granite_header_label_new (_ ("Middle Click Paste"));
	granite_header_label_set_mnemonic_widget (_tmp67_, _tmp65_);
	_g_object_unref0 (_tmp65_);
	granite_header_label_set_secondary_text (_tmp67_, _tmp66_);
	_g_free0 (_tmp66_);
	g_object_ref_sink (_tmp67_);
	primary_paste_header = _tmp67_;
	_tmp68_ = (GtkGrid*) gtk_grid_new ();
	gtk_grid_set_row_spacing (_tmp68_, 6);
	g_object_ref_sink (_tmp68_);
	content_area = _tmp68_;
	_tmp69_ = content_area;
	_tmp70_ = primary_button_label;
	gtk_grid_attach (_tmp69_, (GtkWidget*) _tmp70_, 0, 0, 2, 1);
	_tmp71_ = content_area;
	_tmp72_ = primary_button_switcher;
	gtk_grid_attach (_tmp71_, (GtkWidget*) _tmp72_, 0, 1, 2, 1);
	_tmp73_ = content_area;
	_tmp74_ = double_click_header;
	gtk_grid_attach (_tmp73_, (GtkWidget*) _tmp74_, 0, 2, 2, 1);
	_tmp75_ = content_area;
	_tmp76_ = double_click_speed_scale;
	gtk_grid_attach (_tmp75_, (GtkWidget*) _tmp76_, 0, 3, 2, 1);
	_tmp77_ = content_area;
	_tmp78_ = dwell_click_header;
	gtk_grid_attach (_tmp77_, (GtkWidget*) _tmp78_, 0, 4, 1, 1);
	_tmp79_ = content_area;
	_tmp80_ = dwell_click_switch;
	gtk_grid_attach (_tmp79_, (GtkWidget*) _tmp80_, 1, 4, 1, 1);
	_tmp81_ = content_area;
	_tmp82_ = dwell_click_spin_box;
	gtk_grid_attach (_tmp81_, (GtkWidget*) _tmp82_, 0, 5, 2, 1);
	_tmp83_ = content_area;
	_tmp84_ = hold_header;
	gtk_grid_attach (_tmp83_, (GtkWidget*) _tmp84_, 0, 6, 1, 1);
	_tmp85_ = content_area;
	_tmp86_ = hold_switch;
	gtk_grid_attach (_tmp85_, (GtkWidget*) _tmp86_, 1, 6, 1, 1);
	_tmp87_ = content_area;
	_tmp88_ = hold_spin_box;
	gtk_grid_attach (_tmp87_, (GtkWidget*) _tmp88_, 0, 7, 2, 1);
	_tmp89_ = content_area;
	_tmp90_ = primary_paste_header;
	gtk_grid_attach (_tmp89_, (GtkWidget*) _tmp90_, 0, 8, 1, 1);
	_tmp91_ = content_area;
	_tmp92_ = primary_paste_switch;
	gtk_grid_attach (_tmp91_, (GtkWidget*) _tmp92_, 1, 8, 1, 1);
	_tmp93_ = content_area;
	switchboard_settings_page_set_child ((SwitchboardSettingsPage*) self, (GtkWidget*) _tmp93_);
	_tmp94_ = g_simple_action_group_new ();
	action_group = _tmp94_;
	_tmp95_ = action_group;
	_tmp96_ = g_settings_new ("org.gnome.desktop.interface");
	_tmp97_ = _tmp96_;
	_tmp98_ = g_settings_create_action (_tmp97_, "gtk-enable-primary-paste");
	_tmp99_ = _tmp98_;
	g_action_map_add_action ((GActionMap*) _tmp95_, _tmp99_);
	_g_object_unref0 (_tmp99_);
	_g_object_unref0 (_tmp97_);
	_tmp100_ = action_group;
	gtk_widget_insert_action_group ((GtkWidget*) self, "clicking", (GActionGroup*) _tmp100_);
	_tmp101_ = g_settings_new ("org.gnome.desktop.a11y.mouse");
	a11y_mouse_settings = _tmp101_;
	_tmp102_ = a11y_mouse_settings;
	_tmp103_ = hold_switch;
	g_settings_bind (_tmp102_, "secondary-click-enabled", (GObject*) _tmp103_, "active", G_SETTINGS_BIND_DEFAULT);
	_tmp104_ = a11y_mouse_settings;
	_tmp105_ = hold_scale;
	g_settings_bind (_tmp104_, "secondary-click-enabled", (GObject*) _tmp105_, "sensitive", G_SETTINGS_BIND_DEFAULT);
	_tmp106_ = a11y_mouse_settings;
	_tmp107_ = hold_spin_box;
	g_settings_bind (_tmp106_, "secondary-click-enabled", (GObject*) _tmp107_, "sensitive", G_SETTINGS_BIND_DEFAULT);
	_tmp108_ = a11y_mouse_settings;
	_tmp109_ = _data1_->hold_scale_adjustment;
	g_settings_bind (_tmp108_, "secondary-click-time", (GObject*) _tmp109_, "value", G_SETTINGS_BIND_DEFAULT);
	_tmp110_ = a11y_mouse_settings;
	_tmp111_ = dwell_click_delay_scale;
	g_settings_bind (_tmp110_, "dwell-click-enabled", (GObject*) _tmp111_, "sensitive", G_SETTINGS_BIND_GET);
	_tmp112_ = a11y_mouse_settings;
	_tmp113_ = dwell_click_spin_box;
	g_settings_bind (_tmp112_, "dwell-click-enabled", (GObject*) _tmp113_, "sensitive", G_SETTINGS_BIND_GET);
	_tmp114_ = a11y_mouse_settings;
	_tmp115_ = dwell_click_switch;
	g_settings_bind (_tmp114_, "dwell-click-enabled", (GObject*) _tmp115_, "active", G_SETTINGS_BIND_DEFAULT);
	_tmp116_ = a11y_mouse_settings;
	_tmp117_ = _data1_->dwell_click_adjustment;
	g_settings_bind (_tmp116_, "dwell-time", (GObject*) _tmp117_, "value", G_SETTINGS_BIND_DEFAULT);
	_tmp118_ = g_settings_new ("org.gnome.desktop.peripherals.mouse");
	mouse_settings = _tmp118_;
	_tmp119_ = mouse_settings;
	_tmp120_ = double_click_speed_adjustment;
	g_settings_bind (_tmp119_, "double-click", (GObject*) _tmp120_, "value", G_SETTINGS_BIND_DEFAULT);
	_tmp121_ = mouse_settings;
	_tmp122_ = mouse_right;
	g_settings_bind (_tmp121_, "left-handed", (GObject*) _tmp122_, "active", G_SETTINGS_BIND_DEFAULT);
	_tmp123_ = _data1_->dwell_click_spinbutton;
	g_signal_connect_data (_tmp123_, "output", (GCallback) __mouse_touchpad_clicking_view___lambda4__gtk_spin_button_output, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
	_tmp124_ = _data1_->hold_spinbutton;
	g_signal_connect_data (_tmp124_, "output", (GCallback) __mouse_touchpad_clicking_view___lambda5__gtk_spin_button_output, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
	_g_object_unref0 (mouse_settings);
	_g_object_unref0 (a11y_mouse_settings);
	_g_object_unref0 (action_group);
	_g_object_unref0 (content_area);
	_g_object_unref0 (primary_paste_header);
	_g_object_unref0 (primary_paste_switch);
	_g_object_unref0 (dwell_click_spin_box);
	_g_object_unref0 (dwell_click_delay_scale);
	_g_object_unref0 (dwell_click_header);
	_g_object_unref0 (dwell_click_switch);
	_g_object_unref0 (double_click_header);
	_g_object_unref0 (double_click_speed_scale);
	_g_object_unref0 (double_click_speed_adjustment);
	_g_object_unref0 (hold_spin_box);
	_g_object_unref0 (hold_scale);
	_g_object_unref0 (hold_header);
	_g_object_unref0 (hold_switch);
	_g_object_unref0 (primary_button_label);
	_g_object_unref0 (primary_button_switcher);
	_g_object_unref0 (mouse_right);
	_g_object_unref0 (mouse_left);
	block1_data_unref (_data1_);
	_data1_ = NULL;
	return obj;
}

static void
mouse_touchpad_clicking_view_class_init (MouseTouchpadClickingViewClass * klass,
                                         gpointer klass_data)
{
	mouse_touchpad_clicking_view_parent_class = g_type_class_peek_parent (klass);
	G_OBJECT_CLASS (klass)->constructor = mouse_touchpad_clicking_view_constructor;
}

static void
mouse_touchpad_clicking_view_instance_init (MouseTouchpadClickingView * self,
                                            gpointer klass)
{
}

static GType
mouse_touchpad_clicking_view_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (MouseTouchpadClickingViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) mouse_touchpad_clicking_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MouseTouchpadClickingView), 0, (GInstanceInitFunc) mouse_touchpad_clicking_view_instance_init, NULL };
	GType mouse_touchpad_clicking_view_type_id;
	mouse_touchpad_clicking_view_type_id = g_type_register_static (SWITCHBOARD_TYPE_SETTINGS_PAGE, "MouseTouchpadClickingView", &g_define_type_info, 0);
	return mouse_touchpad_clicking_view_type_id;
}

GType
mouse_touchpad_clicking_view_get_type (void)
{
	static volatile gsize mouse_touchpad_clicking_view_type_id__once = 0;
	if (g_once_init_enter (&mouse_touchpad_clicking_view_type_id__once)) {
		GType mouse_touchpad_clicking_view_type_id;
		mouse_touchpad_clicking_view_type_id = mouse_touchpad_clicking_view_get_type_once ();
		g_once_init_leave (&mouse_touchpad_clicking_view_type_id__once, mouse_touchpad_clicking_view_type_id);
	}
	return mouse_touchpad_clicking_view_type_id__once;
}

