summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Rydberg <rydberg@euromail.se>2010-03-18 21:14:48 +0100
committerHenrik Rydberg <rydberg@euromail.se>2010-03-21 14:56:09 +0100
commit14f65b1a3ddee4e70dc4c67234c3fccdd647af96 (patch)
tree2b731931050c4906eab7110ca96bc48be41a0336
parent0627d6038e1e460a1ec279c5670eda2e7f044c94 (diff)
Introduce convenience function for device dimensions
The capability names are rather lengthy; this patch adds convenience functions for the dimension capabilities. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
-rw-r--r--src/capabilities.c10
-rw-r--r--src/capabilities.h3
-rw-r--r--src/multitouch.c8
3 files changed, 15 insertions, 6 deletions
diff --git a/src/capabilities.c b/src/capabilities.c
index cdd05c5..7316f01 100644
--- a/src/capabilities.c
+++ b/src/capabilities.c
@@ -81,6 +81,16 @@ int read_capabilities(struct Capabilities *cap, int fd)
81 return 0; 81 return 0;
82} 82}
83 83
84int get_cap_xsize(const struct Capabilities *cap)
85{
86 return cap->abs_position_x.maximum - cap->abs_position_x.minimum;
87}
88
89int get_cap_ysize(const struct Capabilities *cap)
90{
91 return cap->abs_position_y.maximum - cap->abs_position_y.minimum;
92}
93
84void output_capabilities(const struct Capabilities *cap) 94void output_capabilities(const struct Capabilities *cap)
85{ 95{
86 char line[1024]; 96 char line[1024];
diff --git a/src/capabilities.h b/src/capabilities.h
index 66ce29b..dc257ce 100644
--- a/src/capabilities.h
+++ b/src/capabilities.h
@@ -41,6 +41,9 @@ struct Capabilities {
41}; 41};
42 42
43int read_capabilities(struct Capabilities *cap, int fd); 43int read_capabilities(struct Capabilities *cap, int fd);
44int get_cap_xsize(const struct Capabilities *cap);
45int get_cap_ysize(const struct Capabilities *cap);
46
44void output_capabilities(const struct Capabilities *cap); 47void output_capabilities(const struct Capabilities *cap);
45 48
46#endif 49#endif
diff --git a/src/multitouch.c b/src/multitouch.c
index 2919b9d..fd2393f 100644
--- a/src/multitouch.c
+++ b/src/multitouch.c
@@ -185,12 +185,8 @@ static void handle_gestures(LocalDevicePtr local,
185 const struct Capabilities *caps) 185 const struct Capabilities *caps)
186{ 186{
187 static int vscroll, hscroll; 187 static int vscroll, hscroll;
188 int vstep = 1 + 188 int vstep = 1 + vscroll_fraction * get_cap_ysize(caps);
189 vscroll_fraction * (caps->abs_position_y.maximum - 189 int hstep = 1 + hscroll_fraction * get_cap_xsize(caps);
190 caps->abs_position_y.minimum);
191 int hstep = 1 +
192 hscroll_fraction * (caps->abs_position_x.maximum -
193 caps->abs_position_x.minimum);
194 int i; 190 int i;
195 for (i = 0; i < DIM_BUTTON; i++) { 191 for (i = 0; i < DIM_BUTTON; i++) {
196 if (GETBIT(gs->btmask, i)) { 192 if (GETBIT(gs->btmask, i)) {