From: minkyu kim Date: Wed, 10 Jul 2013 10:45:05 +0000 (+0900) Subject: P130705-0389 : check OnEvasTouchPressed/OnEvasTouchReleased pair X-Git-Tag: submit/tizen_2.2/20130714.153149~45 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c1a219190d972271b1e2615ff7605e0fe63750e0;p=framework%2Fosp%2Fuifw.git P130705-0389 : check OnEvasTouchPressed/OnEvasTouchReleased pair Change-Id: I0abc21c7bfabdc364360ef200ea00d4709744366 --- diff --git a/src/ui/FUi_EflUiEventManager.cpp b/src/ui/FUi_EflUiEventManager.cpp index 748b260..5b908b9 100644 --- a/src/ui/FUi_EflUiEventManager.cpp +++ b/src/ui/FUi_EflUiEventManager.cpp @@ -88,6 +88,7 @@ Ecore_X_Atom keyboardExist = 0; const wchar_t* KEYBOARD_INSERTED_EVENT = L"KEYBOARD_INSERTED"; const int DEVICE_COUNT = 999; bool touchPressed[DEVICE_COUNT] = {false,}; +bool evasTouchPressed = false; const int KEY_COUNT = 300; bool keyPressed[KEY_COUNT] = {false,}; @@ -1594,6 +1595,22 @@ OnEvasTouchPressed(void* pData, Evas* pEvas, Evas_Object* pEvasObject, void* pEv _Control* pControl = static_cast<_Control*>(pData); SysTryReturnVoidResult(NID_UI, pControl, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid."); + if (evasTouchPressed == true) + { + _TouchManager* pTouchManager = _TouchManager::GetInstance(); + if (pTouchManager) + { + pTouchManager->SetTouchCanceled(null); + SysLog(NID_UI, "pWindow is null, CancelTouch"); + + evasTouchPressed = false; + pTouchManager->ResetTouchInfo(); + SysLog(NID_UI, "pWindow is null, ResetTouchInfo"); + } + } + + evasTouchPressed = true; + SysSecureLog(NID_UI, "OnEvasTouchPressed - x(%d), y(%d)", pEv->canvas.x, pEv->canvas.y); _TouchEvent event(0, _TOUCH_PRESSED, pEv->canvas.x, pEv->canvas.y, pEv->timestamp, pControl); @@ -1618,6 +1635,8 @@ OnEvasTouchReleased(void* pData, Evas* pEvas, Evas_Object* pEvasObject, void* pE _Control* pControl = static_cast<_Control*>(pData); SysTryReturnVoidResult(NID_UI, pControl, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid."); + evasTouchPressed = false; + SysSecureLog(NID_UI, "OnEvasTouchReleased - x(%d), y(%d)", pEv->canvas.x, pEv->canvas.y); _TouchEvent event(0, _TOUCH_RELEASED, pEv->canvas.x, pEv->canvas.y, pEv->timestamp, pControl);