From 40156e52839edbb7f0191dbdcdc289373b0e5caf Mon Sep 17 00:00:00 2001 From: Dongsug Song Date: Tue, 31 Dec 2019 16:00:33 +0900 Subject: [PATCH] Revert "[Tizen] Pan now possible without a touch down" - some pan senario is not working (for example, scrolling) - revert temporarily This reverts commit e647a952be0dce4f90787548874203415b8f9154. Change-Id: I2a6ea6a137fa1f1a4937a57d4e7b3c4c63e2a505 --- .../event/events/pan-gesture/pan-gesture-processor.cpp | 11 ++++++++--- .../event/events/pan-gesture/pan-gesture-recognizer.cpp | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/dali/internal/event/events/pan-gesture/pan-gesture-processor.cpp b/dali/internal/event/events/pan-gesture/pan-gesture-processor.cpp index 3aadc05..05589ef 100644 --- a/dali/internal/event/events/pan-gesture/pan-gesture-processor.cpp +++ b/dali/internal/event/events/pan-gesture/pan-gesture-processor.cpp @@ -161,8 +161,13 @@ void PanGestureProcessor::Process( Scene& scene, const PanGestureEvent& panEvent mCurrentPanEmitters.clear(); ResetActor(); - // It's only possible on touch-down, which is the position we want to hit-test against when the pan actually starts - mPossiblePanPosition = panEvent.currentPosition; + HitTestAlgorithm::Results hitTestResults; + if( HitTest( scene, panEvent.currentPosition, hitTestResults ) ) + { + SetActor( &GetImplementation( hitTestResults.actor ) ); + mPossiblePanPosition = panEvent.currentPosition; + } + break; } @@ -179,7 +184,7 @@ void PanGestureProcessor::Process( Scene& scene, const PanGestureEvent& panEvent HitTestAlgorithm::Results hitTestResults; HitTest( scene, mPossiblePanPosition, hitTestResults ); // Hit test original possible position... - if ( hitTestResults.actor ) + if ( hitTestResults.actor && ( GetCurrentGesturedActor() == &GetImplementation( hitTestResults.actor ) ) ) { // Record the current render-task for Screen->Actor coordinate conversions mCurrentRenderTask = hitTestResults.renderTask; diff --git a/dali/internal/event/events/pan-gesture/pan-gesture-recognizer.cpp b/dali/internal/event/events/pan-gesture/pan-gesture-recognizer.cpp index 0b56574..0256821 100644 --- a/dali/internal/event/events/pan-gesture/pan-gesture-recognizer.cpp +++ b/dali/internal/event/events/pan-gesture/pan-gesture-recognizer.cpp @@ -99,7 +99,7 @@ void PanGestureRecognizer::SendEvent(const Integration::TouchEvent& event) { case Clear: { - if ( ( primaryPointState == PointState::DOWN ) || ( primaryPointState == PointState::STATIONARY ) || ( primaryPointState == PointState::MOTION )) + if ( ( primaryPointState == PointState::DOWN ) || ( primaryPointState == PointState::STATIONARY ) ) { mPrimaryTouchDownLocation = event.points[0].GetScreenPosition(); mPrimaryTouchDownTime = event.time; -- 2.7.4