diff --git a/src/Android/Android.csproj b/src/Android/Android.csproj index 2f20f10237..2ff745b0b2 100644 --- a/src/Android/Android.csproj +++ b/src/Android/Android.csproj @@ -110,6 +110,7 @@ + @@ -568,5 +569,11 @@ + + + MSBuild:UpdateGeneratedFiles + Designer + + \ No newline at end of file diff --git a/src/Android/Effects/TabBarEffect.cs b/src/Android/Effects/TabBarEffect.cs new file mode 100644 index 0000000000..4470b81ea3 --- /dev/null +++ b/src/Android/Effects/TabBarEffect.cs @@ -0,0 +1,31 @@ +using Android.Support.Design.BottomNavigation; +using Android.Support.Design.Widget; +using Android.Views; +using Bit.Droid.Effects; +using Xamarin.Forms; +using Xamarin.Forms.Platform.Android; + +[assembly: ResolutionGroupName("Bitwarden")] +[assembly: ExportEffect(typeof(TabBarEffect), "TabBarEffect")] +namespace Bit.Droid.Effects +{ + public class TabBarEffect : PlatformEffect + { + protected override void OnAttached() + { + if(!(Container.GetChildAt(0) is ViewGroup layout)) + { + return; + } + if(!(layout.GetChildAt(1) is BottomNavigationView bottomNavigationView)) + { + return; + } + bottomNavigationView.LabelVisibilityMode = LabelVisibilityMode.LabelVisibilityLabeled; + } + + protected override void OnDetached() + { + } + } +} \ No newline at end of file diff --git a/src/Android/Resources/drawable-hdpi/cog.png b/src/Android/Resources/drawable-hdpi/cog.png index f2d698044c..1022e8a5c0 100644 Binary files a/src/Android/Resources/drawable-hdpi/cog.png and b/src/Android/Resources/drawable-hdpi/cog.png differ diff --git a/src/Android/Resources/drawable-hdpi/lock.png b/src/Android/Resources/drawable-hdpi/lock.png index 96882cc768..d232ddadb3 100644 Binary files a/src/Android/Resources/drawable-hdpi/lock.png and b/src/Android/Resources/drawable-hdpi/lock.png differ diff --git a/src/Android/Resources/drawable-hdpi/refresh.png b/src/Android/Resources/drawable-hdpi/refresh.png index 799c591385..b657d53bca 100644 Binary files a/src/Android/Resources/drawable-hdpi/refresh.png and b/src/Android/Resources/drawable-hdpi/refresh.png differ diff --git a/src/Android/Resources/drawable-xhdpi/cog.png b/src/Android/Resources/drawable-xhdpi/cog.png index e3ea7ef117..3b2eb9b46d 100644 Binary files a/src/Android/Resources/drawable-xhdpi/cog.png and b/src/Android/Resources/drawable-xhdpi/cog.png differ diff --git a/src/Android/Resources/drawable-xhdpi/lock.png b/src/Android/Resources/drawable-xhdpi/lock.png index 527a6aa93e..ef416be948 100644 Binary files a/src/Android/Resources/drawable-xhdpi/lock.png and b/src/Android/Resources/drawable-xhdpi/lock.png differ diff --git a/src/Android/Resources/drawable-xhdpi/refresh.png b/src/Android/Resources/drawable-xhdpi/refresh.png index 55045f2afd..f123db822c 100644 Binary files a/src/Android/Resources/drawable-xhdpi/refresh.png and b/src/Android/Resources/drawable-xhdpi/refresh.png differ diff --git a/src/Android/Resources/drawable-xxhdpi/cog.png b/src/Android/Resources/drawable-xxhdpi/cog.png index 4d85280795..7fc6196d8a 100644 Binary files a/src/Android/Resources/drawable-xxhdpi/cog.png and b/src/Android/Resources/drawable-xxhdpi/cog.png differ diff --git a/src/Android/Resources/drawable-xxhdpi/lock.png b/src/Android/Resources/drawable-xxhdpi/lock.png index 033949599f..6ea13d9423 100644 Binary files a/src/Android/Resources/drawable-xxhdpi/lock.png and b/src/Android/Resources/drawable-xxhdpi/lock.png differ diff --git a/src/Android/Resources/drawable-xxhdpi/refresh.png b/src/Android/Resources/drawable-xxhdpi/refresh.png index 05af7189f0..4e2e77c155 100644 Binary files a/src/Android/Resources/drawable-xxhdpi/refresh.png and b/src/Android/Resources/drawable-xxhdpi/refresh.png differ diff --git a/src/Android/Resources/drawable-xxxhdpi/cog.png b/src/Android/Resources/drawable-xxxhdpi/cog.png index 31265c855c..c89e6cfcf6 100644 Binary files a/src/Android/Resources/drawable-xxxhdpi/cog.png and b/src/Android/Resources/drawable-xxxhdpi/cog.png differ diff --git a/src/Android/Resources/drawable-xxxhdpi/lock.png b/src/Android/Resources/drawable-xxxhdpi/lock.png index c7cc70ffb5..adbf0adb97 100644 Binary files a/src/Android/Resources/drawable-xxxhdpi/lock.png and b/src/Android/Resources/drawable-xxxhdpi/lock.png differ diff --git a/src/Android/Resources/drawable-xxxhdpi/refresh.png b/src/Android/Resources/drawable-xxxhdpi/refresh.png index 578f36c07c..920d9fa5b3 100644 Binary files a/src/Android/Resources/drawable-xxxhdpi/refresh.png and b/src/Android/Resources/drawable-xxxhdpi/refresh.png differ diff --git a/src/Android/Resources/drawable/cog.png b/src/Android/Resources/drawable/cog.png index 2200c139a9..02dd33420a 100644 Binary files a/src/Android/Resources/drawable/cog.png and b/src/Android/Resources/drawable/cog.png differ diff --git a/src/Android/Resources/drawable/lock.png b/src/Android/Resources/drawable/lock.png index 45538ef5ac..e286cf31b6 100644 Binary files a/src/Android/Resources/drawable/lock.png and b/src/Android/Resources/drawable/lock.png differ diff --git a/src/Android/Resources/drawable/refresh.png b/src/Android/Resources/drawable/refresh.png index ad666bce04..1e4912d4f3 100644 Binary files a/src/Android/Resources/drawable/refresh.png and b/src/Android/Resources/drawable/refresh.png differ diff --git a/src/Android/Resources/values/dimens.xml b/src/Android/Resources/values/dimens.xml new file mode 100644 index 0000000000..cff37d6db1 --- /dev/null +++ b/src/Android/Resources/values/dimens.xml @@ -0,0 +1,5 @@ + + + 15sp + 15sp + diff --git a/src/App/Effect/TabBarEffect.cs b/src/App/Effect/TabBarEffect.cs new file mode 100644 index 0000000000..28e7c278d4 --- /dev/null +++ b/src/App/Effect/TabBarEffect.cs @@ -0,0 +1,11 @@ +using Xamarin.Forms; + +namespace Bit.App.Effect +{ + public class TabBarEffect : RoutingEffect + { + public TabBarEffect() + : base("Bitwarden.TabBarEffect") + { } + } +} diff --git a/src/App/Pages/TabsPage.cs b/src/App/Pages/TabsPage.cs index e1bf67822e..575ee8a55a 100644 --- a/src/App/Pages/TabsPage.cs +++ b/src/App/Pages/TabsPage.cs @@ -1,4 +1,5 @@ -using Bit.App.Resources; +using Bit.App.Effect; +using Bit.App.Resources; using Xamarin.Forms; namespace Bit.App.Pages @@ -24,18 +25,23 @@ namespace Bit.App.Pages var settingsPage = new NavigationPage(new SettingsPage()) { Title = AppResources.Settings, - Icon = "cogs.png" + Icon = "cog.png" }; Children.Add(settingsPage); - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetToolbarPlacement(this, - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.ToolbarPlacement.Bottom); - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetIsSwipePagingEnabled(this, false); - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetIsSmoothScrollEnabled(this, false); - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetBarSelectedItemColor(this, - (Color)Application.Current.Resources["TabBarSelectedItemColor"]); - Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetBarItemColor(this, - (Color)Application.Current.Resources["TabBarItemColor"]); + if(Device.RuntimePlatform == Device.Android) + { + Effects.Add(new TabBarEffect()); + + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetToolbarPlacement(this, + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.ToolbarPlacement.Bottom); + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetIsSwipePagingEnabled(this, false); + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetIsSmoothScrollEnabled(this, false); + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetBarSelectedItemColor(this, + (Color)Application.Current.Resources["TabBarSelectedItemColor"]); + Xamarin.Forms.PlatformConfiguration.AndroidSpecific.TabbedPage.SetBarItemColor(this, + (Color)Application.Current.Resources["TabBarItemColor"]); + } } protected async override void OnCurrentPageChanged()