diff options
author | Kangho Hur <kangho.hur@samsung.com> | 2017-03-22 17:09:47 +0900 |
---|---|---|
committer | Kangho Hur <kangho.hur@samsung.com> | 2017-03-22 17:09:47 +0900 |
commit | 1da5eba617deb18dafaee2a0275afbcb0cd8b7b7 (patch) | |
tree | 53bcd0821ca52ce8c4f886ea9c70a5ab4ebe5679 | |
parent | 0ee49106e28e725b4ffc059fec1664d805bf844e (diff) | |
download | xamarin-forms-1da5eba617deb18dafaee2a0275afbcb0cd8b7b7.tar.gz xamarin-forms-1da5eba617deb18dafaee2a0275afbcb0cd8b7b7.tar.bz2 xamarin-forms-1da5eba617deb18dafaee2a0275afbcb0cd8b7b7.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
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Platform.cs | 9 | ||||
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Xamarin.Forms.Platform.Tizen.project.json | 2 |
2 files changed, 10 insertions, 1 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, () => diff --git a/Xamarin.Forms.Platform.Tizen/Xamarin.Forms.Platform.Tizen.project.json b/Xamarin.Forms.Platform.Tizen/Xamarin.Forms.Platform.Tizen.project.json index 154c2710..9c281cb5 100644 --- a/Xamarin.Forms.Platform.Tizen/Xamarin.Forms.Platform.Tizen.project.json +++ b/Xamarin.Forms.Platform.Tizen/Xamarin.Forms.Platform.Tizen.project.json @@ -1,6 +1,6 @@ { "dependencies": { - "ElmSharp": "1.1.0-beta-011", + "ElmSharp": "1.1.0-beta-016", "NETStandard.Library": "1.6.0", "System.Runtime.Serialization.Xml": "4.1.1", "Tizen.Applications": "1.1.0", |