summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Tizen/Platform.cs
diff options
context:
space:
mode:
authorKangho Hur <kangho.hur@samsung.com>2017-03-22 17:09:47 +0900
committerKangho Hur <kangho.hur@samsung.com>2017-10-23 13:34:30 +0900
commit3ed1895c013f4010acec5015b40aeeccfb12f9ef (patch)
tree232cc155672d46adcfbb5de13a1c479e3a604cd7 /Xamarin.Forms.Platform.Tizen/Platform.cs
parent9b970979d7bf6181782d668ef5507933824eb7b0 (diff)
downloadxamarin-forms-3ed1895c013f4010acec5015b40aeeccfb12f9ef.tar.gz
xamarin-forms-3ed1895c013f4010acec5015b40aeeccfb12f9ef.tar.bz2
xamarin-forms-3ed1895c013f4010acec5015b40aeeccfb12f9ef.zip
Support window transparency
- Should make window transparent before invoke LoadApplication() - According to the Tizen UX Guideline, naviframe (NavigationPage in Xamarin.Forms) has its own opaque background image by default. - So, it always looks opaque even if window is transparent. - To avoid these situations, DO NOT use NavigationPage and Navigation.PushModalAsync() if you want to make your application translucent. Change-Id: I202bd1c500e6932f2fc49c9c5c88e06acb0659af
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen/Platform.cs')
-rw-r--r--Xamarin.Forms.Platform.Tizen/Platform.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Platform.cs b/Xamarin.Forms.Platform.Tizen/Platform.cs
index 69a435e3..4fe56e3f 100644
--- a/Xamarin.Forms.Platform.Tizen/Platform.cs
+++ b/Xamarin.Forms.Platform.Tizen/Platform.cs
@@ -135,6 +135,15 @@ namespace Xamarin.Forms.Platform.Tizen
IVisualElementRenderer pageRenderer = AttachRenderer(Page);
var naviItem = _naviframe.Push(pageRenderer.NativeView);
naviItem.TitleBarVisible = false;
+
+ // Make naviitem transparent if Forms.Context.MainWindow is transparent.
+ // Make sure that this is only for _navModel._naviTree. (not for _navModel._modalStack)
+ // In addtion, the style of naviItem is only decided before the naviItem pushed into Naviframe. (not on-demand).
+ if(Forms.Context.MainWindow.Alpha)
+ {
+ naviItem.Style = "default/transparent";
+ }
+
((Application)Page.RealParent).NavigationProxy.Inner = this;
Device.StartTimer(TimeSpan.Zero, () =>