[NUI] Fix Dialog Transition issue
authorhuiyu.eun <huiyu.eun@samsung.com>
Fri, 9 Jul 2021 08:07:42 +0000 (17:07 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Fri, 9 Jul 2021 10:39:50 +0000 (19:39 +0900)
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
src/Tizen.NUI.Components/Controls/Navigation/Navigator.cs

index a287ad0..190164c 100755 (executable)
@@ -164,7 +164,10 @@ namespace Tizen.NUI.Components
             transitionSet = CreateTransition(topPage, page, true);
             transitionSet.Finished += (object sender, EventArgs e) =>
             {
-                topPage.SetVisible(false);
+                if (page is DialogPage == false)
+                {
+                   topPage.SetVisible(false);     
+                }
 
                 //Invoke Page events
                 page.InvokeAppeared();
@@ -670,12 +673,18 @@ namespace Tizen.NUI.Components
             int duration = (transition.TimePeriod.DurationMilliseconds + transition.TimePeriod.DelayMilliseconds);
             float durationSeconds = (float)duration / 1000.0f;
 
-            TransitionItemBase disappearingTransition = currentTopPage.DisappearingTransition.CreateTransition(currentTopPage, false);
-            TransitionItemBase appearingTransition = newTopPage.AppearingTransition.CreateTransition(newTopPage, true);
-            disappearingTransition.TransitionWithChild = true;
-            appearingTransition.TransitionWithChild = true;
-            newTransitionSet.AddTransition(disappearingTransition);
-            newTransitionSet.AddTransition(appearingTransition);
+            if (!pushTransition || newTopPage is DialogPage == false)
+            {
+                TransitionItemBase disappearingTransition = currentTopPage.DisappearingTransition.CreateTransition(currentTopPage, false);
+                newTransitionSet.AddTransition(disappearingTransition);
+                disappearingTransition.TransitionWithChild = true;
+            }
+            if (pushTransition || currentTopPage is DialogPage == false)
+            {
+                TransitionItemBase appearingTransition = newTopPage.AppearingTransition.CreateTransition(newTopPage, true);
+                appearingTransition.TransitionWithChild = true;
+                newTransitionSet.AddTransition(appearingTransition);
+            }
 
             newTransitionSet.Play();