Add animation dispose to dispose method
authorKrzysztof Wieclaw/IoT & UI Sample (PLT) /SRPOL/Engineer/Samsung Electronics <k.wieclaw@samsung.com>
Tue, 14 Apr 2020 14:09:37 +0000 (16:09 +0200)
committerKrzysztof Wieclaw/IoT & UI Sample (PLT) /SRPOL/Engineer/Samsung Electronics <k.wieclaw@samsung.com>
Tue, 14 Apr 2020 14:09:37 +0000 (16:09 +0200)
Oobe/Oobe.Common/Controls/ScrollableBase.cs
Oobe/Oobe/Controls/ViewStack.cs
Oobe/Oobe/Views/MainView.cs

index 0e73f7e..e1a6fa2 100644 (file)
@@ -646,6 +646,7 @@ namespace Oobe.Common.Controls
                     mTapGestureDetector.Dispose();
                     mTapGestureDetector = null;
                 }
+                scrollAnimation?.Dispose();
             }
             base.Dispose(type);
         }
index 61fc153..1059bb0 100644 (file)
@@ -225,5 +225,16 @@ namespace Oobe.Controls
             TransitionFinished?.Invoke(this, new EventArgs());
         }
 
+        protected override void Dispose(Tizen.NUI.DisposeTypes type)
+        {
+            if (disposed)
+                return;
+            if(type == DisposeTypes.Explicit)
+            {
+                pageEnterAnimation.Dispose();
+                pageLeaveAnimation.Dispose();
+            }
+            base.Dispose(type);
+        }
     }
 }
index 1d2e39f..e9779ab 100644 (file)
@@ -2,13 +2,14 @@ using Tizen.NUI.BaseComponents;
 using Tizen.NUI;
 using Oobe.Controls;
 using Tizen.NUI.Components;
+using System;
 
 namespace Oobe.Views
 {
     /// <summary>
     /// Implementation of OOBE GUI Guideline for IoT Headed
     /// </summary>
-    public class MainView
+    public class MainView : IDisposable
     {
         private ViewStack stack;
         private Animation dimEffectAnimation;
@@ -116,5 +117,12 @@ namespace Oobe.Views
             }
             dimEffectAnimation.Clear();
         }
+
+        public void Dispose()
+        {
+            dimEffectAnimation.Dispose();
+            stack.Dispose();
+            pagination.Dispose();
+        }
     }
 }