diff --git a/bitwarden-mobile.sln b/bitwarden-mobile.sln
index 4668db146..50568a8ed 100644
--- a/bitwarden-mobile.sln
+++ b/bitwarden-mobile.sln
@@ -11,10 +11,22 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iOS.Core", "src\iOS.Core\iO
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iOS.Autofill", "src\iOS.Autofill\iOS.Autofill.csproj", "{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iOS.Extension", "src\iOS.Extension\iOS.Extension.csproj", "{324BE76C-38FA-4F11-8BB1-95C7B3B1B545}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iOS.ShareExtension", "src\iOS.ShareExtension\iOS.ShareExtension.csproj", "{F8C3F648-EA5A-4719-8005-85D1690B1655}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
+ Debug|iPhoneSimulator = Debug|iPhoneSimulator
+ Release|iPhoneSimulator = Release|iPhoneSimulator
+ Debug|iPhone = Debug|iPhone
+ Release|iPhone = Release|iPhone
+ AppStore|iPhoneSimulator = AppStore|iPhoneSimulator
+ AppStore|iPhone = AppStore|iPhone
+ Ad-Hoc|iPhoneSimulator = Ad-Hoc|iPhoneSimulator
+ Ad-Hoc|iPhone = Ad-Hoc|iPhone
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{971FDF07-E288-4239-B47A-E9E7E912193B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
@@ -23,19 +35,123 @@ Global
{971FDF07-E288-4239-B47A-E9E7E912193B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{971FDF07-E288-4239-B47A-E9E7E912193B}.Release|Any CPU.Build.0 = Release|Any CPU
{971FDF07-E288-4239-B47A-E9E7E912193B}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Release|iPhone.Build.0 = Release|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.AppStore|iPhone.Build.0 = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
+ {971FDF07-E288-4239-B47A-E9E7E912193B}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
{11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Release|iPhone.Build.0 = Release|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.AppStore|iPhone.Build.0 = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
+ {11DBC05E-F8B4-49ED-AAC9-96D92336D21C}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
{E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E71F3053-056C-4381-9638-048ED73BDFF6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E71F3053-056C-4381-9638-048ED73BDFF6}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Release|iPhone.Build.0 = Release|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.AppStore|iPhone.Build.0 = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
+ {E71F3053-056C-4381-9638-048ED73BDFF6}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|Any CPU.Build.0 = Release|Any CPU
{8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Release|iPhone.Build.0 = Release|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.AppStore|iPhone.Build.0 = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
+ {8A3ECD75-3EC8-4CB3-B3A2-A73A724C279A}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|Any CPU.Build.0 = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Release|iPhone.Build.0 = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.AppStore|iPhone.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.AppStore|iPhone.Build.0 = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
+ {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Release|iPhone.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.AppStore|iPhone.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.AppStore|iPhone.Build.0 = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
+ {F8C3F648-EA5A-4719-8005-85D1690B1655}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/App/App.csproj b/src/App/App.csproj
index d1a7ea654..9fc55a2ae 100644
--- a/src/App/App.csproj
+++ b/src/App/App.csproj
@@ -53,12 +53,13 @@
false
iossimulator-arm64
+
Automatic
iPhone Developer
Platforms\iOS\Entitlements.plist
all
None
- -gcc_flags "-L$(ProjectDir)../../lib/ios -largon2 -force_load $(ProjectDir)../../lib/ios/libargon2.a"
+
false
@@ -230,6 +231,14 @@
true
false
+
+ true
+ false
+
+
+ true
+ false
+
diff --git a/src/App/Platforms/Android/Services/CryptoPrimitiveService.cs b/src/App/Platforms/Android/Services/CryptoPrimitiveService.cs
index 5dec269fe..82f8c2038 100644
--- a/src/App/Platforms/Android/Services/CryptoPrimitiveService.cs
+++ b/src/App/Platforms/Android/Services/CryptoPrimitiveService.cs
@@ -41,13 +41,13 @@ namespace Bit.Droid.Services
JavaSystem.LoadLibrary("argon2");
int keySize = 32;
var key = new byte[keySize];
- argon2id_hash_raw(iterations, memory, parallelism,
- password, password.Length, salt, salt.Length, key, key.Length);
+ //argon2id_hash_raw(iterations, memory, parallelism,
+ // password, password.Length, salt, salt.Length, key, key.Length);
return key;
}
- [DllImport("argon2", EntryPoint = "argon2id_hash_raw")]
- private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism,
- byte[] pwd, int pwdlen, byte[] salt, int saltlen, byte[] hash, int hashlen);
+ //[DllImport("argon2", EntryPoint = "argon2id_hash_raw")]
+ //private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism,
+ // byte[] pwd, int pwdlen, byte[] salt, int saltlen, byte[] hash, int hashlen);
}
}
diff --git a/src/Core/Pages/Send/SendAddEditPageViewModel.cs b/src/Core/Pages/Send/SendAddEditPageViewModel.cs
index 945e7f24a..81dc6b199 100644
--- a/src/Core/Pages/Send/SendAddEditPageViewModel.cs
+++ b/src/Core/Pages/Send/SendAddEditPageViewModel.cs
@@ -194,7 +194,7 @@ namespace Bit.App.Pages
get => _fileName ?? AppResources.NoFileChosen;
set
{
- if (SetProperty(ref _fileName, value))
+ if (SetProperty(ref _fileName, value) && Send?.File != null)
{
Send.File.FileName = _fileName;
}
@@ -528,7 +528,7 @@ namespace Bit.App.Pages
public void ToggleOptions()
{
- ShowOptions = !ShowOptions;
+ MainThread.BeginInvokeOnMainThread(() => ShowOptions = !ShowOptions);
}
private void DeletionTypeChanged()
diff --git a/src/Core/Pages/Send/SendAddOnlyPage.xaml b/src/Core/Pages/Send/SendAddOnlyPage.xaml
index 28827a31f..5f84a8eaa 100644
--- a/src/Core/Pages/Send/SendAddOnlyPage.xaml
+++ b/src/Core/Pages/Send/SendAddOnlyPage.xaml
@@ -1,4 +1,4 @@
-
+
@@ -148,8 +148,8 @@
@@ -158,10 +158,12 @@
Text="{u:I18n Options}"
TextColor="{DynamicResource PrimaryColor}"
Margin="0,0,5,0"
+ InputTransparent="True"
AutomationProperties.IsInAccessibleTree="False"/>
diff --git a/src/Core/Pages/Send/SendAddOnlyPage.xaml.cs b/src/Core/Pages/Send/SendAddOnlyPage.xaml.cs
index 6c3a08fca..75401f4db 100644
--- a/src/Core/Pages/Send/SendAddOnlyPage.xaml.cs
+++ b/src/Core/Pages/Send/SendAddOnlyPage.xaml.cs
@@ -1,12 +1,8 @@
-using System;
-using System.Threading.Tasks;
-using Bit.App.Models;
+using Bit.App.Models;
using Bit.App.Utilities;
using Bit.Core.Abstractions;
using Bit.Core.Enums;
using Bit.Core.Utilities;
-using Microsoft.Maui.Controls;
-using Microsoft.Maui;
namespace Bit.App.Pages
{
@@ -53,10 +49,8 @@ namespace Bit.App.Pages
}
}
- protected override async void OnAppearing()
+ protected override async void OnNavigatedTo(NavigatedToEventArgs args)
{
- base.OnAppearing();
-
try
{
if (!await AppHelpers.IsVaultTimeoutImmediateAsync())
@@ -92,9 +86,10 @@ namespace Bit.App.Pages
}
}
- protected override void OnDisappearing()
+
+ protected override void OnNavigatingFrom(NavigatingFromEventArgs args)
{
- base.OnDisappearing();
+ base.OnNavigatingFrom(args);
_accountAvatar?.OnDisappearing();
}
diff --git a/src/iOS.Autofill/iOS.Autofill.csproj b/src/iOS.Autofill/iOS.Autofill.csproj
index 68e88b8bf..1eba63baf 100644
--- a/src/iOS.Autofill/iOS.Autofill.csproj
+++ b/src/iOS.Autofill/iOS.Autofill.csproj
@@ -21,12 +21,13 @@
false
iossimulator-arm64
+
Automatic
iPhone Developer
Entitlements.plist
all
None
- -gcc_flags "-L$(ProjectDir)../../lib/ios -largon2 -force_load $(ProjectDir)../../lib/ios/libargon2.a"
+
false
diff --git a/src/iOS.Core/Services/CryptoPrimitiveService.cs b/src/iOS.Core/Services/CryptoPrimitiveService.cs
index f1047f00a..96d4c00f3 100644
--- a/src/iOS.Core/Services/CryptoPrimitiveService.cs
+++ b/src/iOS.Core/Services/CryptoPrimitiveService.cs
@@ -48,8 +48,8 @@ namespace Bit.iOS.Core.Services
var passwordData = NSData.FromArray(password);
var saltData = NSData.FromArray(salt);
- argon2id_hash_raw(iterations, memory, parallelism, passwordData.Bytes, passwordData.Length,
- saltData.Bytes, saltData.Length, keyData.MutableBytes, keyData.Length);
+ //argon2id_hash_raw(iterations, memory, parallelism, passwordData.Bytes, passwordData.Length,
+ // saltData.Bytes, saltData.Length, keyData.MutableBytes, keyData.Length);
var keyBytes = new byte[keyData.Length];
Marshal.Copy(keyData.Bytes, keyBytes, 0, Convert.ToInt32(keyData.Length));
@@ -61,8 +61,8 @@ namespace Bit.iOS.Core.Services
private static extern int CCKeyCerivationPBKDF(uint algorithm, IntPtr password, nuint passwordLen,
IntPtr salt, nuint saltLen, uint prf, nuint rounds, IntPtr derivedKey, nuint derivedKeyLength);
- [DllImport("__Internal", EntryPoint = "argon2id_hash_raw")]
- private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism, IntPtr pwd,
- nuint pwdlen, IntPtr salt, nuint saltlen, IntPtr hash, nuint hashlen);
+ //[DllImport("__Internal", EntryPoint = "argon2id_hash_raw")]
+ //private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism, IntPtr pwd,
+ // nuint pwdlen, IntPtr salt, nuint saltlen, IntPtr hash, nuint hashlen);
}
}
diff --git a/src/iOS.Extension/LoadingViewController.cs b/src/iOS.Extension/LoadingViewController.cs
index 3c05b7c98..f8a8060e0 100644
--- a/src/iOS.Extension/LoadingViewController.cs
+++ b/src/iOS.Extension/LoadingViewController.cs
@@ -1,30 +1,32 @@
-using AuthenticationServices;
-using System;
-using System.Diagnostics;
-using Foundation;
-using UIKit;
-using Bit.iOS.Core;
-using Bit.iOS.Extension.Models;
-using MobileCoreServices;
-using Bit.iOS.Core.Utilities;
-using Bit.iOS.Core.Controllers;
+using System;
using System.Collections.Generic;
+using System.Diagnostics;
using System.Threading.Tasks;
-using Bit.iOS.Core.Models;
-using Bit.Core.Utilities;
-using Bit.Core.Abstractions;
+using AuthenticationServices;
using Bit.App.Abstractions;
-using CoreNFC;
-using Xamarin.Forms;
-using Bit.App.Pages;
using Bit.App.Models;
+using Bit.App.Pages;
using Bit.App.Utilities;
-using Bit.iOS.Core.Views;
+using Bit.Core.Abstractions;
using Bit.Core.Enums;
+using Bit.Core.Services;
+using Bit.Core.Utilities;
+using Bit.iOS.Core;
+using Bit.iOS.Core.Controllers;
+using Bit.iOS.Core.Models;
+using Bit.iOS.Core.Utilities;
+using Bit.iOS.Core.Views;
+using Bit.iOS.Extension.Models;
+using CoreNFC;
+using Foundation;
+using Microsoft.Maui.Controls;
+using Microsoft.Maui.Platform;
+using MobileCoreServices;
+using UIKit;
namespace Bit.iOS.Extension
{
- public partial class LoadingViewController : ExtendedUIViewController
+ public partial class LoadingViewController : UIViewController
{
private Context _context = new Context();
private NFCNdefReaderSession _nfcSession = null;
@@ -36,56 +38,70 @@ namespace Bit.iOS.Extension
public override void ViewDidLoad()
{
- InitApp();
- base.ViewDidLoad();
- Logo.Image = new UIImage(ThemeHelpers.LightTheme ? "logo.png" : "logo_white.png");
- View.BackgroundColor = ThemeHelpers.SplashBackgroundColor;
- _context.ExtContext = ExtensionContext;
- foreach (var item in ExtensionContext.InputItems)
+ try
{
- var processed = false;
- foreach (var itemProvider in item.Attachments)
+ InitApp();
+ base.ViewDidLoad();
+ Logo.Image = new UIImage(ThemeHelpers.LightTheme ? "logo.png" : "logo_white.png");
+ View.BackgroundColor = ThemeHelpers.SplashBackgroundColor;
+ _context.ExtContext = ExtensionContext;
+ foreach (var item in ExtensionContext.InputItems)
{
- if (ProcessWebUrlProvider(itemProvider)
- || ProcessFindLoginProvider(itemProvider)
- || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionFillBrowserAction)
- || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionFillWebViewAction)
- || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionUrl)
- || ProcessSaveLoginProvider(itemProvider)
- || ProcessChangePasswordProvider(itemProvider)
- || ProcessExtensionSetupProvider(itemProvider))
+ var processed = false;
+ foreach (var itemProvider in item.Attachments)
+ {
+ if (ProcessWebUrlProvider(itemProvider)
+ || ProcessFindLoginProvider(itemProvider)
+ || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionFillBrowserAction)
+ || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionFillWebViewAction)
+ || ProcessFindLoginBrowserProvider(itemProvider, Constants.UTTypeAppExtensionUrl)
+ || ProcessSaveLoginProvider(itemProvider)
+ || ProcessChangePasswordProvider(itemProvider)
+ || ProcessExtensionSetupProvider(itemProvider))
+ {
+ processed = true;
+ break;
+ }
+ }
+ if (processed)
{
- processed = true;
break;
}
}
- if (processed)
- {
- break;
- }
+ }
+ catch (Exception ex)
+ {
+ LoggerHelper.LogEvenIfCantBeResolved(ex);
}
}
public override async void ViewDidAppear(bool animated)
{
- base.ViewDidAppear(animated);
- if (_context.ProviderType == Constants.UTTypeAppExtensionSetup)
+ try
{
- PerformSegue("setupSegue", this);
- return;
+ base.ViewDidAppear(animated);
+ if (_context.ProviderType == Constants.UTTypeAppExtensionSetup)
+ {
+ PerformSegue("setupSegue", this);
+ return;
+ }
+ if (!await IsAuthed())
+ {
+ LaunchHomePage();
+ return;
+ }
+ else if (await IsLocked())
+ {
+ PerformSegue("lockPasswordSegue", this);
+ }
+ else
+ {
+ ContinueOn();
+ }
}
- if (!await IsAuthed())
+ catch (Exception ex)
{
- LaunchHomePage();
- return;
- }
- else if (await IsLocked())
- {
- PerformSegue("lockPasswordSegue", this);
- }
- else
- {
- ContinueOn();
+ LoggerHelper.LogEvenIfCantBeResolved(ex);
}
}
@@ -397,8 +413,8 @@ namespace Bit.iOS.Extension
private void InitApp()
{
- // Init Xamarin Forms
- Forms.Init();
+ // TODO: Change for iOSCoreHelpers.InitApp(...) when implementing IAccountsManager here
+ iOSCoreHelpers.SetupMaui();
if (ServiceContainer.RegisteredServices.Count > 0)
{
@@ -466,7 +482,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(homePage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
@@ -486,7 +502,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(environmentPage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
}
@@ -504,7 +520,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(registerPage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
}
@@ -527,7 +543,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(loginPage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
@@ -550,7 +566,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(loginWithDevicePage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
@@ -574,7 +590,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(loginPage);
- var loginController = navigationPage.CreateViewController();
+ var loginController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginController, true, null);
@@ -604,7 +620,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(twoFactorPage);
- var twoFactorController = navigationPage.CreateViewController();
+ var twoFactorController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
twoFactorController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(twoFactorController, true, null);
}
@@ -623,7 +639,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(setPasswordPage);
- var setPasswordController = navigationPage.CreateViewController();
+ var setPasswordController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
setPasswordController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(setPasswordController, true, null);
}
@@ -641,7 +657,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(updateTempPasswordPage);
- var updateTempPasswordController = navigationPage.CreateViewController();
+ var updateTempPasswordController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
updateTempPasswordController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(updateTempPasswordController, true, null);
}
@@ -660,7 +676,7 @@ namespace Bit.iOS.Extension
}
var navigationPage = new NavigationPage(loginApproveDevicePage);
- var loginApproveDeviceController = navigationPage.CreateViewController();
+ var loginApproveDeviceController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginApproveDeviceController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginApproveDeviceController, true, null);
}
diff --git a/src/iOS.Extension/LoginListViewController.cs b/src/iOS.Extension/LoginListViewController.cs
index b10280ec7..67c7bf300 100644
--- a/src/iOS.Extension/LoginListViewController.cs
+++ b/src/iOS.Extension/LoginListViewController.cs
@@ -1,16 +1,16 @@
using System;
using System.Linq;
+using Bit.App.Abstractions;
+using Bit.Core.Resources.Localization;
+using Bit.Core.Utilities;
+using Bit.iOS.Core;
+using Bit.iOS.Core.Controllers;
+using Bit.iOS.Core.Utilities;
+using Bit.iOS.Core.Views;
using Bit.iOS.Extension.Models;
using Foundation;
-using UIKit;
-using Bit.iOS.Core.Utilities;
-using Bit.iOS.Core;
using MobileCoreServices;
-using Bit.iOS.Core.Controllers;
-using Bit.App.Resources;
-using Bit.iOS.Core.Views;
-using Bit.App.Abstractions;
-using Bit.Core.Utilities;
+using UIKit;
namespace Bit.iOS.Extension
{
diff --git a/src/iOS.Extension/SetupViewController.cs b/src/iOS.Extension/SetupViewController.cs
index 284998e37..a7c41ff37 100644
--- a/src/iOS.Extension/SetupViewController.cs
+++ b/src/iOS.Extension/SetupViewController.cs
@@ -1,9 +1,9 @@
using System;
+using Bit.Core.Resources.Localization;
+using Bit.iOS.Core.Controllers;
+using Bit.iOS.Core.Utilities;
using Bit.iOS.Extension.Models;
using UIKit;
-using Bit.iOS.Core.Controllers;
-using Bit.App.Resources;
-using Bit.iOS.Core.Utilities;
namespace Bit.iOS.Extension
{
diff --git a/src/iOS.Extension/iOS.Extension.csproj b/src/iOS.Extension/iOS.Extension.csproj
index f28a8c468..a96d282ee 100644
--- a/src/iOS.Extension/iOS.Extension.csproj
+++ b/src/iOS.Extension/iOS.Extension.csproj
@@ -1,158 +1,42 @@
-
+
- Debug
- iPhoneSimulator
- {324BE76C-38FA-4F11-8BB1-95C7B3B1B545}
- {EE2C853D-36AF-4FDB-B1AD-8E90477E2198};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
- Exe
- Bit.iOS.Extension
- BitwardeniOSExtension
- Resources
- Properties
+ net8.0-ios
+ True
+ Library
+ com.8bit.bitwarden.find-login-action-extension
+ 1.0
+ 1
+
+ False
+
+ 11.0
+ Bit.iOS.Extension
-
- true
- full
- false
- bin\iPhoneSimulator\Debug
- DEBUG
- prompt
- 4
- false
- x86_64
- None
- true
- --nodevcodeshare --http-message-handler=NSUrlSessionHandler -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- NSUrlSessionHandler
- 9.3
- iPhone Developer
- Entitlements.plist
+
+
+ true
+ false
-
- none
- true
- bin\iPhoneSimulator\Release
- prompt
- 4
- Full
- x86_64
- false
- Entitlements.plist
- NSUrlSessionHandler
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- 9.3
- iPhone Developer
- Automatic
+
+
+ false
+ Automatic
+ iPhone Developer
+ Entitlements.plist
+ all
+ None
-
- true
- full
- false
- bin\iPhone\Debug
- DEBUG
- prompt
- 4
- false
- ARM64
- Entitlements.plist
- iPhone Developer
- true
- None
- NSUrlSessionHandler
- --nodevcodeshare --http-message-handler=NSUrlSessionHandler -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- 10.2
+
+ iossimulator-arm64
-
- none
- true
- bin\iPhone\Release
- prompt
- 4
- Entitlements.plist
- ARM64
- false
- iPhone Distribution
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- NSUrlSessionHandler
- Full
- Dist: Bitwarden Ext
+
+
+
-
-
-
-
- bin\iPhoneSimulator\AppStore\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- Full
- NSUrlSessionHandler
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- 9.3
- iPhone Distribution
- Dist: Bitwarden Ext
- Entitlements.plist
-
-
- bin\iPhone\AppStore\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- NSUrlSessionHandler
- ARM64
- Full
- 10.2
- iPhone Distribution
- Automatic:AppStore
- Entitlements.plist
-
-
- bin\iPhoneSimulator\Ad-Hoc\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- NSUrlSessionHandler
- Full
- 9.3
- iPhone Distribution
- Adhoc: Bitwarden ext
- Entitlements.plist
-
-
- bin\iPhone\Ad-Hoc\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- ARM64
- Full
- NSUrlSessionHandler
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSExtension --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- iPhone Distribution
- Automatic:AdHoc
- Entitlements.plist
+
+ false
+ -gcc_flags "-L$(ProjectDir)../../lib/ios -largon2 -force_load $(ProjectDir)../../lib/ios/libargon2.a"
@@ -184,32 +68,16 @@
PasswordGeneratorViewController.cs
-
-
+
+
+ TestViewController.cs
+
-
-
-
-
-
-
-
- {ee44c6a1-2a85-45fe-8d9b-bf1d5f88809c}
- App
-
-
- {4b8a8c41-9820-4341-974c-41e65b7f4366}
- Core
-
-
- {e71f3053-056c-4381-9638-048ed73bdff6}
- iOS.Core
- false
- false
-
+
+
@@ -241,9 +109,40 @@
-
- 5.0.2
-
+
+
+
+
+
+
+ Resources\yubikey%403x.png
+
+
+ Resources\yubikey%402x.png
+
+
+ Resources\Icon%402x.png
+
+
+ Resources\logo%403x.png
+
+
+ Resources\logo%402x.png
+
+
+ Resources\Icon%403x.png
+
+
+ Resources\ext-icon%402x.png
+
+
+ Resources\logo_white%403x.png
+
+
+ Resources\logo_white%402x.png
+
+
+ Resources\ext-icon%403x.png
+
-
\ No newline at end of file
diff --git a/src/iOS.ShareExtension/LoadingViewController.cs b/src/iOS.ShareExtension/LoadingViewController.cs
index 33d1ce0b4..8406ccb6e 100644
--- a/src/iOS.ShareExtension/LoadingViewController.cs
+++ b/src/iOS.ShareExtension/LoadingViewController.cs
@@ -12,19 +12,19 @@ using Bit.Core.Abstractions;
using Bit.Core.Enums;
using Bit.Core.Services;
using Bit.Core.Utilities;
-using Bit.iOS.Core.Controllers;
using Bit.iOS.Core.Utilities;
using Bit.iOS.Core.Views;
using Bit.iOS.ShareExtension.Models;
using CoreNFC;
using Foundation;
+using Microsoft.Maui.Controls;
+using Microsoft.Maui.Platform;
using MobileCoreServices;
using UIKit;
-using Xamarin.Forms;
namespace Bit.iOS.ShareExtension
{
- public partial class LoadingViewController : ExtendedUIViewController, IAccountsManagerHost
+ public partial class LoadingViewController : UIViewController, IAccountsManagerHost
{
const string STORYBOARD_NAME = "MainInterface";
@@ -200,7 +200,7 @@ namespace Bit.iOS.ShareExtension
private void NavigateToPage(ContentPage page)
{
var navigationPage = new NavigationPage(page);
- _currentModalController = navigationPage.CreateViewController();
+ _currentModalController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
_currentModalController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
_presentingOnNavigationPage = true;
PresentViewController(_currentModalController, true, null);
@@ -444,7 +444,7 @@ namespace Bit.iOS.ShareExtension
}
var navigationPage = new NavigationPage(loginApproveDevicePage);
- var loginApproveDeviceController = navigationPage.CreateViewController();
+ var loginApproveDeviceController = navigationPage.ToUIViewController(MauiContextSingleton.Instance.MauiContext);
loginApproveDeviceController.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
PresentViewController(loginApproveDeviceController, true, null);
}
diff --git a/src/iOS.ShareExtension/iOS.ShareExtension.csproj b/src/iOS.ShareExtension/iOS.ShareExtension.csproj
index 0b804f31d..e593f0c40 100644
--- a/src/iOS.ShareExtension/iOS.ShareExtension.csproj
+++ b/src/iOS.ShareExtension/iOS.ShareExtension.csproj
@@ -1,178 +1,39 @@
-
+
- Debug
- iPhoneSimulator
- {F8C3F648-EA5A-4719-8005-85D1690B1655}
- {EE2C853D-36AF-4FDB-B1AD-8E90477E2198};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
- Library
- Bit.iOS.ShareExtension
- iOS.ShareExtension
- Resources
+ net8.0-ios
+ True
+ Library
+ com.8bit.bitwarden.share-extension
+ 1.0
+ 1
+
+ False
+
+ 11.0
+ Bit.iOS.ShareExtension
-
- true
- full
- false
- bin\iPhoneSimulator\Debug
- DEBUG;
- prompt
- 4
- iPhone Developer
- true
- true
- true
- 52107
- None
- x86_64
- NSUrlSessionHandler
-
- Entitlements.plist
- BitwardeniOSShareExtension
- --nodevcodeshare --http-message-handler=NSUrlSessionHandler -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
+
+
+ true
+ false
-
- pdbonly
- true
- bin\iPhone\Release
-
- prompt
- 4
- iPhone Developer
- true
- true
- Entitlements.plist
- Full
- ARM64
- NSUrlSessionHandler
-
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- Automatic
+
+
+ false
+ iossimulator-arm64
+
+ Automatic
+ iPhone Developer
+ Entitlements.plist
+ all
+ None
+
-
- pdbonly
- true
- bin\iPhoneSimulator\Release
-
- prompt
- 4
- iPhone Developer
- true
- None
- x86_64
- NSUrlSessionHandler
-
- BitwardeniOSShareExtension
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- Automatic
- Entitlements.plist
+
+ false
+ -gcc_flags "-L$(ProjectDir)../../lib/ios -largon2 -force_load $(ProjectDir)../../lib/ios/libargon2.a"
-
- true
- full
- false
- bin\iPhone\Debug
- DEBUG;
- prompt
- 4
- iPhone Developer
- true
- true
- true
- true
- true
- Entitlements.plist
- 22866
- None
- ARM64
- NSUrlSessionHandler
-
- --nodevcodeshare --http-message-handler=NSUrlSessionHandler -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
-
-
- bin\iPhoneSimulator\AppStore\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- NSUrlSessionHandler
- Full
- 9.3
- iPhone Distribution
- Entitlements.plist
- Dist: Autofill
- BitwardeniOSShareExtension
- i386
-
-
- bin\iPhone\AppStore\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- Full
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- ARM64
- 10.2
- iPhone Distribution
- Automatic:AppStore
- Entitlements.plist
-
-
- bin\iPhoneSimulator\Ad-Hoc\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- Full
- NSUrlSessionHandler
- 9.3
- iPhone Distribution
- Adhoc: Autofill
- Entitlements.plist
- BitwardeniOSShareExtension
- i386
-
-
- bin\iPhone\Ad-Hoc\
- __IOS__;__MOBILE__;__UNIFIED__;
- true
- AnyCPU
- false
- prompt
- MinimumRecommendedRules.ruleset
- ARM64
- NSUrlSessionHandler
- Full
- --http-message-handler=NSUrlSessionHandler --linkskip=BitwardeniOS --linkskip=BitwardeniOSCore --linkskip=BitwardeniOSAutofill --linkskip=BitwardenApp --linkskip=BitwardenCore --linkskip=LiteDB --linkskip=BitwardeniOSShareExtension -gcc_flags "-L${ProjectDir}/../../lib/ios -largon2 -force_load ${ProjectDir}/../../lib/ios/libargon2.a"
- true
- iPhone Distribution
- Entitlements.plist
- Automatic:AdHoc
-
-
-
-
-
-
-
-
-
-
- 5.0.2
-
-
@@ -181,9 +42,6 @@
-
-
-
@@ -198,17 +56,7 @@
ExtensionNavigationController.cs
-
-
-
- App
-
-
- iOS.Core
-
-
- Core
-
+
@@ -245,5 +93,13 @@
Resources\MaterialIcons_Regular.ttf
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file