From f6f179c4ad0494aa0fa65ea9c2ba68fd99713a4d Mon Sep 17 00:00:00 2001
From: Clement Lefebvre <clement.lefebvre@linuxmint.com>
Date: Thu, 3 Mar 2016 12:31:10 +0000
Subject: Touchpad settings: Support edge and two-finger scrolling
 independently

---
 capplets/mouse/mate-mouse-properties.c  |  76 +-------
 capplets/mouse/mate-mouse-properties.ui | 299 +++++++++++++++++++-------------
 2 files changed, 182 insertions(+), 193 deletions(-)

(limited to 'capplets/mouse')

diff --git a/capplets/mouse/mate-mouse-properties.c b/capplets/mouse/mate-mouse-properties.c
index 88555d3b..0a6fb88d 100644
--- a/capplets/mouse/mate-mouse-properties.c
+++ b/capplets/mouse/mate-mouse-properties.c
@@ -201,53 +201,6 @@ orientation_radio_button_toggled (GtkToggleButton *togglebutton,
 	g_settings_set_boolean (mouse_settings, "left-handed", left_handed);
 }
 
-static void
-scrollmethod_gsettings_changed_event (GSettings *settings,
-				gchar *key,
-				GtkBuilder *dialog)
-{
-	int scroll_method = g_settings_get_int (touchpad_settings, "scroll-method");
-	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (WID ("scroll_disabled_radio")),
-				scroll_method == 0);
-	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (WID ("scroll_edge_radio")),
-				scroll_method == 1);
-	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (WID ("scroll_twofinger_radio")),
-				scroll_method == 2);
-	gtk_widget_set_sensitive (WID ("horiz_scroll_toggle"),
-				 scroll_method != 0);
-	gtk_widget_set_sensitive (WID ("natural_scroll_toggle"),
-				 scroll_method != 0);
-}
-
-static void
-scrollmethod_clicked_event (GtkWidget *widget,
-				GtkBuilder *dialog)
-{
-	GtkToggleButton *disabled = GTK_TOGGLE_BUTTON (WID ("scroll_disabled_radio"));
-
-	gtk_widget_set_sensitive (WID ("horiz_scroll_toggle"),
-				  !gtk_toggle_button_get_active (disabled));
-
-	gtk_widget_set_sensitive (WID ("natural_scroll_toggle"),
-				  !gtk_toggle_button_get_active (disabled));
-
-	GSList *radio_group;
-	int new_scroll_method;
-	int old_scroll_method = g_settings_get_int (touchpad_settings, "scroll-method");
-
-	if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)))
-		return;
-
-	radio_group = g_slist_copy (gtk_radio_button_get_group
-		(GTK_RADIO_BUTTON (WID ("scroll_disabled_radio"))));
-	radio_group = g_slist_reverse (radio_group);
-	new_scroll_method = g_slist_index (radio_group, widget);
-	g_slist_free (radio_group);
-	
-	if (new_scroll_method != old_scroll_method)
-		g_settings_set_int (touchpad_settings, "scroll-method", new_scroll_method);
-}
-
 static void
 synaptics_check_capabilities (GtkBuilder *dialog)
 {
@@ -285,9 +238,6 @@ synaptics_check_capabilities (GtkBuilder *dialog)
 				gtk_widget_set_sensitive (WID ("tap_to_click_toggle"), FALSE);
 			}
 
-			if (!data[3])
-				gtk_widget_set_sensitive (WID ("scroll_twofinger_radio"), FALSE);
-
 			XFree (data);
 		}
 
@@ -437,14 +387,11 @@ setup_dialog (GtkBuilder *dialog)
 		g_settings_bind (touchpad_settings, "tap-to-click",
 			WID ("tap_to_click_toggle"), "active",
 			G_SETTINGS_BIND_DEFAULT);
-		g_settings_bind (touchpad_settings, "horiz-scroll-enabled",
-			WID ("horiz_scroll_toggle"), "active",
-			G_SETTINGS_BIND_DEFAULT);
-		g_settings_bind (touchpad_settings, "natural-scroll",
-			WID ("natural_scroll_toggle"), "active",
-			G_SETTINGS_BIND_DEFAULT);
-
-		scrollmethod_gsettings_changed_event (touchpad_settings, "scroll-method", dialog);
+		g_settings_bind (touchpad_settings, "vertical-edge-scrolling", WID ("vert_edge_scroll_toggle"), "active", G_SETTINGS_BIND_DEFAULT);
+		g_settings_bind (touchpad_settings, "horizontal-edge-scrolling", WID ("horiz_edge_scroll_toggle"), "active", G_SETTINGS_BIND_DEFAULT);
+		g_settings_bind (touchpad_settings, "vertical-two-finger-scrolling", WID ("vert_twofinger_scroll_toggle"), "active", G_SETTINGS_BIND_DEFAULT);
+		g_settings_bind (touchpad_settings, "horizontal-two-finger-scrolling", WID ("horiz_twofinger_scroll_toggle"), "active", G_SETTINGS_BIND_DEFAULT);
+		g_settings_bind (touchpad_settings, "natural-scroll", WID ("natural_scroll_toggle"), "active", G_SETTINGS_BIND_DEFAULT);
 
 		char * emulation_values[] = { _("Disabled"), _("Left button"), _("Middle button"), _("Right button") };
 
@@ -465,20 +412,7 @@ setup_dialog (GtkBuilder *dialog)
 		g_signal_connect (two_click_comboxbox, "changed", G_CALLBACK (comboxbox_changed_callback), "two-finger-click");
 		g_signal_connect (three_click_comboxbox, "changed", G_CALLBACK (comboxbox_changed_callback), "three-finger-click");
 
-		radio = GTK_RADIO_BUTTON (WID ("scroll_disabled_radio"));
-		GSList *radio_group = gtk_radio_button_get_group (radio);
-		GSList *item = NULL;
-
 		synaptics_check_capabilities (dialog);
-		for (item = radio_group; item != NULL; item = item->next) {
-			g_signal_connect (G_OBJECT (item->data), "clicked",
-				  G_CALLBACK(scrollmethod_clicked_event),
-				  dialog);
-		}
-		g_signal_connect (touchpad_settings,
-			"changed::scroll-method",
-			G_CALLBACK(scrollmethod_gsettings_changed_event),
-			dialog);
 	}
 
 }
diff --git a/capplets/mouse/mate-mouse-properties.ui b/capplets/mouse/mate-mouse-properties.ui
index cee64c08..898e6f74 100644
--- a/capplets/mouse/mate-mouse-properties.ui
+++ b/capplets/mouse/mate-mouse-properties.ui
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.18.3 -->
 <interface>
   <requires lib="gtk+" version="2.16"/>
-  <!-- interface-naming-policy toplevel-contextual -->
   <object class="GtkAdjustment" id="adjustment1">
     <property name="lower">1</property>
     <property name="upper">10</property>
@@ -30,26 +30,6 @@
     <property name="step_increment">100</property>
     <property name="page_increment">100</property>
   </object>
-  <object class="GtkAdjustment" id="adjustment5">
-    <property name="lower">0.5</property>
-    <property name="upper">3</property>
-    <property name="value">1.2</property>
-    <property name="step_increment">0.10000000000000001</property>
-    <property name="page_increment">0.10000000000000001</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment6">
-    <property name="lower">0.20000000000000001</property>
-    <property name="upper">3</property>
-    <property name="value">1.2</property>
-    <property name="step_increment">0.10000000000000001</property>
-    <property name="page_increment">0.10000000000000001</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment7">
-    <property name="upper">30</property>
-    <property name="value">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_increment">1</property>
-  </object>
   <object class="GtkDialog" id="mouse_properties_dialog">
     <property name="can_focus">False</property>
     <property name="border_width">5</property>
@@ -58,23 +38,23 @@
     <property name="default_height">550</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
-      <object class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkBox" id="dialog-vbox1">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="spacing">2</property>
         <child internal-child="action_area">
-          <object class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="helpbutton1">
                 <property name="label">gtk-help</property>
+                <property name="use_action_appearance">False</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
-                <property name="use_action_appearance">False</property>
                 <property name="use_stock">True</property>
               </object>
               <packing>
@@ -86,11 +66,11 @@
             <child>
               <object class="GtkButton" id="closebutton1">
                 <property name="label">gtk-close</property>
+                <property name="use_action_appearance">False</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
-                <property name="use_action_appearance">False</property>
                 <property name="use_stock">True</property>
               </object>
               <packing>
@@ -129,8 +109,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Mouse Orientation</property>
+                        <property name="xalign">0</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -157,12 +137,13 @@
                             <child>
                               <object class="GtkRadioButton" id="right_handed_radio">
                                 <property name="label" translatable="yes">_Right-handed</property>
+                                <property name="use_action_appearance">False</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
+                                <property name="xalign">0.5</property>
                                 <property name="active">True</property>
                                 <property name="draw_indicator">True</property>
                               </object>
@@ -175,12 +156,13 @@
                             <child>
                               <object class="GtkRadioButton" id="left_handed_radio">
                                 <property name="label" translatable="yes">_Left-handed</property>
+                                <property name="use_action_appearance">False</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
+                                <property name="xalign">0.5</property>
                                 <property name="active">True</property>
                                 <property name="draw_indicator">True</property>
                                 <property name="group">right_handed_radio</property>
@@ -217,8 +199,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Locate Pointer</property>
+                        <property name="xalign">0</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -239,12 +221,13 @@
                         <child>
                           <object class="GtkCheckButton" id="locate_pointer_toggle">
                             <property name="label" translatable="yes">Sh_ow position of pointer when the Control key is pressed</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="use_action_appearance">False</property>
                             <property name="use_underline">True</property>
+                            <property name="xalign">0.5</property>
                             <property name="draw_indicator">True</property>
                           </object>
                         </child>
@@ -272,8 +255,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Pointer Speed</property>
+                        <property name="xalign">0</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -303,11 +286,11 @@
                               <object class="GtkLabel" id="acceleration_label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="xalign">0</property>
                                 <property name="label" translatable="yes">_Acceleration:</property>
                                 <property name="use_underline">True</property>
                                 <property name="justify">center</property>
                                 <property name="mnemonic_widget">accel_scale</property>
+                                <property name="xalign">0</property>
                               </object>
                               <packing>
                                 <property name="x_options">GTK_FILL</property>
@@ -318,11 +301,11 @@
                               <object class="GtkLabel" id="sensitivity_label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="xalign">0</property>
                                 <property name="label" translatable="yes">_Sensitivity:</property>
                                 <property name="use_underline">True</property>
                                 <property name="justify">center</property>
                                 <property name="mnemonic_widget">sensitivity_scale</property>
+                                <property name="xalign">0</property>
                               </object>
                               <packing>
                                 <property name="top_attach">1</property>
@@ -341,9 +324,9 @@
                                   <object class="GtkLabel" id="acceleration_slow_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
                                     <property name="label" translatable="yes" comments="slow acceleration">Slow</property>
                                     <property name="justify">center</property>
+                                    <property name="xalign">1</property>
                                     <attributes>
                                       <attribute name="style" value="italic"/>
                                       <attribute name="scale" value="0.82999999999999996"/>
@@ -373,9 +356,9 @@
                                   <object class="GtkLabel" id="acceleration_fast_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">0</property>
                                     <property name="label" translatable="yes" comments="fast acceleration">Fast</property>
                                     <property name="justify">center</property>
+                                    <property name="xalign">0</property>
                                     <attributes>
                                       <attribute name="style" value="italic"/>
                                       <attribute name="scale" value="0.82999999999999996"/>
@@ -403,9 +386,9 @@
                                   <object class="GtkLabel" id="sensitivity_low_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
                                     <property name="label" translatable="yes" comments="low sensitivity">Low</property>
                                     <property name="justify">center</property>
+                                    <property name="xalign">1</property>
                                     <attributes>
                                       <attribute name="style" value="italic"/>
                                       <attribute name="scale" value="0.82999999999999996"/>
@@ -435,9 +418,9 @@
                                   <object class="GtkLabel" id="sensitivity_high_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">0</property>
                                     <property name="label" translatable="yes" comments="high sensitivity">High</property>
                                     <property name="justify">center</property>
+                                    <property name="xalign">0</property>
                                     <attributes>
                                       <attribute name="style" value="italic"/>
                                       <attribute name="scale" value="0.82999999999999996"/>
@@ -483,8 +466,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Drag and Drop</property>
+                        <property name="xalign">0</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -517,11 +500,11 @@
                                   <object class="GtkLabel" id="threshold_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Thr_eshold:</property>
                                     <property name="use_underline">True</property>
                                     <property name="justify">center</property>
                                     <property name="mnemonic_widget">drag_threshold_scale</property>
+                                    <property name="xalign">0</property>
                                   </object>
                                   <packing>
                                     <property name="expand">False</property>
@@ -538,9 +521,9 @@
                                       <object class="GtkLabel" id="threshold_small_label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="xalign">1</property>
                                         <property name="label" translatable="yes" comments="small threshold">Small</property>
                                         <property name="justify">center</property>
+                                        <property name="xalign">1</property>
                                         <attributes>
                                           <attribute name="style" value="italic"/>
                                           <attribute name="scale" value="0.82999999999999996"/>
@@ -575,8 +558,8 @@
                                       <object class="GtkLabel" id="threshold_large_label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="xalign">0</property>
                                         <property name="label" translatable="yes" comments="large threshold">Large</property>
+                                        <property name="xalign">0</property>
                                         <attributes>
                                           <attribute name="style" value="italic"/>
                                           <attribute name="scale" value="0.82999999999999996"/>
@@ -628,8 +611,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Double-Click Timeout</property>
+                        <property name="xalign">0</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -662,11 +645,11 @@
                                   <object class="GtkLabel" id="timeout_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="xalign">0</property>
                                     <property name="label" translatable="yes">_Timeout:</property>
                                     <property name="use_underline">True</property>
                                     <property name="justify">center</property>
                                     <property name="mnemonic_widget">delay_scale</property>
+                                    <property name="xalign">0</property>
                                   </object>
                                   <packing>
                                     <property name="expand">False</property>
@@ -683,8 +666,8 @@
                                       <object class="GtkLabel" id="timeout_short_label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="xalign">1</property>
                                         <property name="label" translatable="yes">Short</property>
+                                        <property name="xalign">1</property>
                                         <attributes>
                                           <attribute name="style" value="italic"/>
                                           <attribute name="scale" value="0.82999999999999996"/>
@@ -718,8 +701,8 @@
                                       <object class="GtkLabel" id="timeout_long_label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="xalign">0</property>
                                         <property name="label" translatable="yes">Long</property>
+                                        <property name="xalign">0</property>
                                         <attributes>
                                           <attribute name="style" value="italic"/>
                                           <attribute name="scale" value="0.82999999999999996"/>
@@ -757,9 +740,9 @@
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="xalign">0</property>
                                     <property name="label" translatable="yes">To test your double-click settings, try to double-click on the light bulb.</property>
                                     <property name="wrap">True</property>
+                                    <property name="xalign">0</property>
                                     <attributes>
                                       <attribute name="style" value="italic"/>
                                     </attributes>
@@ -837,12 +820,13 @@
                 <child>
                   <object class="GtkCheckButton" id="touchpad_enable">
                     <property name="label" translatable="yes">Enable _touchpad</property>
+                    <property name="use_action_appearance">False</property>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="use_action_appearance">False</property>
                     <property name="use_underline">True</property>
+                    <property name="xalign">0.5</property>
                     <property name="draw_indicator">True</property>
                   </object>
                   <packing>
@@ -862,9 +846,9 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">General</property>
                         <property name="xalign">0</property>
                         <property name="yalign">0</property>
-                        <property name="label" translatable="yes">General</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -885,9 +869,9 @@
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
-                            <property name="label">    </property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -898,12 +882,13 @@
                         <child>
                           <object class="GtkCheckButton" id="disable_w_typing_toggle">
                             <property name="label" translatable="yes">Disable touchpad _while typing</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="use_action_appearance">False</property>
                             <property name="use_underline">True</property>
+                            <property name="xalign">0.5</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
                           </object>
@@ -930,9 +915,9 @@
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
-                            <property name="label">    </property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -943,12 +928,13 @@
                         <child>
                           <object class="GtkCheckButton" id="tap_to_click_toggle">
                             <property name="label" translatable="yes">Enable _mouse clicks with touchpad</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="use_action_appearance">False</property>
                             <property name="use_underline">True</property>
+                            <property name="xalign">0.5</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
                           </object>
@@ -975,9 +961,9 @@
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
-                            <property name="label">    </property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -997,8 +983,8 @@
                               <object class="GtkLabel" id="label6">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="xalign">0</property>
                                 <property name="label" translatable="yes">Two-finger click emulation:</property>
+                                <property name="xalign">0</property>
                               </object>
                               <packing>
                                 <property name="x_options"/>
@@ -1009,8 +995,8 @@
                               <object class="GtkLabel" id="label9">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="xalign">0</property>
                                 <property name="label" translatable="yes">Three-finger click emulation:</property>
+                                <property name="xalign">0</property>
                               </object>
                               <packing>
                                 <property name="top_attach">1</property>
@@ -1079,9 +1065,9 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">Scrolling</property>
                         <property name="xalign">0</property>
                         <property name="yalign">0</property>
-                        <property name="label" translatable="yes">Scrolling</property>
                         <attributes>
                           <attribute name="weight" value="bold"/>
                         </attributes>
@@ -1093,18 +1079,18 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkHBox" id="hbox15">
+                      <object class="GtkHBox" id="hbox5">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <child>
-                          <object class="GtkLabel" id="label35">
+                          <object class="GtkLabel" id="label7">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
-                            <property name="label">    </property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -1113,59 +1099,16 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkHBox" id="hbox23">
+                          <object class="GtkCheckButton" id="vert_edge_scroll_toggle">
+                            <property name="label" translatable="yes">V_ertical edge scrolling</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <child>
-                              <object class="GtkRadioButton" id="scroll_disabled_radio">
-                                <property name="label" translatable="yes">_Disabled</property>
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">False</property>
-                                <property name="use_action_appearance">False</property>
-                                <property name="use_underline">True</property>
-                                <property name="draw_indicator">True</property>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">0</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkRadioButton" id="scroll_edge_radio">
-                                <property name="label" translatable="yes">_Edge scrolling</property>
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">False</property>
-                                <property name="use_action_appearance">False</property>
-                                <property name="use_underline">True</property>
-                                <property name="draw_indicator">True</property>
-                                <property name="group">scroll_disabled_radio</property>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">1</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkRadioButton" id="scroll_twofinger_radio">
-                                <property name="label" translatable="yes">Two-_finger scrolling</property>
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">False</property>
-                                <property name="use_action_appearance">False</property>
-                                <property name="use_underline">True</property>
-                                <property name="draw_indicator">True</property>
-                                <property name="group">scroll_disabled_radio</property>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">2</property>
-                              </packing>
-                            </child>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
                           </object>
                           <packing>
                             <property name="expand">True</property>
@@ -1181,18 +1124,18 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkHBox" id="hbox2">
+                      <object class="GtkHBox" id="hbox16">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <child>
-                          <object class="GtkLabel" id="label2">
+                          <object class="GtkLabel" id="label36">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
-                            <property name="label">    </property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -1201,14 +1144,15 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkCheckButton" id="natural_scroll_toggle">
-                            <property name="label" translatable="yes">Enable n_atural scrolling</property>
+                          <object class="GtkCheckButton" id="horiz_edge_scroll_toggle">
+                            <property name="label" translatable="yes">H_orizontal edge scrolling</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="use_action_appearance">False</property>
                             <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
                             <property name="draw_indicator">True</property>
                           </object>
                           <packing>
@@ -1225,18 +1169,63 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkHBox" id="hbox16">
+                      <object class="GtkHBox" id="hbox7">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <child>
-                          <object class="GtkLabel" id="label36">
+                          <object class="GtkLabel" id="label10">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
                             <property name="xalign">0</property>
                             <property name="yalign">0</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="vert_twofinger_scroll_toggle">
+                            <property name="label" translatable="yes">Vertical two-finger scrolling</property>
+                            <property name="use_action_appearance">False</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">True</property>
+                            <property name="fill">True</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">3</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkHBox" id="hbox8">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <child>
+                          <object class="GtkLabel" id="label11">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="label">    </property>
+                            <property name="xalign">0</property>
+                            <property name="yalign">0</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -1245,14 +1234,60 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkCheckButton" id="horiz_scroll_toggle">
-                            <property name="label" translatable="yes">Enable h_orizontal scrolling</property>
+                          <object class="GtkCheckButton" id="horiz_twofinger_scroll_toggle">
+                            <property name="label" translatable="yes">H_orizontal two-finger scrolling</property>
+                            <property name="use_action_appearance">False</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">True</property>
+                            <property name="fill">True</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">4</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkHBox" id="hbox2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <child>
+                          <object class="GtkLabel" id="label2">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="label">    </property>
+                            <property name="xalign">0</property>
+                            <property name="yalign">0</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="natural_scroll_toggle">
+                            <property name="label" translatable="yes">Enable n_atural scrolling</property>
                             <property name="use_action_appearance">False</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
                             <property name="draw_indicator">True</property>
                           </object>
                           <packing>
@@ -1265,7 +1300,7 @@
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
-                        <property name="position">3</property>
+                        <property name="position">5</property>
                       </packing>
                     </child>
                   </object>
@@ -1306,4 +1341,24 @@
       <action-widget response="2">closebutton1</action-widget>
     </action-widgets>
   </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="lower">0.5</property>
+    <property name="upper">3</property>
+    <property name="value">1.2</property>
+    <property name="step_increment">0.10000000000000001</property>
+    <property name="page_increment">0.10000000000000001</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment6">
+    <property name="lower">0.20000000000000001</property>
+    <property name="upper">3</property>
+    <property name="value">1.2</property>
+    <property name="step_increment">0.10000000000000001</property>
+    <property name="page_increment">0.10000000000000001</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment7">
+    <property name="upper">30</property>
+    <property name="value">15</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">1</property>
+  </object>
 </interface>
-- 
cgit v1.2.1