[Tizen] Correct to compute prior Actor in hit test 12/304112/1 accepted/tizen/7.0/unified/20240111.013534
authorJiyun Yang <ji.yang@samsung.com>
Wed, 10 Jan 2024 08:29:39 +0000 (17:29 +0900)
committerJiyun Yang <ji.yang@samsung.com>
Wed, 10 Jan 2024 08:31:28 +0000 (17:31 +0900)
Change-Id: I2bc3ea0185ec3d31434b454f4e40afc7e938055f
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
dali/internal/event/events/hit-test-algorithm-impl.cpp

index 99a6aa9..ebadf6d 100644 (file)
@@ -608,16 +608,6 @@ bool HitTestRenderTask(const RenderTaskList::ExclusivesContainer& exclusives,
 
 Dali::Actor FindPriorActorInLayer(Dali::Actor rootActor, Dali::Actor firstActor, Dali::Actor secondActor)
 {
-  if(rootActor == firstActor)
-  {
-    return firstActor;
-  }
-
-  if(rootActor == secondActor)
-  {
-    return secondActor;
-  }
-
   Dali::Actor priorActor;
   uint32_t childCount = rootActor.GetChildCount();
   if(childCount > 0)
@@ -636,13 +626,27 @@ Dali::Actor FindPriorActorInLayer(Dali::Actor rootActor, Dali::Actor firstActor,
       }
     }
   }
+
+  if(!priorActor)
+  {
+    if(rootActor == firstActor)
+    {
+      priorActor = firstActor;
+    }
+
+    if(rootActor == secondActor)
+    {
+      priorActor = secondActor;
+    }
+  }
+
   return priorActor;
 }
 
 Dali::Actor FindPriorActorInLayers(LayerList& layers, Dali::Actor rootActor, Dali::Actor firstActor, Dali::Actor secondActor)
 {
   Dali::Layer sourceLayer = rootActor.GetLayer();
-  const uint32_t sourceActorDepth(sourceLayer.GetProperty<bool>(Dali::Layer::Property::DEPTH));
+  const uint32_t sourceActorDepth(sourceLayer.GetProperty<int>(Dali::Layer::Property::DEPTH));
 
   Dali::Actor priorActor;
   uint32_t layerCount = layers.GetLayerCount();