aboutsummaryrefslogtreecommitdiffstats
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)
downloadxorg-input-kobomultitouch-14f65b1a3ddee4e70dc4c67234c3fccdd647af96.tar.gz
xorg-input-kobomultitouch-14f65b1a3ddee4e70dc4c67234c3fccdd647af96.tar.bz2
xorg-input-kobomultitouch-14f65b1a3ddee4e70dc4c67234c3fccdd647af96.zip
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)
return 0;
}
+int get_cap_xsize(const struct Capabilities *cap)
+{
+ return cap->abs_position_x.maximum - cap->abs_position_x.minimum;
+}
+
+int get_cap_ysize(const struct Capabilities *cap)
+{
+ return cap->abs_position_y.maximum - cap->abs_position_y.minimum;
+}
+
void output_capabilities(const struct Capabilities *cap)
{
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 {
};
int read_capabilities(struct Capabilities *cap, int fd);
+int get_cap_xsize(const struct Capabilities *cap);
+int get_cap_ysize(const struct Capabilities *cap);
+
void output_capabilities(const struct Capabilities *cap);
#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,
const struct Capabilities *caps)
{
static int vscroll, hscroll;
- int vstep = 1 +
- vscroll_fraction * (caps->abs_position_y.maximum -
- caps->abs_position_y.minimum);
- int hstep = 1 +
- hscroll_fraction * (caps->abs_position_x.maximum -
- caps->abs_position_x.minimum);
+ int vstep = 1 + vscroll_fraction * get_cap_ysize(caps);
+ int hstep = 1 + hscroll_fraction * get_cap_xsize(caps);
int i;
for (i = 0; i < DIM_BUTTON; i++) {
if (GETBIT(gs->btmask, i)) {