#define _USE_MATH_DEFINES
+#include "gesturedetector.h"
#include <cmath>
#include <sigc++/bind_return.h>
-#include "gesturedetector.h"
#include "touchscreen.h"
using namespace std;
namespace Input {
GestureDetector::GestureDetector(Touchscreen &ts):
- touchscreen(ts),
- current_gesture(GESTURE_NONE),
- pending_tap(GESTURE_NONE),
- invalid_gesture(false)
+ Device(UNSPECIFIED),
+ touchscreen(ts)
{
name = "Gesture";
if(!p.down)
return;
- /* At least one point needs to have moved more than the threshold to start
- the gesture. */
- bool threshold_exceeded = false;
- for(unsigned i=0; (i<MAX_POINTS && !threshold_exceeded); ++i)
- threshold_exceeded = (points[i].down && points[i].threshold_exceeded);
+ /* All held points need to have moved more than the threshold to start the
+ gesture. */
+ bool threshold_exceeded = true;
+ for(unsigned i=0; (i<MAX_POINTS && threshold_exceeded); ++i)
+ if(points[i].down && !points[i].threshold_exceeded)
+ threshold_exceeded = false;
if(!threshold_exceeded)
return;