diff --git a/src/Android/Android.csproj b/src/Android/Android.csproj index c6aad805e..dd238eb26 100644 --- a/src/Android/Android.csproj +++ b/src/Android/Android.csproj @@ -91,6 +91,22 @@ ..\..\packages\BouncyCastle.1.8.1\lib\BouncyCastle.Crypto.dll True + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\MonoAndroid10\FFImageLoading.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.Forms.2.2.8\lib\MonoAndroid10\FFImageLoading.Forms.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.Forms.2.2.8\lib\MonoAndroid10\FFImageLoading.Forms.Droid.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\MonoAndroid10\FFImageLoading.Platform.dll + True + ..\..\packages\Xamarin.Forms.2.3.3.180\lib\MonoAndroid10\FormsViewGroup.dll True diff --git a/src/Android/MainApplication.cs b/src/Android/MainApplication.cs index aee406656..8357804bf 100644 --- a/src/Android/MainApplication.cs +++ b/src/Android/MainApplication.cs @@ -20,6 +20,7 @@ using XLabs.Ioc.Unity; using System.Threading.Tasks; using Plugin.Settings.Abstractions; using Xamarin.Android.Net; +using FFImageLoading.Forms.Droid; namespace Bit.Android { @@ -232,6 +233,7 @@ namespace Bit.Android CrossPushNotification.Initialize(container.Resolve(), "962181367620"); container.RegisterInstance(CrossPushNotification.Current, new ContainerControlledLifetimeManager()); + CachedImageRenderer.Init(); Resolver.SetResolver(new UnityResolver(container)); CrossFingerprint.SetCurrentActivityResolver(() => CrossCurrentActivity.Current.Activity); diff --git a/src/Android/packages.config b/src/Android/packages.config index 8804fed5e..ae60bb007 100644 --- a/src/Android/packages.config +++ b/src/Android/packages.config @@ -36,6 +36,8 @@ + + diff --git a/src/App/App.csproj b/src/App/App.csproj index 03b24fe92..fdcb8b5cb 100644 --- a/src/App/App.csproj +++ b/src/App/App.csproj @@ -260,6 +260,18 @@ ..\..\packages\Acr.UserDialogs.6.3.3\lib\portable-win+net45+wp8+win8+wpa81\Acr.UserDialogs.Interface.dll True + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\portable-net45+win8+wpa81+wp8\FFImageLoading.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.Forms.2.2.8\lib\portable-net45+win8+wpa81+wp8\FFImageLoading.Forms.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\portable-net45+win8+wpa81+wp8\FFImageLoading.Platform.dll + True + ..\..\packages\HockeySDK.Xamarin.4.1.0\lib\portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\HockeySDK.dll True diff --git a/src/App/Controls/FormEntryCell.cs b/src/App/Controls/FormEntryCell.cs index 368490417..c4a869a1f 100644 --- a/src/App/Controls/FormEntryCell.cs +++ b/src/App/Controls/FormEntryCell.cs @@ -1,4 +1,5 @@ using Bit.App.Abstractions; +using FFImageLoading.Forms; using System; using Xamarin.Forms; using XLabs.Ioc; @@ -67,11 +68,13 @@ namespace Bit.App.Controls { _tgr = new TapGestureRecognizer(); - var theImage = new Image + var theImage = new CachedImage { Source = imageSource, HorizontalOptions = LayoutOptions.Start, - VerticalOptions = LayoutOptions.Center + VerticalOptions = LayoutOptions.Center, + WidthRequest = 18, + HeightRequest = 18 }; theImage.GestureRecognizers.Add(_tgr); diff --git a/src/App/Pages/HomePage.cs b/src/App/Pages/HomePage.cs index ee5306a96..4ea00d4da 100644 --- a/src/App/Pages/HomePage.cs +++ b/src/App/Pages/HomePage.cs @@ -7,6 +7,7 @@ using Xamarin.Forms; using XLabs.Ioc; using Plugin.Settings.Abstractions; using Bit.App.Controls; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -30,11 +31,13 @@ namespace Bit.App.Pages { MessagingCenter.Send(Application.Current, "ShowStatusBar", false); - var logo = new Image + var logo = new CachedImage { Source = "logo", VerticalOptions = LayoutOptions.CenterAndExpand, - HorizontalOptions = LayoutOptions.Center + HorizontalOptions = LayoutOptions.Center, + WidthRequest = 282, + HeightRequest = 44 }; var message = new Label diff --git a/src/App/Pages/Settings/SettingsAboutPage.cs b/src/App/Pages/Settings/SettingsAboutPage.cs index 22d098867..c01ef86f6 100644 --- a/src/App/Pages/Settings/SettingsAboutPage.cs +++ b/src/App/Pages/Settings/SettingsAboutPage.cs @@ -4,6 +4,7 @@ using Xamarin.Forms; using Bit.App.Abstractions; using XLabs.Ioc; using Bit.App.Resources; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -19,10 +20,12 @@ namespace Bit.App.Pages public void Init() { - var logo = new Image + var logo = new CachedImage { Source = "logo", - HorizontalOptions = LayoutOptions.Center + HorizontalOptions = LayoutOptions.Center, + WidthRequest = 282, + HeightRequest = 44 }; var versionLabel = new Label diff --git a/src/App/Pages/Tools/ToolsAutofillServicePage.cs b/src/App/Pages/Tools/ToolsAutofillServicePage.cs index 52a425b7b..887bfbeaf 100644 --- a/src/App/Pages/Tools/ToolsAutofillServicePage.cs +++ b/src/App/Pages/Tools/ToolsAutofillServicePage.cs @@ -4,6 +4,7 @@ using Xamarin.Forms; using XLabs.Ioc; using Bit.App.Abstractions; using Bit.App.Resources; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -74,7 +75,7 @@ namespace Bit.App.Pages TextColor = Color.Black }; - var step1Image = new Image + var step1Image = new CachedImage { Source = "accessibility_step1", HorizontalOptions = LayoutOptions.Center, @@ -92,7 +93,7 @@ namespace Bit.App.Pages TextColor = Color.Black }; - var step2Image = new Image + var step2Image = new CachedImage { Source = "accessibility_step2", HorizontalOptions = LayoutOptions.Center, @@ -119,7 +120,7 @@ namespace Bit.App.Pages TextColor = Color.Black }; - var tapNotificationImage = new Image + var tapNotificationImage = new CachedImage { Source = "accessibility_notification", HorizontalOptions = LayoutOptions.Center, @@ -128,7 +129,7 @@ namespace Bit.App.Pages HeightRequest = 74 }; - var tapNotificationIcon = new Image + var tapNotificationIcon = new CachedImage { Source = "accessibility_notification_icon", HorizontalOptions = LayoutOptions.Center, diff --git a/src/App/Pages/Tools/ToolsExtensionPage.cs b/src/App/Pages/Tools/ToolsExtensionPage.cs index fcecaab26..5e23893f4 100644 --- a/src/App/Pages/Tools/ToolsExtensionPage.cs +++ b/src/App/Pages/Tools/ToolsExtensionPage.cs @@ -8,6 +8,7 @@ using Xamarin.Forms; using XLabs.Ioc; using Bit.App.Abstractions; using Bit.App.Resources; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -52,12 +53,14 @@ namespace Bit.App.Pages LineBreakMode = LineBreakMode.WordWrap }; - var notStartedImage = new Image + var notStartedImage = new CachedImage { Source = "ext-more", VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.Center, - Margin = new Thickness(0, -10, 0, 0) + Margin = new Thickness(0, -10, 0, 0), + WidthRequest = 290, + HeightRequest = 252 }; var notStartedButton = new ExtendedButton @@ -101,12 +104,14 @@ namespace Bit.App.Pages LineBreakMode = LineBreakMode.WordWrap }; - var notActivatedImage = new Image + var notActivatedImage = new CachedImage { Source = "ext-act", VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.Center, - Margin = new Thickness(0, -10, 0, 0) + Margin = new Thickness(0, -10, 0, 0), + WidthRequest = 290, + HeightRequest = 252 }; var notActivatedButton = new ExtendedButton @@ -151,12 +156,14 @@ namespace Bit.App.Pages Margin = new Thickness(0, 10, 0, 0) }; - var activatedImage = new Image + var activatedImage = new CachedImage { Source = "ext-use", VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.Center, - Margin = new Thickness(0, -10, 0, 0) + Margin = new Thickness(0, -10, 0, 0), + WidthRequest = 290, + HeightRequest = 252 }; var activatedButton = new ExtendedButton diff --git a/src/App/Pages/Tools/ToolsPage.cs b/src/App/Pages/Tools/ToolsPage.cs index a5a1080fe..e447c3127 100644 --- a/src/App/Pages/Tools/ToolsPage.cs +++ b/src/App/Pages/Tools/ToolsPage.cs @@ -6,6 +6,7 @@ using Bit.App.Controls; using Bit.App.Resources; using Xamarin.Forms; using XLabs.Ioc; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -127,9 +128,11 @@ namespace Bit.App.Pages Text = detailText }; - var image = new Image + var image = new CachedImage { - Source = imageSource + Source = imageSource, + WidthRequest = 44, + HeightRequest = 44 }; var grid = new Grid diff --git a/src/App/Pages/Vault/VaultListLoginsPage.cs b/src/App/Pages/Vault/VaultListLoginsPage.cs index 3907cab1b..4246297cc 100644 --- a/src/App/Pages/Vault/VaultListLoginsPage.cs +++ b/src/App/Pages/Vault/VaultListLoginsPage.cs @@ -14,6 +14,7 @@ using Plugin.Settings.Abstractions; using Plugin.Connectivity.Abstractions; using System.Collections.Generic; using System.Threading; +using FFImageLoading.Forms; namespace Bit.App.Pages { @@ -490,7 +491,7 @@ namespace Bit.App.Pages { public VaultListHeaderViewCell(VaultListLoginsPage page) { - var image = new Image + var image = new CachedImage { Source = "folder", WidthRequest = 18, diff --git a/src/App/packages.config b/src/App/packages.config index 762576557..8496f4a0b 100644 --- a/src/App/packages.config +++ b/src/App/packages.config @@ -21,6 +21,8 @@ + + \ No newline at end of file diff --git a/src/iOS/AppDelegate.cs b/src/iOS/AppDelegate.cs index 1c9fd7fa8..63cba7cfc 100644 --- a/src/iOS/AppDelegate.cs +++ b/src/iOS/AppDelegate.cs @@ -25,6 +25,7 @@ using Bit.App.Pages; using HockeyApp.iOS; using Bit.iOS.Core; using Google.Analytics; +using FFImageLoading.Forms.Touch; namespace Bit.iOS { @@ -288,6 +289,7 @@ namespace Bit.iOS CrossPushNotification.Initialize(container.Resolve()); container.RegisterInstance(CrossPushNotification.Current, new ContainerControlledLifetimeManager()); + CachedImageRenderer.Init(); Resolver.SetResolver(new UnityResolver(container)); } diff --git a/src/iOS/iOS.csproj b/src/iOS/iOS.csproj index 7b0cb1208..7392772b9 100644 --- a/src/iOS/iOS.csproj +++ b/src/iOS/iOS.csproj @@ -272,6 +272,22 @@ ..\..\packages\BTProgressHUD.1.2.0.3\lib\Xamarin.iOS10\BTProgressHUD.dll True + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\Xamarin.iOS10\FFImageLoading.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.Forms.2.2.8\lib\Xamarin.iOS10\FFImageLoading.Forms.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.Forms.2.2.8\lib\Xamarin.iOS10\FFImageLoading.Forms.Touch.dll + True + + + ..\..\packages\Xamarin.FFImageLoading.2.2.8\lib\Xamarin.iOS10\FFImageLoading.Platform.dll + True + ..\..\packages\Xamarin.Google.iOS.Analytics.3.17.0\lib\Xamarin.iOS10\Google.Analytics.dll True @@ -374,6 +390,10 @@ ..\..\packages\Validation.2.3.7\lib\dotnet\Validation.dll True + + ..\..\packages\WebP.Touch.1.0.2\lib\Xamarin.iOS10\WebP.Touch.dll + True + ..\..\packages\Xamarin.Forms.2.3.3.180\lib\Xamarin.iOS10\Xamarin.Forms.Core.dll True diff --git a/src/iOS/packages.config b/src/iOS/packages.config index f884d0303..b8e44b662 100644 --- a/src/iOS/packages.config +++ b/src/iOS/packages.config @@ -21,10 +21,13 @@ + + +