Reset GestureClient when touchstart result is received.
authorEunmi Lee <eunmi15.lee@samsung.com>
Wed, 30 Oct 2013 10:25:13 +0000 (19:25 +0900)
committerEunmi Lee <eunmi15.lee@samsung.com>
Wed, 30 Oct 2013 10:25:45 +0000 (19:25 +0900)
[Title] Reset GestureClient when touchstart result is received.
[Issue#] N_SE-55791
[Problem] The click does not occur when we double tap the button quickly.
[Cause] The first touchend result comes after second touchstart occurs
        and the tap (click) state is reset when second touch is started.
[Solution] Do not reset when touch is started and reset GestureClient when touchstart result is received.

Change-Id: I63433900464a46518e8ebb5a02411ae61bd32807

Source/WebKit2/UIProcess/API/efl/ewk_view.cpp

index 33cceb9..7d65af9 100755 (executable)
@@ -4191,6 +4191,7 @@ void ewk_view_touch_event_handler_result_set(Evas_Object* ewkView, WebKit::WebEv
     //      x      |not occured |     x     || enable  |  enable
     // ------------------------------------------------------------
     if (type == WebEvent::TouchStart) {
+        impl->gestureClient->reset();
         impl->gestureClient->setGestureEnabled(!wasHandled);
         impl->wasHandledTouchStart = wasHandled;
 
@@ -4399,7 +4400,6 @@ Eina_Bool ewk_view_feed_touch_event(Evas_Object* ewkView, Ewk_Touch_Event_Type t
 
     if (type == EWK_TOUCH_START) {
         if (eina_list_count(points) == 1) {
-            impl->gestureClient->reset();
             Ewk_Touch_Point* point = static_cast<Ewk_Touch_Point*>(eina_list_data_get(points));
             impl->touchDownPoint.x = point->x;
             impl->touchDownPoint.y = point->y;