Skip to content

Commit 7b42969

Browse files
committed
Disable saving credentials temporarily on Uno
1 parent 577218b commit 7b42969

5 files changed

Lines changed: 16 additions & 6 deletions

File tree

src/Platforms/SecureFolderFS.Maui/UserControls/LoginControl.xaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@
107107
<!-- Title -->
108108
<Label
109109
HorizontalOptions="Center"
110+
LineBreakMode="WordWrap"
110111
Opacity="0.8"
111112
Text="{l:ResourceString Rid=CredentialsHaveBeenSaved}" />
112113

src/Platforms/SecureFolderFS.Uno/UserControls/LoginControl.xaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,10 @@
187187
<DataTemplate x:Key="PersistedAuthenticationTemplate" x:DataType="vm5:PersistedAuthenticationViewModel">
188188
<StackPanel Spacing="16">
189189
<!-- Title -->
190-
<TextBlock HorizontalAlignment="Center" Text="{l:ResourceString Rid=CredentialsHaveBeenSaved}" />
190+
<TextBlock
191+
HorizontalAlignment="Center"
192+
Text="{l:ResourceString Rid=CredentialsHaveBeenSaved}"
193+
TextWrapping="WrapWholeWords" />
191194

192195
<!-- Continue -->
193196
<Button

src/Platforms/SecureFolderFS.Uno/UserControls/LoginOptions.xaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
<CheckBox
2020
Content="{l:ResourceString Rid=SaveCredentials}"
2121
IsChecked="{x:Bind ShouldSaveCredentials, Mode=TwoWay}"
22+
IsEnabled="False"
2223
Visibility="{x:Bind AreCredentialsSaved, Mode=OneWay, Converter={StaticResource BoolInvertConverter}}" />
2324

2425
<Button

src/Sdk/SecureFolderFS.Sdk/ViewModels/Controls/Authentication/PersistedAuthenticationViewModel.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,17 +53,17 @@ public override Task<IResult<IKeyBytes>> AcquireAsync(string id, byte[]? data, C
5353
}
5454

5555
/// <inheritdoc/>
56-
protected override Task ProvideCredentialsAsync(CancellationToken cancellationToken)
56+
protected override async Task ProvideCredentialsAsync(CancellationToken cancellationToken)
5757
{
5858
if (!PersistedCredentialsModel.Instance.Credentials.TryGetValue(_vaultId, out var credentials))
5959
{
6060
PersistedCredentialsModel.Instance.Credentials.Remove(_vaultId);
61-
CredentialsProvided?.Invoke(this, new(new ManagedKey(0), null));
62-
return Task.CompletedTask;
61+
credentials = ManagedKey.Empty;
6362
}
6463

65-
CredentialsProvided?.Invoke(this, new(credentials.CreateCopy(), null));
66-
return Task.CompletedTask;
64+
var tcs = new TaskCompletionSource();
65+
CredentialsProvided?.Invoke(this, new(credentials.CreateCopy(), tcs));
66+
await tcs.Task;
6767
}
6868
}
6969
}

src/Shared/SecureFolderFS.Shared/SecureStore/ManagedKey.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ namespace SecureFolderFS.Shared.SecureStore
88
/// <inheritdoc cref="IKeyBytes"/>
99
public sealed class ManagedKey : IKeyBytes, ICloneable
1010
{
11+
/// <summary>
12+
/// Represents an empty key.
13+
/// </summary>
14+
public static ManagedKey Empty { get; } = new(0);
15+
1116
/// <inheritdoc/>
1217
public byte[] Key { get; }
1318

0 commit comments

Comments
 (0)