aboutsummaryrefslogtreecommitdiffstats
path: root/src/hwdata.c
diff options
context:
space:
mode:
authorHenrik Rydberg <rydberg@euromail.se>2010-03-21 14:54:15 +0100
committerHenrik Rydberg <rydberg@euromail.se>2010-03-21 14:59:09 +0100
commit0587ab0488c46b61d175793f2deedc3a7aa9b600 (patch)
tree6077295316cc1420a4cd5010a3772c460c759b75 /src/hwdata.c
parentc7ed4cec501f10479a98e380d760670312101136 (diff)
downloadxorg-input-kobomultitouch-0587ab0488c46b61d175793f2deedc3a7aa9b600.tar.gz
xorg-input-kobomultitouch-0587ab0488c46b61d175793f2deedc3a7aa9b600.tar.bz2
xorg-input-kobomultitouch-0587ab0488c46b61d175793f2deedc3a7aa9b600.zip
Add millisecond event times
Expand the (x, y) notion of the current hardware events to the more useful (x, y, t) notion. This patch was inspired by a gesture patch from Arturo Castro <arturo@openframeworks.cc>. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Diffstat (limited to 'src/hwdata.c')
-rw-r--r--src/hwdata.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/hwdata.c b/src/hwdata.c
index e76bcd8..f204884 100644
--- a/src/hwdata.c
+++ b/src/hwdata.c
@@ -26,6 +26,14 @@ void init_hwdata(struct HWData *hw)
memset(hw, 0, sizeof(struct HWData));
}
+static mstime_t get_mstime()
+{
+ static const mstime_t ms = 1000;
+ struct timeval now;
+ gettimeofday(&now, NULL);
+ return now.tv_usec / ms + now.tv_sec * ms;
+}
+
static void set_value(struct HWData *hw, int code, int value)
{
if (hw->nread < DIM_FINGER) {
@@ -50,6 +58,7 @@ static void accept_packet(struct HWData *hw)
{
hw->nread = 0;
hw->mread[hw->nread] = 0;
+ hw->evtime = get_mstime();
}
int read_hwdata(struct HWData *hw, const struct input_event* ev)