gpointing-device-settings r267 - in trunk/modules: common gnome-settings-daemon-plugins
- From: hiikezoe svn gnome org
- To: svn-commits-list gnome org
- Subject: gpointing-device-settings r267 - in trunk/modules: common gnome-settings-daemon-plugins
- Date: Wed, 25 Mar 2009 06:52:32 +0000 (UTC)
Author: hiikezoe
Date: Wed Mar 25 06:52:32 2009
New Revision: 267
URL: http://svn.gnome.org/viewvc/gpointing-device-settings?rev=267&view=rev
Log:
palm detection dimensions support only for gnome-settings-daemon plugin.
Modified:
trunk/modules/common/gpds-touchpad-definitions.h
trunk/modules/gnome-settings-daemon-plugins/gsd-pointing-device-manager.h
trunk/modules/gnome-settings-daemon-plugins/gsd-touchpad-manager.c
Modified: trunk/modules/common/gpds-touchpad-definitions.h
==============================================================================
--- trunk/modules/common/gpds-touchpad-definitions.h (original)
+++ trunk/modules/common/gpds-touchpad-definitions.h Wed Mar 25 06:52:32 2009
@@ -20,9 +20,8 @@
#ifndef __GPDS_TOUCHPAD_GCONF_H__
#define __GPDS_TOUCHPAD_GCONF_H__
-#define GPDS_TOUCHPAD_EDGES_KEY "edges"
-#define GPDS_TOUCHPAD_FINGER_KEY "finger"
#define GPDS_TOUCHPAD_OFF_KEY "off"
+#define GPDS_TOUCHPAD_GUEST_MOUSE_KEY "guest_mouse"
#define GPDS_TOUCHPAD_TAP_TIME_KEY "tap_time"
#define GPDS_TOUCHPAD_TAP_MOVE_KEY "tap_move"
#define GPDS_TOUCHPAD_TAP_FAST_TAP_KEY "tap_fast_tap"
@@ -37,6 +36,8 @@
#define GPDS_TOUCHPAD_CIRCULAR_SCROLLING_DISTANCE_KEY "circular_scrolling_distance"
#define GPDS_TOUCHPAD_CIRCULAR_SCROLLING_TRIGGER_KEY "circular_scrolling_trigger"
#define GPDS_TOUCHPAD_PALM_DETECTION_KEY "palm_detection"
+#define GPDS_TOUCHPAD_PALM_DETECTION_WIDTH_KEY "palm_detection_width"
+#define GPDS_TOUCHPAD_PALM_DETECTION_DEPTH_KEY "palm_detection_depth"
#define GPDS_TOUCHPAD_LOCKED_DRAGS_KEY "locked_drags"
#define GPDS_TOUCHPAD_LOCKED_DRAGS_TIMEOUT_KEY "locked_drags_timeout"
Modified: trunk/modules/gnome-settings-daemon-plugins/gsd-pointing-device-manager.h
==============================================================================
--- trunk/modules/gnome-settings-daemon-plugins/gsd-pointing-device-manager.h (original)
+++ trunk/modules/gnome-settings-daemon-plugins/gsd-pointing-device-manager.h Wed Mar 25 06:52:32 2009
@@ -106,6 +106,39 @@
#define DEFINE_SET_INT_FUNCTION(function_name, key_name) \
DEFINE_SET_VALUE_FUNCTION(function_name, key_name, int)
+#define DEFINE_SET_VALUE_PAIR_FUNCTION(function_name, value_type, prop_name, key_name1, key_name2) \
+static void \
+set_ ## function_name (GsdPointingDeviceManager *manager, \
+ GpdsXInput *xinput, \
+ GConfClient *gconf) \
+{ \
+ g ## value_type value; \
+ gint properties[2]; \
+ if (!gsd_pointing_device_manager_get_gconf_ ## value_type (manager, \
+ gconf, \
+ key_name1, \
+ &value)) \
+ return; \
+ properties[0] = value; \
+ if (!gsd_pointing_device_manager_get_gconf_ ## value_type (manager, \
+ gconf, \
+ key_name2, \
+ &value)) \
+ return; \
+ properties[1] = value; \
+ gpds_xinput_set_int_properties(xinput, \
+ prop_name, \
+ NULL, \
+ properties, \
+ 2); \
+}
+
+#define DEFINE_SET_BOOLEAN_PAIR_FUNCTION(function_name, prop_name, key_name1, key_name2) \
+ DEFINE_SET_VALUE_PAIR_FUNCTION(function_name, boolean, prop_name, key_name1, key_name2)
+
+#define DEFINE_SET_INT_PAIR_FUNCTION(function_name, prop_name, key_name1, key_name2) \
+ DEFINE_SET_VALUE_PAIR_FUNCTION(function_name, int, prop_name, key_name1, key_name2)
+
G_END_DECLS
#endif /* __GSD_POINTING_DEVICE_MANAGER_H__ */
Modified: trunk/modules/gnome-settings-daemon-plugins/gsd-touchpad-manager.c
==============================================================================
--- trunk/modules/gnome-settings-daemon-plugins/gsd-touchpad-manager.c (original)
+++ trunk/modules/gnome-settings-daemon-plugins/gsd-touchpad-manager.c Wed Mar 25 06:52:32 2009
@@ -65,6 +65,18 @@
DEFINE_SET_INT_FUNCTION (tap_time, GPDS_TOUCHPAD_TAP_TIME)
DEFINE_SET_INT_FUNCTION (tap_move, GPDS_TOUCHPAD_TAP_MOVE)
DEFINE_SET_INT_FUNCTION (circular_scrolling_trigger, GPDS_TOUCHPAD_CIRCULAR_SCROLLING_TRIGGER)
+DEFINE_SET_BOOLEAN_PAIR_FUNCTION (two_finger_scrolling,
+ GPDS_TOUCHPAD_TWO_FINGER_SCROLLING,
+ GPDS_TOUCHPAD_TWO_FINGER_VERTICAL_SCROLLING_KEY,
+ GPDS_TOUCHPAD_TWO_FINGER_HORIZONTAL_SCROLLING_KEY);
+DEFINE_SET_INT_PAIR_FUNCTION (scrolling_distance,
+ GPDS_TOUCHPAD_SCROLLING_DISTANCE,
+ GPDS_TOUCHPAD_VERTICAL_SCROLLING_DISTANCE_KEY,
+ GPDS_TOUCHPAD_HORIZONTAL_SCROLLING_DISTANCE_KEY);
+DEFINE_SET_INT_PAIR_FUNCTION (palm_dimensions,
+ GPDS_TOUCHPAD_PALM_DIMENSIONS,
+ GPDS_TOUCHPAD_PALM_DETECTION_WIDTH_KEY,
+ GPDS_TOUCHPAD_PALM_DETECTION_DEPTH_KEY)
static void
set_edge_scrolling (GsdPointingDeviceManager *manager,
@@ -103,68 +115,6 @@
3);
}
-static void
-set_two_finger_scrolling (GsdPointingDeviceManager *manager,
- GpdsXInput *xinput,
- GConfClient *gconf)
-{
- gboolean h_enable, v_enable;
- gint properties[2];
-
- if (!gsd_pointing_device_manager_get_gconf_boolean(manager,
- gconf,
- GPDS_TOUCHPAD_TWO_FINGER_VERTICAL_SCROLLING_KEY,
- &v_enable)) {
- return;
- }
- if (!gsd_pointing_device_manager_get_gconf_boolean(manager,
- gconf,
- GPDS_TOUCHPAD_TWO_FINGER_HORIZONTAL_SCROLLING_KEY,
- &h_enable)) {
- return;
- }
-
- properties[0] = v_enable ? 1 : 0;
- properties[1] = h_enable ? 1 : 0;
-
- gpds_xinput_set_int_properties(xinput,
- GPDS_TOUCHPAD_TWO_FINGER_SCROLLING,
- NULL,
- properties,
- 2);
-}
-
-static void
-set_horizontal_and_vertical_scrolling_distance (GsdPointingDeviceManager *manager,
- GpdsXInput *xinput,
- GConfClient *gconf)
-{
- gint h_distance, v_distance;
- gint properties[2];
-
- if (!gsd_pointing_device_manager_get_gconf_int(manager,
- gconf,
- GPDS_TOUCHPAD_VERTICAL_SCROLLING_DISTANCE_KEY,
- &v_distance)) {
- return;
- }
- if (!gsd_pointing_device_manager_get_gconf_int(manager,
- gconf,
- GPDS_TOUCHPAD_HORIZONTAL_SCROLLING_DISTANCE_KEY,
- &h_distance)) {
- return;
- }
-
- properties[0] = v_distance;
- properties[1] = h_distance;
-
- gpds_xinput_set_int_properties(xinput,
- GPDS_TOUCHPAD_SCROLLING_DISTANCE,
- NULL,
- properties,
- 2);
-}
-
static gboolean
start_manager (GsdPointingDeviceManager *manager)
{
@@ -191,7 +141,7 @@
set_tap_time(manager, xinput, gconf);
set_tap_move(manager, xinput, gconf);
set_edge_scrolling(manager, xinput, gconf);
- set_horizontal_and_vertical_scrolling_distance(manager, xinput, gconf);
+ set_scrolling_distance(manager, xinput, gconf);
set_circular_scrolling(manager, xinput, gconf);
set_circular_scrolling_trigger(manager, xinput, gconf);
set_two_finger_scrolling(manager, xinput, gconf);
@@ -264,7 +214,10 @@
set_tap_move(manager, xinput, client);
} else if (!strcmp(key, GPDS_TOUCHPAD_VERTICAL_SCROLLING_DISTANCE_KEY) ||
!strcmp(key, GPDS_TOUCHPAD_HORIZONTAL_SCROLLING_DISTANCE_KEY)) {
- set_horizontal_and_vertical_scrolling_distance(manager, xinput, client);
+ set_scrolling_distance(manager, xinput, client);
+ } else if (!strcmp(key, GPDS_TOUCHPAD_PALM_DETECTION_WIDTH_KEY) ||
+ !strcmp(key, GPDS_TOUCHPAD_PALM_DETECTION_DEPTH_KEY)) {
+ set_palm_dimensions(manager, xinput, client);
}
break;
default:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]