mirror of
https://github.com/bitwarden/android.git
synced 2024-12-25 02:18:27 +03:00
show/hide loading are async now
This commit is contained in:
parent
215ded8a77
commit
b5747fbb44
17 changed files with 85 additions and 57 deletions
33
src/Android/Resources/Resource.Designer.cs
generated
33
src/Android/Resources/Resource.Designer.cs
generated
|
@ -6506,17 +6506,17 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0a0051
|
// aapt resource value: 0x7f0a0051
|
||||||
public const int ApplicationName = 2131361873;
|
public const int ApplicationName = 2131361873;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a00ab
|
// aapt resource value: 0x7f0a00b2
|
||||||
public const int AutoFillServiceDescription = 2131361963;
|
public const int AutoFillServiceDescription = 2131361970;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a00aa
|
// aapt resource value: 0x7f0a00b1
|
||||||
public const int AutoFillServiceSummary = 2131361962;
|
public const int AutoFillServiceSummary = 2131361969;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a0050
|
// aapt resource value: 0x7f0a0050
|
||||||
public const int Hello = 2131361872;
|
public const int Hello = 2131361872;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a00ac
|
// aapt resource value: 0x7f0a00b3
|
||||||
public const int MyVault = 2131361964;
|
public const int MyVault = 2131361971;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a0027
|
// aapt resource value: 0x7f0a0027
|
||||||
public const int abc_action_bar_home_description = 2131361831;
|
public const int abc_action_bar_home_description = 2131361831;
|
||||||
|
@ -6671,6 +6671,27 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0a000f
|
// aapt resource value: 0x7f0a000f
|
||||||
public const int common_signin_button_text_long = 2131361807;
|
public const int common_signin_button_text_long = 2131361807;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00ac
|
||||||
|
public const int default_web_client_id = 2131361964;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00ad
|
||||||
|
public const int firebase_database_url = 2131361965;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00aa
|
||||||
|
public const int gcm_defaultSenderId = 2131361962;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00ae
|
||||||
|
public const int google_api_key = 2131361966;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00ab
|
||||||
|
public const int google_app_id = 2131361963;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00af
|
||||||
|
public const int google_crash_reporting_api_key = 2131361967;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0a00b0
|
||||||
|
public const int google_storage_bucket = 2131361968;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0a0052
|
// aapt resource value: 0x7f0a0052
|
||||||
public const int hockeyapp_crash_dialog_app_name_fallback = 2131361874;
|
public const int hockeyapp_crash_dialog_app_name_fallback = 2131361874;
|
||||||
|
|
||||||
|
|
|
@ -445,11 +445,11 @@ namespace Bit.Android.Services
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowLoading(string text)
|
public async Task ShowLoadingAsync(string text)
|
||||||
{
|
{
|
||||||
if(_progressDialog != null)
|
if(_progressDialog != null)
|
||||||
{
|
{
|
||||||
HideLoading();
|
await HideLoadingAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
var activity = (MainActivity)CurrentContext;
|
var activity = (MainActivity)CurrentContext;
|
||||||
|
@ -459,16 +459,16 @@ namespace Bit.Android.Services
|
||||||
_progressDialog.Show();
|
_progressDialog.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HideLoading()
|
public Task HideLoadingAsync()
|
||||||
{
|
{
|
||||||
if(_progressDialog == null)
|
if(_progressDialog != null)
|
||||||
{
|
{
|
||||||
return;
|
_progressDialog.Dismiss();
|
||||||
|
_progressDialog.Dispose();
|
||||||
|
_progressDialog = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
_progressDialog.Dismiss();
|
return Task.FromResult(0);
|
||||||
_progressDialog.Dispose();
|
|
||||||
_progressDialog = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<string> DisplayPromptAync(string title = null, string description = null, string text = null)
|
public Task<string> DisplayPromptAync(string title = null, string description = null, string text = null)
|
||||||
|
@ -487,7 +487,7 @@ namespace Bit.Android.Services
|
||||||
{
|
{
|
||||||
InputType = global::Android.Text.InputTypes.ClassText
|
InputType = global::Android.Text.InputTypes.ClassText
|
||||||
};
|
};
|
||||||
|
|
||||||
if(text == null)
|
if(text == null)
|
||||||
{
|
{
|
||||||
text = string.Empty;
|
text = string.Empty;
|
||||||
|
|
|
@ -6,8 +6,8 @@ namespace Bit.App.Abstractions
|
||||||
{
|
{
|
||||||
public interface IDeviceActionService
|
public interface IDeviceActionService
|
||||||
{
|
{
|
||||||
void ShowLoading(string text);
|
Task ShowLoadingAsync(string text);
|
||||||
void HideLoading();
|
Task HideLoadingAsync();
|
||||||
void Toast(string text, bool longDuration = false);
|
void Toast(string text, bool longDuration = false);
|
||||||
void CopyToClipboard(string text);
|
void CopyToClipboard(string text);
|
||||||
bool OpenFile(byte[] fileData, string id, string fileName);
|
bool OpenFile(byte[] fileData, string id, string fileName);
|
||||||
|
|
|
@ -179,9 +179,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.LoggingIn);
|
await _deviceActionService.ShowLoadingAsync(AppResources.LoggingIn);
|
||||||
var result = await _authService.TokenPostAsync(EmailCell.Entry.Text, PasswordCell.Entry.Text);
|
var result = await _authService.TokenPostAsync(EmailCell.Entry.Text, PasswordCell.Entry.Text);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(!result.Success)
|
if(!result.Success)
|
||||||
{
|
{
|
||||||
|
|
|
@ -416,10 +416,10 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(string.Concat(AppResources.Validating, "..."));
|
await _deviceActionService.ShowLoadingAsync(string.Concat(AppResources.Validating, "..."));
|
||||||
var response = await _authService.TokenPostTwoFactorAsync(_providerType.Value, token, RememberCell.On,
|
var response = await _authService.TokenPostTwoFactorAsync(_providerType.Value, token, RememberCell.On,
|
||||||
_email, _masterPasswordHash, _key);
|
_email, _masterPasswordHash, _key);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(!response.Success)
|
if(!response.Success)
|
||||||
{
|
{
|
||||||
|
|
|
@ -123,9 +123,9 @@ namespace Bit.App.Pages
|
||||||
Email = EmailCell.Entry.Text
|
Email = EmailCell.Entry.Text
|
||||||
};
|
};
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Submitting);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Submitting);
|
||||||
var response = await _accountApiRepository.PostPasswordHintAsync(request);
|
var response = await _accountApiRepository.PostPasswordHintAsync(request);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(!response.Succeeded)
|
if(!response.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -204,9 +204,9 @@ namespace Bit.App.Pages
|
||||||
Key = encKey.EncryptedString
|
Key = encKey.EncryptedString
|
||||||
};
|
};
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.CreatingAccount);
|
await _deviceActionService.ShowLoadingAsync(AppResources.CreatingAccount);
|
||||||
var response = await _accountsApiRepository.PostRegisterAsync(request);
|
var response = await _accountsApiRepository.PostRegisterAsync(request);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(!response.Succeeded)
|
if(!response.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -85,9 +85,9 @@ namespace Bit.App.Pages
|
||||||
Name = NameCell.Entry.Text.Encrypt()
|
Name = NameCell.Entry.Text.Encrypt()
|
||||||
};
|
};
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Saving);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Saving);
|
||||||
var saveResult = await _folderService.SaveAsync(folder);
|
var saveResult = await _folderService.SaveAsync(folder);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveResult.Succeeded)
|
if(saveResult.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -97,9 +97,9 @@ namespace Bit.App.Pages
|
||||||
|
|
||||||
folder.Name = NameCell.Entry.Text.Encrypt();
|
folder.Name = NameCell.Entry.Text.Encrypt();
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Saving);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Saving);
|
||||||
var saveResult = await _folderService.SaveAsync(folder);
|
var saveResult = await _folderService.SaveAsync(folder);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveResult.Succeeded)
|
if(saveResult.Succeeded)
|
||||||
{
|
{
|
||||||
|
@ -161,9 +161,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Deleting);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Deleting);
|
||||||
var deleteTask = await _folderService.DeleteAsync(_folderId);
|
var deleteTask = await _folderService.DeleteAsync(_folderId);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(deleteTask.Succeeded)
|
if(deleteTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -101,9 +101,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Syncing);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Syncing);
|
||||||
var succeeded = await _syncService.FullSyncAsync(true);
|
var succeeded = await _syncService.FullSyncAsync(true);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
if(succeeded)
|
if(succeeded)
|
||||||
{
|
{
|
||||||
_deviceActionService.Toast(AppResources.SyncingComplete);
|
_deviceActionService.Toast(AppResources.SyncingComplete);
|
||||||
|
|
|
@ -775,9 +775,9 @@ namespace Bit.App.Pages
|
||||||
|
|
||||||
Helpers.ProcessFieldsSectionForSave(FieldsSection, cipher);
|
Helpers.ProcessFieldsSectionForSave(FieldsSection, cipher);
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Saving);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Saving);
|
||||||
var saveTask = await _cipherService.SaveAsync(cipher);
|
var saveTask = await _cipherService.SaveAsync(cipher);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveTask.Succeeded)
|
if(saveTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -154,9 +154,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Saving);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Saving);
|
||||||
var saveTask = await _cipherService.EncryptAndSaveAttachmentAsync(_cipher, _fileBytes, FileLabel.Text);
|
var saveTask = await _cipherService.EncryptAndSaveAttachmentAsync(_cipher, _fileBytes, FileLabel.Text);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveTask.Succeeded)
|
if(saveTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
@ -280,9 +280,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Deleting);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Deleting);
|
||||||
var saveTask = await _cipherService.DeleteAttachmentAsync(_cipher, attachment.Id);
|
var saveTask = await _cipherService.DeleteAttachmentAsync(_cipher, attachment.Id);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveTask.Succeeded)
|
if(saveTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -639,9 +639,9 @@ namespace Bit.App.Pages
|
||||||
|
|
||||||
Helpers.ProcessFieldsSectionForSave(FieldsSection, Cipher);
|
Helpers.ProcessFieldsSectionForSave(FieldsSection, Cipher);
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Saving);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Saving);
|
||||||
var saveTask = await _cipherService.SaveAsync(Cipher);
|
var saveTask = await _cipherService.SaveAsync(Cipher);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(saveTask.Succeeded)
|
if(saveTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
@ -892,9 +892,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Deleting);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Deleting);
|
||||||
var deleteTask = await _cipherService.DeleteAsync(_cipherId);
|
var deleteTask = await _cipherService.DeleteAsync(_cipherId);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(deleteTask.Succeeded)
|
if(deleteTask.Succeeded)
|
||||||
{
|
{
|
||||||
|
|
|
@ -462,9 +462,9 @@ namespace Bit.App.Pages
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_deviceActionService.ShowLoading(AppResources.Downloading);
|
await _deviceActionService.ShowLoadingAsync(AppResources.Downloading);
|
||||||
var data = await _cipherService.DownloadAndDecryptAttachmentAsync(attachment.Url, cipher.OrganizationId);
|
var data = await _cipherService.DownloadAndDecryptAttachmentAsync(attachment.Url, cipher.OrganizationId);
|
||||||
_deviceActionService.HideLoading();
|
await _deviceActionService.HideLoadingAsync();
|
||||||
|
|
||||||
if(data == null)
|
if(data == null)
|
||||||
{
|
{
|
||||||
|
|
|
@ -151,14 +151,16 @@ namespace Bit.UWP.Services
|
||||||
}.Show();
|
}.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowLoading(string text)
|
public Task ShowLoadingAsync(string text)
|
||||||
{
|
{
|
||||||
_userDialogs.ShowLoading(text, MaskType.Black);
|
_userDialogs.ShowLoading(text, MaskType.Black);
|
||||||
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HideLoading()
|
public Task HideLoadingAsync()
|
||||||
{
|
{
|
||||||
_userDialogs.HideLoading();
|
_userDialogs.HideLoading();
|
||||||
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task LaunchAppAsync(string appName, Xamarin.Forms.Page page)
|
public Task LaunchAppAsync(string appName, Xamarin.Forms.Page page)
|
||||||
|
|
|
@ -48,9 +48,9 @@ namespace Bit.iOS.Core.Services
|
||||||
return Task.FromResult<string>(null);
|
return Task.FromResult<string>(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HideLoading()
|
public Task HideLoadingAsync()
|
||||||
{
|
{
|
||||||
// do nothing
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task LaunchAppAsync(string appName, Page page)
|
public Task LaunchAppAsync(string appName, Page page)
|
||||||
|
@ -83,9 +83,9 @@ namespace Bit.iOS.Core.Services
|
||||||
return Task.FromResult(0);
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowLoading(string text)
|
public Task ShowLoadingAsync(string text)
|
||||||
{
|
{
|
||||||
// do nothing
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Toast(string text, bool longDuration = false)
|
public void Toast(string text, bool longDuration = false)
|
||||||
|
|
|
@ -286,13 +286,15 @@ namespace Bit.iOS.Services
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowLoading(string text)
|
public Task ShowLoadingAsync(string text)
|
||||||
{
|
{
|
||||||
if(_progressAlert != null)
|
if(_progressAlert != null)
|
||||||
{
|
{
|
||||||
HideLoading();
|
HideLoadingAsync().GetAwaiter().GetResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var result = new TaskCompletionSource<int>();
|
||||||
|
|
||||||
var loadingIndicator = new UIActivityIndicatorView(new CGRect(10, 5, 50, 50));
|
var loadingIndicator = new UIActivityIndicatorView(new CGRect(10, 5, 50, 50));
|
||||||
loadingIndicator.HidesWhenStopped = true;
|
loadingIndicator.HidesWhenStopped = true;
|
||||||
loadingIndicator.ActivityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray;
|
loadingIndicator.ActivityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray;
|
||||||
|
@ -303,19 +305,22 @@ namespace Bit.iOS.Services
|
||||||
_progressAlert.View.Add(loadingIndicator);
|
_progressAlert.View.Add(loadingIndicator);
|
||||||
|
|
||||||
var vc = GetPresentedViewController();
|
var vc = GetPresentedViewController();
|
||||||
vc?.PresentViewController(_progressAlert, false, null);
|
vc?.PresentViewController(_progressAlert, false, () => result.TrySetResult(0));
|
||||||
|
return result.Task;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HideLoading()
|
public Task HideLoadingAsync()
|
||||||
{
|
{
|
||||||
|
var result = new TaskCompletionSource<int>();
|
||||||
if(_progressAlert == null)
|
if(_progressAlert == null)
|
||||||
{
|
{
|
||||||
return;
|
result.TrySetResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
_progressAlert.DismissViewController(false, null);
|
_progressAlert.DismissViewController(false, () => result.TrySetResult(0));
|
||||||
_progressAlert.Dispose();
|
_progressAlert.Dispose();
|
||||||
_progressAlert = null;
|
_progressAlert = null;
|
||||||
|
return result.Task;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task LaunchAppAsync(string appName, Page page)
|
public Task LaunchAppAsync(string appName, Page page)
|
||||||
|
|
Loading…
Reference in a new issue