(Touch) Ensure leave events are emitted to an actor that's detatched then re-attached... 17/24117/1
authorAdeel Kazmi <adeel.kazmi@samsung.com>
Tue, 8 Jul 2014 11:12:45 +0000 (12:12 +0100)
committerAdeel Kazmi <adeel.kazmi@samsung.com>
Tue, 8 Jul 2014 14:14:26 +0000 (15:14 +0100)
[problem]      The primary hit actor is removed from the stage then re-added between motion events.
[cause]        Problem is that when it is removed, we have a flag to say we have disconnected
               from it. Normally we set a different actor on the next touch but if we set the same
               actor again, then this flag is not reset.
[solution]     Reset the flag when setting the actor.

Change-Id: Ia64fe0ac91107ada391f91a7d7b3d5a7a1280e84
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
dali/internal/event/events/touch-event-processor.cpp

index e561ebc..0a08768 100644 (file)
@@ -523,6 +523,9 @@ void TouchEventProcessor::ActorObserver::SetActor( Actor* actor )
       DALI_LOG_INFO(gLogFilter, Debug::Verbose, "Start Observing:            %p\n", mActor);
     }
   }
+
+  // Make sure this flag is unset (as we may have been disconnected if it's the same actor)
+  mActorDisconnected = false;
 }
 
 void TouchEventProcessor::ActorObserver::ResetActor()