From 1b6e268866051581cb5976e1236fa64b25a365d8 Mon Sep 17 00:00:00 2001 From: Bhavya Kumili Date: Wed, 3 Jul 2013 16:31:51 +0530 Subject: [PATCH] Blocking touch event when flick is in progress Change-Id: Iabc13805c6b7cbaab49fde04e67a90ce021b9fe7 --- src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp | 6 +++++- src/ui/inc/FUiCtrl_DateTimeBarPresenter.h | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp b/src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp index db87e93..ed29811 100644 --- a/src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp +++ b/src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp @@ -65,6 +65,7 @@ _DateTimeBarPresenter::_DateTimeBarPresenter(_DateTimeBar* pDateTimeBar) , __isFocused(false) , __focusedIndex(-1) , __focusBounds(FloatRectangle()) + , __isFlickCanceled(false) { } @@ -1173,6 +1174,7 @@ _DateTimeBarPresenter::OnTouchPressed(const _Control& source, const _TouchInfo& if (__isFlickInProgress) { ResetFlickAnimationTimer(); + __isFlickCanceled = true; } __touchMoveHandled = false; @@ -1221,7 +1223,7 @@ _DateTimeBarPresenter::OnTouchReleased(const _Control& source, const _TouchInfo& int index = GetItemIndexFromPosition(touchinfo.GetCurrentPosition()); bool isEventFire = true; - if (index != -1 && __isTouchMoved == false && __isFlickInProgress == false) + if (index != -1 && !__isTouchMoved && !__isFlickInProgress && !__isFlickCanceled) { PLAY_FEEDBACK(_RESOURCE_FEEDBACK_PATTERN_TAP, __pDateTimeBar); SetItemStatus(index, DATETIMEBAR_ITEM_STATUS_SELECTED); @@ -1230,6 +1232,7 @@ _DateTimeBarPresenter::OnTouchReleased(const _Control& source, const _TouchInfo& else { isEventFire = false; + __isFlickCanceled = false; } __isTouchMoved = false; @@ -1599,6 +1602,7 @@ result _DateTimeBarPresenter::StartFlickAnimationTimer(void) { result r = E_SUCCESS; + __isFlickInProgress = true; if (__pFlickAnimationTimer == null) { diff --git a/src/ui/inc/FUiCtrl_DateTimeBarPresenter.h b/src/ui/inc/FUiCtrl_DateTimeBarPresenter.h index 79dea00..90da69f 100644 --- a/src/ui/inc/FUiCtrl_DateTimeBarPresenter.h +++ b/src/ui/inc/FUiCtrl_DateTimeBarPresenter.h @@ -171,6 +171,7 @@ private: Tizen::Graphics::FloatRectangle __focusBounds; int __focusedValue; static const int UPDATE_ITEM_COUNT = 6; + bool __isFlickCanceled; }; // _DateTimeBarPresenter -- 2.7.4