summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
diff options
context:
space:
mode:
authorE.Z. Hart <hartez@users.noreply.github.com>2016-06-16 09:45:09 -0600
committerRui Marinho <me@ruimarinho.net>2016-06-16 16:45:09 +0100
commitd5be2f0144ca810fdfbf59808d526c26fe86017e (patch)
tree3ad7e4465307cd6d633184e05d85eb3a4df59e01 /Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
parent04f7bd296ee67af9189ecd7fdfbd2808ca16ce9a (diff)
downloadxamarin-forms-d5be2f0144ca810fdfbf59808d526c26fe86017e.tar.gz
xamarin-forms-d5be2f0144ca810fdfbf59808d526c26fe86017e.tar.bz2
xamarin-forms-d5be2f0144ca810fdfbf59808d526c26fe86017e.zip
Prep Page for removal of InternalsVisibleTo (#150)
Diffstat (limited to 'Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs')
-rw-r--r--Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs18
1 files changed, 10 insertions, 8 deletions
diff --git a/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs b/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
index 1132c8fa..277be331 100644
--- a/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
+++ b/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
@@ -73,6 +73,8 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
FragmentManager FragmentManager => _fragmentManager ?? (_fragmentManager = ((FormsAppCompatActivity)Context).SupportFragmentManager);
+ IPageController PageController => Element as IPageController;
+
bool ToolbarVisible
{
get { return _toolbarVisible; }
@@ -130,9 +132,9 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
if (Element != null)
{
- for (var i = 0; i < Element.InternalChildren.Count; i++)
+ for (var i = 0; i < PageController.InternalChildren.Count; i++)
{
- var child = Element.InternalChildren[i] as VisualElement;
+ var child = PageController.InternalChildren[i] as VisualElement;
if (child == null)
continue;
IVisualElementRenderer renderer = Android.Platform.GetRenderer(child);
@@ -146,7 +148,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
navController.PopToRootRequested -= OnPoppedToRoot;
navController.InsertPageBeforeRequested -= OnInsertPageBeforeRequested;
navController.RemovePageRequested -= OnRemovePageRequested;
- Element.SendDisappearing();
+ PageController.SendDisappearing();
}
if (_toolbarTracker != null)
@@ -174,7 +176,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
protected override void OnAttachedToWindow()
{
base.OnAttachedToWindow();
- Element.SendAppearing();
+ PageController.SendAppearing();
_fragmentStack.Last().UserVisibleHint = true;
RegisterToolbar();
UpdateToolbar();
@@ -183,7 +185,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
protected override void OnDetachedFromWindow()
{
base.OnDetachedFromWindow();
- Element.SendDisappearing();
+ PageController.SendDisappearing();
}
protected override void OnElementChanged(ElementChangedEventArgs<NavigationPage> e)
@@ -272,7 +274,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
int containerHeight = ToolbarVisible ? internalHeight : b - t;
containerHeight -= ContainerPadding;
- Element.ContainerArea = new Rectangle(0, 0, Context.FromPixels(r - l), Context.FromPixels(containerHeight));
+ PageController.ContainerArea = new Rectangle(0, 0, Context.FromPixels(r - l), Context.FromPixels(containerHeight));
// Potential for optimization here, the exact conditions by which you don't need to do this are complex
// and the cost of doing when it's not needed is moderate to low since the layout will short circuit pretty fast
Element.ForceLayout();
@@ -393,7 +395,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
{
UpdateToolbar();
- int index = Element.InternalChildren.IndexOf(before);
+ int index = PageController.InternalChildren.IndexOf(before);
if (index == -1)
throw new InvalidOperationException("This should never happen, please file a bug");
@@ -464,7 +466,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
if (masterDetailPage == null)
{
- masterDetailPage = Element.InternalChildren[0] as MasterDetailPage;
+ masterDetailPage = PageController.InternalChildren[0] as MasterDetailPage;
if (masterDetailPage == null)
return;
}