diff --git a/src/Android/Android.csproj b/src/Android/Android.csproj index 2f20f1023..2ff745b0b 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 000000000..4470b81ea --- /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 f2d698044..1022e8a5c 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 96882cc76..d232ddadb 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 799c59138..b657d53bc 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 e3ea7ef11..3b2eb9b46 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 527a6aa93..ef416be94 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 55045f2af..f123db822 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 4d8528079..7fc6196d8 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 033949599..6ea13d942 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 05af7189f..4e2e77c15 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 31265c855..c89e6cfcf 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 c7cc70ffb..adbf0adb9 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 578f36c07..920d9fa5b 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 2200c139a..02dd33420 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 45538ef5a..e286cf31b 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 ad666bce0..1e4912d4f 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 000000000..cff37d6db --- /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 000000000..28e7c278d --- /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 e1bf67822..575ee8a55 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()