mirror of
https://github.com/bitwarden/mobile
synced 2026-01-14 06:23:41 +00:00
PM-3349 PM-3350 MAUI Migration Initial
This commit is contained in:
@@ -4,8 +4,6 @@ using Bit.App.Controls;
|
||||
using Bit.Core.Abstractions;
|
||||
using Bit.Core.Utilities;
|
||||
using UIKit;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Platform.iOS;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
@@ -69,21 +67,22 @@ namespace Bit.iOS.Core.Utilities
|
||||
overlay.BindingContext = vm;
|
||||
overlay.IsVisible = false;
|
||||
|
||||
var renderer = Platform.CreateRenderer(overlay.Content);
|
||||
renderer.SetElementSize(new Size(containerView.Frame.Size.Width, containerView.Frame.Size.Height));
|
||||
// TODO: [MAUI-Migration] [Critical] check how to create a native view here.
|
||||
//var renderer = Platform.CreateRenderer(overlay.Content);
|
||||
//renderer.SetElementSize(new Size(containerView.Frame.Size.Width, containerView.Frame.Size.Height));
|
||||
|
||||
var view = renderer.NativeView;
|
||||
view.TranslatesAutoresizingMaskIntoConstraints = false;
|
||||
//var view = renderer.NativeView;
|
||||
//view.TranslatesAutoresizingMaskIntoConstraints = false;
|
||||
|
||||
containerView.AddSubview(view);
|
||||
containerView.AddConstraints(new NSLayoutConstraint[]
|
||||
{
|
||||
NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Trailing, NSLayoutRelation.Equal, view, NSLayoutAttribute.Trailing, 1f, 0f),
|
||||
NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Leading, NSLayoutRelation.Equal, view, NSLayoutAttribute.Leading, 1f, 0f),
|
||||
NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Top, NSLayoutRelation.Equal, view, NSLayoutAttribute.Top, 1f, 0f),
|
||||
NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Bottom, NSLayoutRelation.Equal, view, NSLayoutAttribute.Bottom, 1f, 0f)
|
||||
});
|
||||
containerView.Hidden = true;
|
||||
//containerView.AddSubview(view);
|
||||
//containerView.AddConstraints(new NSLayoutConstraint[]
|
||||
//{
|
||||
// NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Trailing, NSLayoutRelation.Equal, view, NSLayoutAttribute.Trailing, 1f, 0f),
|
||||
// NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Leading, NSLayoutRelation.Equal, view, NSLayoutAttribute.Leading, 1f, 0f),
|
||||
// NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Top, NSLayoutRelation.Equal, view, NSLayoutAttribute.Top, 1f, 0f),
|
||||
// NSLayoutConstraint.Create(containerView, NSLayoutAttribute.Bottom, NSLayoutRelation.Equal, view, NSLayoutAttribute.Bottom, 1f, 0f)
|
||||
//});
|
||||
//containerView.Hidden = true;
|
||||
|
||||
return overlay;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using UIKit;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Internals;
|
||||
using Xamarin.Forms.Platform.iOS;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
public static class FontElementExtensions
|
||||
{
|
||||
public static UIFont ToUIFont(this IFontElement fontElement)
|
||||
// TODO: [MAUI-Migration] [Critical] Compiling but big untested change
|
||||
|
||||
public static UIFont ToUIFont(this Microsoft.Maui.Font font)
|
||||
{
|
||||
var fontSize = fontElement.FontSize;
|
||||
var fontAttributes = fontElement.FontAttributes;
|
||||
var fontFamily = fontElement.FontFamily;
|
||||
var fontSize = font.Size;
|
||||
var fontAttributes = font.GetFontAttributes();
|
||||
var fontFamily = font.Family;
|
||||
var fontWeight = fontAttributes == FontAttributes.Bold ? UIFontWeight.Bold : UIFontWeight.Regular;
|
||||
|
||||
return fontFamily is null
|
||||
? Font.SystemFontOfSize(fontSize, fontAttributes).ToUIFont()
|
||||
: Font.OfSize(fontFamily, fontSize).WithAttributes(fontAttributes).ToUIFont();
|
||||
? UIFont.SystemFontOfSize((nfloat)fontSize, fontWeight)
|
||||
: UIFont.FromName(fontFamily, (nfloat)fontSize);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,8 @@
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Bit.Core.Services;
|
||||
using Microsoft.Maui.Controls.Compatibility.Platform.iOS;
|
||||
using UIKit;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Platform.iOS;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
@@ -21,7 +20,7 @@ namespace Bit.iOS.Core.Utilities
|
||||
return null;
|
||||
}
|
||||
|
||||
var handler = Xamarin.Forms.Internals.Registrar.Registered.GetHandlerForObject<IImageSourceHandler>(source);
|
||||
var handler = Microsoft.Maui.Controls.Internals.Registrar.Registered.GetHandlerForObject<IImageSourceHandler>(source);
|
||||
if (handler == null)
|
||||
{
|
||||
LoggerHelper.LogEvenIfCantBeResolved(new InvalidOperationException("GetNativeImageAsync failed cause IImageSourceHandler couldn't be found"));
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using Bit.App.Utilities;
|
||||
using Microsoft.Maui.Controls.Compatibility.Platform.iOS;
|
||||
using UIKit;
|
||||
using Xamarin.Forms.Platform.iOS;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
@@ -75,8 +75,8 @@ namespace Bit.iOS.Core.Utilities
|
||||
|
||||
public static UIFont GetDangerFont()
|
||||
{
|
||||
return Xamarin.Forms.Font.SystemFontOfSize(Xamarin.Forms.NamedSize.Small,
|
||||
Xamarin.Forms.FontAttributes.Bold).ToUIFont();
|
||||
// TODO: [MAUI-Migration] [Deprecated] NamedSizes are deprecated on MAUI
|
||||
return Microsoft.Maui.Font.SystemFontOfSize(Device.GetNamedSize(NamedSize.Small, typeof(UILabel)), FontWeight.Bold).ToUIFont();
|
||||
}
|
||||
|
||||
private static void SetThemeVariables(string theme, bool osDarkModeEnabled)
|
||||
|
||||
@@ -5,7 +5,7 @@ using Bit.App.Abstractions;
|
||||
using Bit.App.Controls;
|
||||
using Bit.App.Models;
|
||||
using Bit.App.Pages;
|
||||
using Bit.App.Resources;
|
||||
using Bit.Core.Resources.Localization;
|
||||
using Bit.App.Services;
|
||||
using Bit.App.Utilities;
|
||||
using Bit.App.Utilities.AccountManagement;
|
||||
@@ -17,7 +17,6 @@ using Bit.iOS.Core.Services;
|
||||
using CoreNFC;
|
||||
using Foundation;
|
||||
using UIKit;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
@@ -36,8 +35,6 @@ namespace Bit.iOS.Core.Utilities
|
||||
out IAccountsManager accountsManager)
|
||||
where T : UIViewController, IAccountsManagerHost
|
||||
{
|
||||
Forms.Init();
|
||||
|
||||
if (ServiceContainer.RegisteredServices.Count > 0)
|
||||
{
|
||||
ServiceContainer.Reset();
|
||||
@@ -106,7 +103,7 @@ namespace Bit.iOS.Core.Utilities
|
||||
var storageMediatorService = new StorageMediatorService(mobileStorageService, secureStorageService, preferencesStorage);
|
||||
var stateService = new StateService(mobileStorageService, secureStorageService, storageMediatorService, messagingService);
|
||||
var stateMigrationService =
|
||||
new StateMigrationService(DeviceType.iOS, liteDbStorage, preferencesStorage, secureStorageService);
|
||||
new StateMigrationService(Bit.Core.Enums.DeviceType.iOS, liteDbStorage, preferencesStorage, secureStorageService);
|
||||
var deviceActionService = new DeviceActionService();
|
||||
var fileService = new FileService(stateService, messagingService);
|
||||
var clipboardService = new ClipboardService(stateService);
|
||||
|
||||
@@ -2,9 +2,8 @@
|
||||
using System.Runtime.InteropServices;
|
||||
using Bit.App.Utilities;
|
||||
using Bit.Core.Services;
|
||||
using Microsoft.Maui.Controls.Compatibility.Platform.iOS;
|
||||
using UIKit;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Platform.iOS;
|
||||
|
||||
namespace Bit.iOS.Core.Utilities
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user