From: chanywa Date: Tue, 16 May 2017 12:56:09 +0000 (+0900) Subject: Fix gesture bugs when using a mouse device X-Git-Tag: submit/tizen/20170516.125641^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a3ea64106929d994d796359d38d6e7f9a3d5ebfd;p=platform%2Fcore%2Fapi%2Fmaps-service.git Fix gesture bugs when using a mouse device Change-Id: I51e494aee002665aef3e2dd7a480e50ff0b2ca8c --- diff --git a/capi-maps-service.changes b/capi-maps-service.changes index 542002e..491b969 100644 --- a/capi-maps-service.changes +++ b/capi-maps-service.changes @@ -1,3 +1,8 @@ +[Version] capi-maps-service_0.6.12 +[Date] 16 May 2017 +[Title] Fix gesture bugs when using a mouse device +[Developer] Seechan Kim + [Version] capi-maps-service_0.6.11 [Date] 02 May 2017 [Title] Fix default values of Tizen feature to false diff --git a/packaging/capi-maps-service.spec b/packaging/capi-maps-service.spec index 7891407..e0d4045 100644 --- a/packaging/capi-maps-service.spec +++ b/packaging/capi-maps-service.spec @@ -1,6 +1,6 @@ Name: capi-maps-service Summary: Tizen Maps Service API -Version: 0.6.11 +Version: 0.6.12 Release: 1 Group: Location/API License: Apache-2.0 diff --git a/src/view/gesture_detector.h b/src/view/gesture_detector.h index 84c7f4e..3a038cf 100644 --- a/src/view/gesture_detector.h +++ b/src/view/gesture_detector.h @@ -98,10 +98,8 @@ namespace view unsigned int duration_min, unsigned int duration_max); public: - static int get_trajectory_effective_length(const touch_point - &p1, - const touch_point - &p2); + static int get_trajectory_effective_length(const touch_point &p1, + const touch_point &p2); public: enum log_colors { FG_BLACK = 30, diff --git a/src/view/gesture_processor.cpp b/src/view/gesture_processor.cpp index 3100dd1..51e4f95 100644 --- a/src/view/gesture_processor.cpp +++ b/src/view/gesture_processor.cpp @@ -765,32 +765,14 @@ void view::finger_event_stream::move(Evas_Event_Mouse_Move *ev) if (!ev) return; + if (_finger_pressed[0] == false) + return; + /* Current touch point info */ const touch_point tp(ev->cur.canvas.x, ev->cur.canvas.y, ev->timestamp); MAPS_LOGI("finger_event_stream::move to (%d, %d)", tp._x, tp._y); - /* - * The Ecore sends "move" event before "press" event - * so we have to emulate the "press" for the sake of - * detector simplicity - */ - if (!_finger_pressed[0]) { - MAPS_LOGI("finger_event_stream::tap [CORRECTION]"); - _finger_pressed[0] = true; - _finger_down[0] = tp; - - /* Emulate finger press */ - _d->tap(0, tp); - } - - /* It's needed to correct the touch point, when the finger moved out of - * assigned movement threshold */ - if (!_finger_moving[0] && !_finger_moving[1] - && finger_dragged_enough(0, tp)) { - _d->_info._finger_down[0] = tp; - } - /* * We think that the movement happend when the finger moved out of * some small area. @@ -861,32 +843,14 @@ void view::finger_event_stream::multi_move(Evas_Event_Multi_Move *ev) if (finger_no >= MAX_FINGERS) return; + if (_finger_pressed[finger_no] == false) + return; + /* Current touch point info */ const touch_point tp(ev->cur.canvas.x, ev->cur.canvas.y, ev->timestamp); MAPS_LOGI("finger_event_stream::multi_move to (%d, %d)", tp._x, tp._y); - /* - * The Ecore sends "move" event before "press" event - * so we have to emulate the "press" for the sake of - * detector simplicity - */ - if (!_finger_pressed[finger_no]) { - MAPS_LOGI("finger_event_stream::multi_tap [CORRECTION]"); - _finger_pressed[finger_no] = true; - _finger_down[finger_no] = tp; - - /* Emulate finger press */ - _d->tap(finger_no, tp); - } - - /* It's needed to correct the touch point, when the finger moved out of - * assigned movement threshold */ - if (!_finger_moving[0] && !_finger_moving[1] - && finger_dragged_enough(finger_no, tp)) { - _d->_info._finger_down[finger_no] = tp; - } - /* * We think that the movement happend when the finger moved out of * some small area. diff --git a/src/view/inertial_gesture.cpp b/src/view/inertial_gesture.cpp index 84b7c0b..9367318 100644 --- a/src/view/inertial_gesture.cpp +++ b/src/view/inertial_gesture.cpp @@ -58,8 +58,7 @@ view::inertial_gesture::inertial_gesture(const inertial_gesture &src) { } -view::inertial_gesture &view::inertial_gesture::operator=(const inertial_gesture - &src) +view::inertial_gesture &view::inertial_gesture::operator=(const inertial_gesture &src) { return *this; } diff --git a/src/view/runtime_data.h b/src/view/runtime_data.h index 8654346..538a3a8 100644 --- a/src/view/runtime_data.h +++ b/src/view/runtime_data.h @@ -19,7 +19,7 @@ #include "maps_view.h" -#define MAX_FINGERS 10 +#define MAX_FINGERS 3 namespace view {