From eeee171b7832597a6d7f956ec3eeb7d87747199d Mon Sep 17 00:00:00 2001
From: DismissedLight <1686188646@qq.com>
Date: Sun, 19 Mar 2023 20:45:36 +0800
Subject: [PATCH] fix #611
---
src/Snap.Hutao/Snap.Hutao/App.xaml | 3 +-
.../CastableServiceExtension.cs | 2 +-
.../Snap.Hutao/Core/LifeCycle/Activation.cs | 2 +-
.../Resource/Localization/SH.Designer.cs | 27 ++++++++
.../Snap.Hutao/Resource/Localization/SH.resx | 9 +++
.../Snap.Hutao/View/Page/SettingPage.xaml | 68 ++++++++++---------
.../ExperimentalFeaturesViewModel.cs | 17 ++++-
.../Snap.Hutao/ViewModel/WelcomeViewModel.cs | 2 +-
8 files changed, 91 insertions(+), 39 deletions(-)
diff --git a/src/Snap.Hutao/Snap.Hutao/App.xaml b/src/Snap.Hutao/Snap.Hutao/App.xaml
index d44683f7..a47b389b 100644
--- a/src/Snap.Hutao/Snap.Hutao/App.xaml
+++ b/src/Snap.Hutao/Snap.Hutao/App.xaml
@@ -61,8 +61,9 @@
https://hut.ao/features/mhy-account-switch.html
https://hut.ao/statements/bug-report.html
- https://github.com/HolographicHat/GetToken/releases/latest
https://translate.hut.ao
+ https://hut.ao
+ https://github.com/HolographicHat/GetToken/releases/latest
https://afdian.net/a/DismissedLight
https://static.snapgenshin.com/Bg/UI_ItemIcon_None.png
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/DependencyInjection/CastableServiceExtension.cs b/src/Snap.Hutao/Snap.Hutao/Core/DependencyInjection/CastableServiceExtension.cs
index 03ab1a4f..e569a1c5 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/DependencyInjection/CastableServiceExtension.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/DependencyInjection/CastableServiceExtension.cs
@@ -15,7 +15,7 @@ internal static class CastableServiceExtension
/// 目标转换类型
/// 对象
/// 转换类型后的对象
- public static T? ImplictAs(this ICastableService service)
+ public static T? As(this ICastableService service)
where T : class
{
return service as T;
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/LifeCycle/Activation.cs b/src/Snap.Hutao/Snap.Hutao/Core/LifeCycle/Activation.cs
index a50406f5..f87b7472 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/LifeCycle/Activation.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/LifeCycle/Activation.cs
@@ -188,7 +188,7 @@ internal static class Activation
Ioc.Default
.GetRequiredService()
- .ImplictAs()?
+ .As()?
.InitializeInternalAsync()
.SafeForget();
}
diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs
index 57d87ea7..5ab6c40b 100644
--- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs
@@ -1950,6 +1950,24 @@ namespace Snap.Hutao.Resource.Localization {
}
}
+ ///
+ /// 查找类似 该操作是不可逆的,所有用户登录状态会丢失 的本地化字符串。
+ ///
+ internal static string ViewDialogSettingDeleteUserDataContent {
+ get {
+ return ResourceManager.GetString("ViewDialogSettingDeleteUserDataContent", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 是否永久删除用户数据 的本地化字符串。
+ ///
+ internal static string ViewDialogSettingDeleteUserDataTitle {
+ get {
+ return ResourceManager.GetString("ViewDialogSettingDeleteUserDataTitle", resourceCulture);
+ }
+ }
+
///
/// 查找类似 立即前往 的本地化字符串。
///
@@ -4290,6 +4308,15 @@ namespace Snap.Hutao.Resource.Localization {
}
}
+ ///
+ /// 查找类似 前往官网 的本地化字符串。
+ ///
+ internal static string ViewPageSettingOfficialSiteNavigate {
+ get {
+ return ResourceManager.GetString("ViewPageSettingOfficialSiteNavigate", resourceCulture);
+ }
+ }
+
///
/// 查找类似 重置 的本地化字符串。
///
diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx
index 96f60eb6..7358557b 100644
--- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx
+++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx
@@ -1788,4 +1788,13 @@
设置 Cookie
+
+ 前往官网
+
+
+ 该操作是不可逆的,所有用户登录状态会丢失
+
+
+ 是否永久删除用户数据
+
\ No newline at end of file
diff --git a/src/Snap.Hutao/Snap.Hutao/View/Page/SettingPage.xaml b/src/Snap.Hutao/Snap.Hutao/View/Page/SettingPage.xaml
index 3d5766ab..650221b5 100644
--- a/src/Snap.Hutao/Snap.Hutao/View/Page/SettingPage.xaml
+++ b/src/Snap.Hutao/Snap.Hutao/View/Page/SettingPage.xaml
@@ -18,52 +18,56 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
();
- await appDbContext.Users.ExecuteDeleteAsync().ConfigureAwait(false);
- AppInstance.Restart(string.Empty);
+ ContentDialogResult result = await scope.ServiceProvider
+ .GetRequiredService()
+ .ConfirmCancelAsync(SH.ViewDialogSettingDeleteUserDataTitle, SH.ViewDialogSettingDeleteUserDataContent)
+ .ConfigureAwait(false);
+
+ if (result == ContentDialogResult.Primary)
+ {
+ AppDbContext appDbContext = scope.ServiceProvider.GetRequiredService();
+ await appDbContext.Users.ExecuteDeleteAsync().ConfigureAwait(false);
+
+ AppInstance.Restart(string.Empty);
+ }
}
}
}
\ No newline at end of file
diff --git a/src/Snap.Hutao/Snap.Hutao/ViewModel/WelcomeViewModel.cs b/src/Snap.Hutao/Snap.Hutao/ViewModel/WelcomeViewModel.cs
index 02a80573..901346ac 100644
--- a/src/Snap.Hutao/Snap.Hutao/ViewModel/WelcomeViewModel.cs
+++ b/src/Snap.Hutao/Snap.Hutao/ViewModel/WelcomeViewModel.cs
@@ -204,7 +204,7 @@ internal sealed class WelcomeViewModel : ObservableObject
private void ExtractFiles(string file)
{
- IImageCacheFilePathOperation imageCache = serviceProvider.GetRequiredService().ImplictAs()!;
+ IImageCacheFilePathOperation imageCache = serviceProvider.GetRequiredService().As()!;
try
{
using (ZipArchive archive = ZipFile.OpenRead(file))