diff --git a/Pixiview/AppShell.xaml b/Pixiview/AppShell.xaml
index 5d7d4df..7bfb7da 100644
--- a/Pixiview/AppShell.xaml
+++ b/Pixiview/AppShell.xaml
@@ -30,6 +30,9 @@
Text="{Binding UserProfileName}" TextColor="{DynamicResource TextColor}"/>
+
diff --git a/Pixiview/AppShell.xaml.cs b/Pixiview/AppShell.xaml.cs
index 90c7db8..781e84a 100644
--- a/Pixiview/AppShell.xaml.cs
+++ b/Pixiview/AppShell.xaml.cs
@@ -23,6 +23,8 @@ namespace Pixiview
nameof(UserProfileName), typeof(string), typeof(AppShell), ResourceHelper.Guest);
public static readonly BindableProperty UserProfileIdProperty = BindableProperty.Create(
nameof(UserProfileId), typeof(string), typeof(AppShell));
+ public static readonly BindableProperty IsLoadingProperty = BindableProperty.Create(
+ nameof(IsLoading), typeof(bool), typeof(AppShell));
public ImageSource UserProfileImage
{
@@ -39,6 +41,11 @@ namespace Pixiview
get => (string)GetValue(UserProfileIdProperty);
set => SetValue(UserProfileIdProperty, value);
}
+ public bool IsLoading
+ {
+ get => (bool)GetValue(IsLoadingProperty);
+ set => SetValue(IsLoadingProperty, value);
+ }
public event EventHandler NavigationBarHeightChanged;
public event EventHandler StatusBarHeightChanged;
@@ -76,12 +83,24 @@ namespace Pixiview
{
if (UserProfileId != null)
{
- return;
+ if (IsLoading)
+ {
+ return;
+ }
+ IsLoading = true;
+ Task.Run(() =>
+ {
+ DoLoginInformation(true);
+ IsLoading = false;
+ });
}
- PushToLogin(()=>
+ else
{
- Task.Run(() => DoLoginInformation(true));
- });
+ PushToLogin(() =>
+ {
+ Task.Run(() => DoLoginInformation(true));
+ });
+ }
}
private bool isLoginOpened;