summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs')
-rw-r--r--Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs56
1 files changed, 33 insertions, 23 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs
index 36f199d0..7a2f7326 100644
--- a/Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs
+++ b/Xamarin.Forms.Platform.Tizen/Renderers/NavigationPageRenderer.cs
@@ -43,7 +43,17 @@ namespace Xamarin.Forms.Platform.Tizen
protected override void Dispose(bool disposing)
{
- _naviFrame.AnimationFinished -= AnimationFinishedHandler;
+ if (disposing)
+ {
+ if (_naviFrame != null)
+ {
+ _naviFrame.AnimationFinished -= OnAnimationFinished;
+ }
+ if (_toolbarTracker != null)
+ {
+ _toolbarTracker.CollectionChanged -= OnToolbarCollectionChanged;
+ }
+ }
base.Dispose(disposing);
}
@@ -54,7 +64,7 @@ namespace Xamarin.Forms.Platform.Tizen
_naviFrame = new Naviframe(Forms.Context.MainWindow);
_naviFrame.PreserveContentOnPop = true;
_naviFrame.DefaultBackButtonEnabled = true;
- _naviFrame.AnimationFinished += AnimationFinishedHandler;
+ _naviFrame.AnimationFinished += OnAnimationFinished;
SetNativeControl(_naviFrame);
}
@@ -62,33 +72,33 @@ namespace Xamarin.Forms.Platform.Tizen
if (_toolbarTracker == null)
{
_toolbarTracker = new ToolbarTracker();
- _toolbarTracker.CollectionChanged += ToolbarTrackerOnCollectionChanged;
+ _toolbarTracker.CollectionChanged += OnToolbarCollectionChanged;
}
if (e.OldElement != null)
{
var navigation = e.OldElement as INavigationPageController;
- navigation.PopRequested -= PopRequestedHandler;
- navigation.PopToRootRequested -= PopToRootRequestedHandler;
- navigation.PushRequested -= PushRequestedHandler;
- navigation.RemovePageRequested -= RemovePageRequestedHandler;
- navigation.InsertPageBeforeRequested -= InsertPageBeforeRequestedHandler;
+ navigation.PopRequested -= OnPopRequested;
+ navigation.PopToRootRequested -= OnPopToRootRequested;
+ navigation.PushRequested -= OnPushRequested;
+ navigation.RemovePageRequested -= OnRemovePageRequested;
+ navigation.InsertPageBeforeRequested -= OnInsertPageBeforeRequested;
var pageController = e.OldElement as IPageController;
- pageController.InternalChildren.CollectionChanged -= PageCollectionChangedHandler;
+ pageController.InternalChildren.CollectionChanged -= OnPageCollectionChanged;
}
if (e.NewElement != null)
{
var navigation = e.NewElement as INavigationPageController;
- navigation.PopRequested += PopRequestedHandler;
- navigation.PopToRootRequested += PopToRootRequestedHandler;
- navigation.PushRequested += PushRequestedHandler;
- navigation.RemovePageRequested += RemovePageRequestedHandler;
- navigation.InsertPageBeforeRequested += InsertPageBeforeRequestedHandler;
+ navigation.PopRequested += OnPopRequested;
+ navigation.PopToRootRequested += OnPopToRootRequested;
+ navigation.PushRequested += OnPushRequested;
+ navigation.RemovePageRequested += OnRemovePageRequested;
+ navigation.InsertPageBeforeRequested += OnInsertPageBeforeRequested;
var pageController = e.NewElement as IPageController;
- pageController.InternalChildren.CollectionChanged += PageCollectionChangedHandler;
+ pageController.InternalChildren.CollectionChanged += OnPageCollectionChanged;
foreach (Page page in pageController.InternalChildren)
{
@@ -128,7 +138,7 @@ namespace Xamarin.Forms.Platform.Tizen
}
- void PageCollectionChangedHandler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
+ void OnPageCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
if (e.OldItems != null)
foreach (Page page in e.OldItems)
@@ -138,7 +148,7 @@ namespace Xamarin.Forms.Platform.Tizen
page.PropertyChanged += NavigationBarPropertyChangedHandler;
}
- void ToolbarTrackerOnCollectionChanged(object sender, EventArgs eventArgs)
+ void OnToolbarCollectionChanged(object sender, EventArgs eventArgs)
{
UpdateToolbarItem(Element.CurrentPage);
}
@@ -375,7 +385,7 @@ namespace Xamarin.Forms.Platform.Tizen
return toolbar;
}
- void PopRequestedHandler(object sender, NavigationRequestedEventArgs nre)
+ void OnPopRequested(object sender, NavigationRequestedEventArgs nre)
{
if ((Element as IPageController).InternalChildren.Count == _naviFrame.NavigationStack.Count)
{
@@ -397,7 +407,7 @@ namespace Xamarin.Forms.Platform.Tizen
}
}
- void PopToRootRequestedHandler(object sender, NavigationRequestedEventArgs nre)
+ void OnPopToRootRequested(object sender, NavigationRequestedEventArgs nre)
{
List<NaviItem> copyOfStack = new List<NaviItem>(_naviFrame.NavigationStack);
copyOfStack.Reverse();
@@ -423,7 +433,7 @@ namespace Xamarin.Forms.Platform.Tizen
}
}
- void PushRequestedHandler(object sender, NavigationRequestedEventArgs nre)
+ void OnPushRequested(object sender, NavigationRequestedEventArgs nre)
{
if (nre.Animated || _naviFrame.NavigationStack.Count == 0)
{
@@ -441,12 +451,12 @@ namespace Xamarin.Forms.Platform.Tizen
UpdateHasNavigationBar(nre.Page);
}
- void RemovePageRequestedHandler(object sender, NavigationRequestedEventArgs nre)
+ void OnRemovePageRequested(object sender, NavigationRequestedEventArgs nre)
{
GetNaviItemForPage(nre.Page).Delete();
}
- void InsertPageBeforeRequestedHandler(object sender, NavigationRequestedEventArgs nre)
+ void OnInsertPageBeforeRequested(object sender, NavigationRequestedEventArgs nre)
{
if (nre.BeforePage == null)
throw new ArgumentNullException("before");
@@ -458,7 +468,7 @@ namespace Xamarin.Forms.Platform.Tizen
UpdateHasNavigationBar(nre.Page);
}
- void AnimationFinishedHandler(object sender, EventArgs e)
+ void OnAnimationFinished(object sender, EventArgs e)
{
CompleteCurrentNavigationTask();
}