1b85037dbSmrg/*
2b85037dbSmrg * Copyright © 2008 Red Hat, Inc.
3b85037dbSmrg *
4b85037dbSmrg * Permission to use, copy, modify, distribute, and sell this software
5b85037dbSmrg * and its documentation for any purpose is hereby granted without
6b85037dbSmrg * fee, provided that the above copyright notice appear in all copies
7b85037dbSmrg * and that both that copyright notice and this permission notice
8b85037dbSmrg * appear in supporting documentation, and that the name of Red Hat
9b85037dbSmrg * not be used in advertising or publicity pertaining to distribution
10b85037dbSmrg * of the software without specific, written prior permission.  Red
11b85037dbSmrg * Hat makes no representations about the suitability of this software
12b85037dbSmrg * for any purpose.  It is provided "as is" without express or implied
13b85037dbSmrg * warranty.
14b85037dbSmrg *
15b85037dbSmrg * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
16b85037dbSmrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
17b85037dbSmrg * NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
18b85037dbSmrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
19b85037dbSmrg * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
20b85037dbSmrg * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
21b85037dbSmrg * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
22b85037dbSmrg *
23b85037dbSmrg * Authors: Peter Hutterer
24b85037dbSmrg */
25b85037dbSmrg
26b85037dbSmrg#ifndef _SYNAPTICS_PROPERTIES_H_
27b85037dbSmrg#define _SYNAPTICS_PROPERTIES_H_
28b85037dbSmrg
29b85037dbSmrg/**
30b85037dbSmrg * Properties exported by the synaptics driver. These properties are
31b85037dbSmrg * recognized by the driver and will change its behavior when modified.
32b85037dbSmrg * For a description of what each property does, see synaptics.h.
33b85037dbSmrg */
34b85037dbSmrg
35b85037dbSmrg/* 32 bit, 4 values, left, right, top, bottom */
36b85037dbSmrg#define SYNAPTICS_PROP_EDGES "Synaptics Edges"
37b85037dbSmrg
3828515619Smrg/* 32 bit, 3 values, low, high, <deprecated> */
39b85037dbSmrg#define SYNAPTICS_PROP_FINGER "Synaptics Finger"
40b85037dbSmrg
41b85037dbSmrg/* 32 bit */
42b85037dbSmrg#define SYNAPTICS_PROP_TAP_TIME "Synaptics Tap Time"
43b85037dbSmrg
44b85037dbSmrg/* 32 bit */
45b85037dbSmrg#define SYNAPTICS_PROP_TAP_MOVE "Synaptics Tap Move"
46b85037dbSmrg
47b85037dbSmrg/* 32 bit, 3 values, single touch timeout, max tapping time for double
48b85037dbSmrg * taps, duration of a single click  */
49b85037dbSmrg#define SYNAPTICS_PROP_TAP_DURATIONS "Synaptics Tap Durations"
50b85037dbSmrg
5128515619Smrg/* 8 bit (BOOL) */
5228515619Smrg#define SYNAPTICS_PROP_CLICKPAD "Synaptics ClickPad"
5328515619Smrg
54b85037dbSmrg/* 8 bit (BOOL) */
55b85037dbSmrg#define SYNAPTICS_PROP_TAP_FAST "Synaptics Tap FastTap"
56b85037dbSmrg
57b85037dbSmrg/* 32 bit */
58b85037dbSmrg#define SYNAPTICS_PROP_MIDDLE_TIMEOUT "Synaptics Middle Button Timeout"
59b85037dbSmrg
60b85037dbSmrg/* 32 bit */
61b85037dbSmrg#define SYNAPTICS_PROP_TWOFINGER_PRESSURE "Synaptics Two-Finger Pressure"
62b85037dbSmrg
63b85037dbSmrg/* 32 bit */
64b85037dbSmrg#define SYNAPTICS_PROP_TWOFINGER_WIDTH "Synaptics Two-Finger Width"
65b85037dbSmrg
66b85037dbSmrg/* 32 bit, 2 values, vert, horiz */
67b85037dbSmrg#define SYNAPTICS_PROP_SCROLL_DISTANCE "Synaptics Scrolling Distance"
68b85037dbSmrg
69b85037dbSmrg/* 8 bit (BOOL), 3 values, vertical, horizontal, corner */
70b85037dbSmrg#define SYNAPTICS_PROP_SCROLL_EDGE "Synaptics Edge Scrolling"
71b85037dbSmrg
72b85037dbSmrg/* 8 bit (BOOL), 2 values, vertical, horizontal */
73b85037dbSmrg#define SYNAPTICS_PROP_SCROLL_TWOFINGER "Synaptics Two-Finger Scrolling"
74b85037dbSmrg
7528515619Smrg/* FLOAT, 4 values, min, max, accel, <deprecated> */
76b85037dbSmrg#define SYNAPTICS_PROP_SPEED "Synaptics Move Speed"
77b85037dbSmrg
78b85037dbSmrg/* 8 bit (BOOL), 2 values, updown, leftright */
79b85037dbSmrg#define SYNAPTICS_PROP_BUTTONSCROLLING "Synaptics Button Scrolling"
80b85037dbSmrg
81b85037dbSmrg/* 8 bit (BOOL), 2 values, updown, leftright */
82b85037dbSmrg#define SYNAPTICS_PROP_BUTTONSCROLLING_REPEAT "Synaptics Button Scrolling Repeat"
83b85037dbSmrg
84b85037dbSmrg/* 32 bit */
85b85037dbSmrg#define SYNAPTICS_PROP_BUTTONSCROLLING_TIME "Synaptics Button Scrolling Time"
86b85037dbSmrg
87b85037dbSmrg/* 8 bit, valid values (0, 1, 2) */
88b85037dbSmrg#define SYNAPTICS_PROP_OFF "Synaptics Off"
89b85037dbSmrg
90b85037dbSmrg/* 8 bit (BOOL) */
91b85037dbSmrg#define SYNAPTICS_PROP_GUESTMOUSE "Synaptics Guestmouse Off"
92b85037dbSmrg
93b85037dbSmrg/* 8 bit (BOOL) */
94b85037dbSmrg#define SYNAPTICS_PROP_LOCKED_DRAGS "Synaptics Locked Drags"
95b85037dbSmrg
96b85037dbSmrg/* 32 bit */
97b85037dbSmrg#define SYNAPTICS_PROP_LOCKED_DRAGS_TIMEOUT "Synaptics Locked Drags Timeout"
98b85037dbSmrg
99b85037dbSmrg/* 8 bit, up to MAX_TAP values (see synaptics.h), 0 disables an
100b85037dbSmrg * element. order: RT, RB, LT, LB, F1, F2, F3 */
101b85037dbSmrg#define SYNAPTICS_PROP_TAP_ACTION "Synaptics Tap Action"
102b85037dbSmrg
103b85037dbSmrg/* 8 bit, up to MAX_CLICK values (see synaptics.h), 0 disables an
104b85037dbSmrg * element. order: Finger 1, 2, 3 */
105b85037dbSmrg#define SYNAPTICS_PROP_CLICK_ACTION "Synaptics Click Action"
106b85037dbSmrg
107b85037dbSmrg/* 8 bit (BOOL) */
108b85037dbSmrg#define SYNAPTICS_PROP_CIRCULAR_SCROLLING "Synaptics Circular Scrolling"
109b85037dbSmrg
110b85037dbSmrg/* FLOAT */
111b85037dbSmrg#define SYNAPTICS_PROP_CIRCULAR_SCROLLING_DIST "Synaptics Circular Scrolling Distance"
112b85037dbSmrg
113b85037dbSmrg/* 8 bit, valid values 0..8 (inclusive)
114b85037dbSmrg * order: any edge, top, top + right, right, right + bottom, bottom, bottom +
115b85037dbSmrg * left, left, left  + top */
116b85037dbSmrg#define SYNAPTICS_PROP_CIRCULAR_SCROLLING_TRIGGER "Synaptics Circular Scrolling Trigger"
117b85037dbSmrg
118b85037dbSmrg/* 8 bit (BOOL) */
119b85037dbSmrg#define SYNAPTICS_PROP_PALM_DETECT "Synaptics Palm Detection"
120b85037dbSmrg
121b85037dbSmrg/* 32 bit, 2 values, width, z */
122b85037dbSmrg#define SYNAPTICS_PROP_PALM_DIMENSIONS "Synaptics Palm Dimensions"
123b85037dbSmrg
124b85037dbSmrg/* FLOAT, 2 values, speed, friction */
125b85037dbSmrg#define SYNAPTICS_PROP_COASTING_SPEED "Synaptics Coasting Speed"
126b85037dbSmrg
12728515619Smrg/* CARD32, 2 values, min, max */
128b85037dbSmrg#define SYNAPTICS_PROP_PRESSURE_MOTION "Synaptics Pressure Motion"
129b85037dbSmrg
130b85037dbSmrg/* FLOAT, 2 values, min, max */
131b85037dbSmrg#define SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR "Synaptics Pressure Motion Factor"
132b85037dbSmrg
133b85037dbSmrg/* 8 bit (BOOL) */
134b85037dbSmrg#define SYNAPTICS_PROP_GRAB "Synaptics Grab Event Device"
135b85037dbSmrg
136b85037dbSmrg/* 8 bit (BOOL), 1 value, tap-and-drag */
137b85037dbSmrg#define SYNAPTICS_PROP_GESTURES "Synaptics Gestures"
138b85037dbSmrg
139302b15bdSmrg/* 8 bit (BOOL), 7 values (read-only), has_left, has_middle, has_right,
140302b15bdSmrg * has_double, has_triple, has_pressure, has_width */
141b85037dbSmrg#define SYNAPTICS_PROP_CAPABILITIES "Synaptics Capabilities"
142b85037dbSmrg
143b85037dbSmrg/* 32 bit unsigned, 2 values, vertical, horizontal in units/millimeter */
144b85037dbSmrg#define SYNAPTICS_PROP_RESOLUTION "Synaptics Pad Resolution"
145b85037dbSmrg
146b85037dbSmrg/* 32 bit, 4 values, left, right, top, bottom */
147b85037dbSmrg#define SYNAPTICS_PROP_AREA "Synaptics Area"
148b85037dbSmrg
14928515619Smrg/* 32 bit, 4 values, left, right, top, buttom */
15028515619Smrg#define SYNAPTICS_PROP_SOFTBUTTON_AREAS "Synaptics Soft Button Areas"
15128515619Smrg
152302b15bdSmrg/* 32 Bit Integer, 2 values, horizontal hysteresis, vertical hysteresis */
153302b15bdSmrg#define SYNAPTICS_PROP_NOISE_CANCELLATION "Synaptics Noise Cancellation"
154302b15bdSmrg
15528515619Smrg#endif                          /* _SYNAPTICS_PROPERTIES_H_ */
156