Before you had to be listening to pan gestures before the touch-down
event arrives.
Change-Id: Id9fa1164ab43c038ab407950a5b794ab4976241e
mCurrentPanEmitters.clear();
ResetActor();
mCurrentPanEmitters.clear();
ResetActor();
- HitTestAlgorithm::Results hitTestResults;
- if( HitTest( scene, panEvent.currentPosition, hitTestResults ) )
- {
- SetActor( &GetImplementation( hitTestResults.actor ) );
- mPossiblePanPosition = panEvent.currentPosition;
- }
-
+ // 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;
HitTest( scene, mPossiblePanPosition, hitTestResults ); // Hit test original possible position...
HitTestAlgorithm::Results hitTestResults;
HitTest( scene, mPossiblePanPosition, hitTestResults ); // Hit test original possible position...
- if ( hitTestResults.actor && ( GetCurrentGesturedActor() == &GetImplementation( hitTestResults.actor ) ) )
+ if ( hitTestResults.actor )
{
// Record the current render-task for Screen->Actor coordinate conversions
mCurrentRenderTask = hitTestResults.renderTask;
{
// Record the current render-task for Screen->Actor coordinate conversions
mCurrentRenderTask = hitTestResults.renderTask;
- if ( ( primaryPointState == PointState::DOWN ) || ( primaryPointState == PointState::STATIONARY ) )
+ if ( ( primaryPointState == PointState::DOWN ) || ( primaryPointState == PointState::STATIONARY ) || ( primaryPointState == PointState::MOTION ))
{
mPrimaryTouchDownLocation = event.points[0].GetScreenPosition();
mPrimaryTouchDownTime = event.time;
{
mPrimaryTouchDownLocation = event.points[0].GetScreenPosition();
mPrimaryTouchDownTime = event.time;