update readme

This commit is contained in:
DismissedLight
2023-02-02 16:35:48 +08:00
parent 79a254235a
commit 47708adc83
33 changed files with 1199 additions and 177 deletions

View File

@@ -1,12 +1,8 @@
# [Snap.Hutao](https://hut.ao)
![](https://repository-images.githubusercontent.com/482734649/5f8cf574-2ef0-43e9-aa8d-6cf094b54dd9)
> 唷,找本堂主有何贵干呀?
现已上架 [微软商店](https://apps.microsoft.com/store/detail/snap-hutao/9PH4NXJ2JN52)
![Snap.Hutao](https://repobeats.axiom.co/api/embed/f029553fbe0c60689b1710476ec8512452163fc9.svg)
# 特别感谢
## 特别感谢
* [HolographicHat](https://github.com/HolographicHat)
* [UIGF organization](https://uigf.org)
@@ -31,3 +27,12 @@
* [microsoft/WindowsAppSDK](https://github.com/microsoft/WindowsAppSDK)
* [microsoft/microsoft-ui-xaml](https://github.com/microsoft/microsoft-ui-xaml)
* [WinUICommunity/SettingsUI](https://github.com/WinUICommunity/SettingsUI)
### 支撑项目
* [Snap.Hutao.Server](https://github.com/DGP-Studio/Snap.Hutao.Server)
* [Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata)
* [Snap.Data.Mapper](https://github.com/DGP-Studio/Snap.Data.Mapper)
## 近期活跃数据
![Snap.Hutao](https://repobeats.axiom.co/api/embed/f029553fbe0c60689b1710476ec8512452163fc9.svg)

View File

@@ -111,6 +111,329 @@
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="{StaticResource CompatCornerRadius}"/>
</Style>
<Style x:Key="WebView2ContentDialogStyle" TargetType="ContentDialog">
<Setter Property="Foreground" Value="{ThemeResource ContentDialogForeground}"/>
<Setter Property="Background" Value="{ThemeResource ContentDialogBackground}"/>
<Setter Property="BorderThickness" Value="{ThemeResource ContentDialogBorderWidth}"/>
<Setter Property="BorderBrush" Value="{ThemeResource ContentDialogBorderBrush}"/>
<Setter Property="IsTabStop" Value="False"/>
<Setter Property="CornerRadius" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContentDialog">
<Border x:Name="Container">
<Grid x:Name="LayoutRoot" Visibility="Collapsed">
<Rectangle x:Name="SmokeLayerBackground" Fill="{ThemeResource ContentDialogSmokeFill}"/>
<Border
x:Name="BackgroundElement"
MinWidth="{ThemeResource ContentDialogMinWidth}"
MinHeight="{ThemeResource ContentDialogMinHeight}"
MaxWidth="{ThemeResource ContentDialogMaxWidth}"
MaxHeight="{ThemeResource ContentDialogMaxHeight}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Background="{TemplateBinding Background}"
BackgroundSizing="InnerBorderEdge"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="{TemplateBinding CornerRadius}"
FlowDirection="{TemplateBinding FlowDirection}"
RenderTransformOrigin="0.5,0.5">
<Border.RenderTransform>
<ScaleTransform x:Name="ScaleTransform"/>
</Border.RenderTransform>
<Grid x:Name="DialogSpace" CornerRadius="0">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<ScrollViewer
x:Name="ContentScrollViewer"
HorizontalScrollBarVisibility="Disabled"
IsTabStop="False"
VerticalScrollBarVisibility="Disabled"
ZoomMode="Disabled">
<Grid
Padding="0"
BorderBrush="{ThemeResource ContentDialogSeparatorBorderBrush}"
BorderThickness="{ThemeResource ContentDialogSeparatorThickness}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ContentControl
x:Name="Title"
Margin="{ThemeResource ContentDialogTitleMargin}"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Content="{TemplateBinding Title}"
ContentTemplate="{TemplateBinding TitleTemplate}"
FontFamily="{StaticResource ContentControlThemeFontFamily}"
FontSize="20"
FontWeight="SemiBold"
Foreground="{TemplateBinding Foreground}"
IsTabStop="False">
<ContentControl.Template>
<ControlTemplate TargetType="ContentControl">
<ContentPresenter
Margin="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
ContentTransitions="{TemplateBinding ContentTransitions}"
MaxLines="2"
TextWrapping="Wrap"/>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
<ContentPresenter
x:Name="Content"
Grid.Row="1"
Margin="0,0,0,8"
Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
FontFamily="{StaticResource ContentControlThemeFontFamily}"
FontSize="{StaticResource ControlContentThemeFontSize}"
Foreground="{TemplateBinding Foreground}"
TextWrapping="Wrap"/>
</Grid>
</ScrollViewer>
<Grid
x:Name="CommandSpace"
Grid.Row="1"
Padding="8,0,8,8"
HorizontalAlignment="Stretch"
VerticalAlignment="Bottom"
XYFocusKeyboardNavigation="Enabled">
<Grid.ColumnDefinitions>
<ColumnDefinition x:Name="PrimaryColumn" Width="*"/>
<ColumnDefinition x:Name="FirstSpacer" Width="0"/>
<ColumnDefinition x:Name="SecondaryColumn" Width="0"/>
<ColumnDefinition x:Name="SecondSpacer" Width="{ThemeResource ContentDialogButtonSpacing}"/>
<ColumnDefinition x:Name="CloseColumn" Width="*"/>
</Grid.ColumnDefinitions>
<Button
x:Name="PrimaryButton"
HorizontalAlignment="Stretch"
Content="{TemplateBinding PrimaryButtonText}"
ElementSoundMode="FocusOnly"
IsEnabled="{TemplateBinding IsPrimaryButtonEnabled}"
IsTabStop="False"
Style="{TemplateBinding PrimaryButtonStyle}"/>
<Button
x:Name="SecondaryButton"
HorizontalAlignment="Stretch"
Content="{TemplateBinding SecondaryButtonText}"
ElementSoundMode="FocusOnly"
IsEnabled="{TemplateBinding IsSecondaryButtonEnabled}"
IsTabStop="False"
Style="{TemplateBinding SecondaryButtonStyle}"/>
<Button
x:Name="CloseButton"
Grid.Column="4"
HorizontalAlignment="Stretch"
Content="{TemplateBinding CloseButtonText}"
ElementSoundMode="FocusOnly"
IsTabStop="False"
Style="{TemplateBinding CloseButtonStyle}"/>
</Grid>
</Grid>
</Border>
</Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="DialogShowingStates">
<VisualStateGroup.Transitions>
<VisualTransition To="DialogHidden">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="Visible"/>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="IsHitTestVisible">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="False"/>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="ScaleTransform" Storyboard.TargetProperty="ScaleX">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1.0"/>
<SplineDoubleKeyFrame
KeySpline="{StaticResource ControlFastOutSlowInKeySpline}"
KeyTime="{StaticResource ControlFastAnimationDuration}"
Value="1.05"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="ScaleTransform" Storyboard.TargetProperty="ScaleY">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1.0"/>
<SplineDoubleKeyFrame
KeySpline="{StaticResource ControlFastOutSlowInKeySpline}"
KeyTime="{StaticResource ControlFastAnimationDuration}"
Value="1.05"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Opacity">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1.0"/>
<LinearDoubleKeyFrame KeyTime="{StaticResource ControlFasterAnimationDuration}" Value="0.0"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualTransition>
<VisualTransition To="DialogShowing">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="Visible"/>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="ScaleTransform" Storyboard.TargetProperty="ScaleX">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1.05"/>
<SplineDoubleKeyFrame
KeySpline="{StaticResource ControlFastOutSlowInKeySpline}"
KeyTime="{StaticResource ControlNormalAnimationDuration}"
Value="1.0"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="ScaleTransform" Storyboard.TargetProperty="ScaleY">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1.05"/>
<SplineDoubleKeyFrame
KeySpline="{StaticResource ControlFastOutSlowInKeySpline}"
KeyTime="{StaticResource ControlNormalAnimationDuration}"
Value="1.0"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Opacity">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="0.0"/>
<LinearDoubleKeyFrame KeyTime="{StaticResource ControlFasterAnimationDuration}" Value="1.0"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualTransition>
</VisualStateGroup.Transitions>
<VisualState x:Name="DialogHidden"/>
<VisualState x:Name="DialogShowing">
<VisualState.Setters>
<Setter Target="PrimaryButton.IsTabStop" Value="True"/>
<Setter Target="SecondaryButton.IsTabStop" Value="True"/>
<Setter Target="CloseButton.IsTabStop" Value="True"/>
<Setter Target="LayoutRoot.Visibility" Value="Visible"/>
<Setter Target="BackgroundElement.TabFocusNavigation" Value="Cycle"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="DialogShowingWithoutSmokeLayer">
<VisualState.Setters>
<Setter Target="PrimaryButton.IsTabStop" Value="True"/>
<Setter Target="SecondaryButton.IsTabStop" Value="True"/>
<Setter Target="CloseButton.IsTabStop" Value="True"/>
<Setter Target="LayoutRoot.Visibility" Value="Visible"/>
<Setter Target="LayoutRoot.Background" Value="{x:Null}"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="DialogSizingStates">
<VisualState x:Name="DefaultDialogSizing"/>
<VisualState x:Name="FullDialogSizing">
<VisualState.Setters>
<Setter Target="BackgroundElement.VerticalAlignment" Value="Stretch"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="ButtonsVisibilityStates">
<VisualState x:Name="AllVisible">
<VisualState.Setters>
<Setter Target="FirstSpacer.Width" Value="{ThemeResource ContentDialogButtonSpacing}"/>
<Setter Target="SecondaryColumn.Width" Value="*"/>
<Setter Target="SecondaryButton.(Grid.Column)" Value="2"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="NoneVisible">
<VisualState.Setters>
<Setter Target="CommandSpace.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PrimaryVisible">
<VisualState.Setters>
<Setter Target="PrimaryButton.(Grid.Column)" Value="4"/>
<Setter Target="SecondaryButton.Visibility" Value="Collapsed"/>
<Setter Target="CloseButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="SecondaryVisible">
<VisualState.Setters>
<Setter Target="SecondaryButton.(Grid.Column)" Value="4"/>
<Setter Target="PrimaryButton.Visibility" Value="Collapsed"/>
<Setter Target="CloseButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="CloseVisible">
<VisualState.Setters>
<Setter Target="PrimaryButton.Visibility" Value="Collapsed"/>
<Setter Target="SecondaryButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PrimaryAndSecondaryVisible">
<VisualState.Setters>
<Setter Target="SecondaryButton.(Grid.Column)" Value="4"/>
<Setter Target="CloseButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PrimaryAndCloseVisible">
<VisualState.Setters>
<Setter Target="SecondaryButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="SecondaryAndCloseVisible">
<VisualState.Setters>
<Setter Target="PrimaryButton.Visibility" Value="Collapsed"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="DefaultButtonStates">
<VisualState x:Name="NoDefaultButton"/>
<VisualState x:Name="PrimaryAsDefaultButton">
<VisualState.Setters>
<Setter Target="PrimaryButton.Style" Value="{StaticResource AccentButtonStyle}"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="SecondaryAsDefaultButton">
<VisualState.Setters>
<Setter Target="SecondaryButton.Style" Value="{StaticResource AccentButtonStyle}"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="CloseAsDefaultButton">
<VisualState.Setters>
<Setter Target="CloseButton.Style" Value="{StaticResource AccentButtonStyle}"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="DialogBorderStates">
<VisualState x:Name="NoBorder"/>
<VisualState x:Name="AccentColorBorder">
<VisualState.Setters>
<Setter Target="BackgroundElement.BorderBrush" Value="{ThemeResource SystemControlForegroundAccentBrush}"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ItemsPanelTemplate -->
<ItemsPanelTemplate x:Key="ItemsStackPanelTemplate">
<ItemsStackPanel/>

View File

@@ -3,6 +3,8 @@
using Microsoft.UI.Xaml;
using Snap.Hutao.Core.Logging;
using System.Collections;
using System.Text;
namespace Snap.Hutao.Core.ExceptionService;
@@ -33,12 +35,16 @@ internal class ExceptionRecorder
Ioc.Default.GetRequiredService<Web.Hutao.HomaClient2>().UploadLogAsync(e.Exception).GetAwaiter().GetResult();
#pragma warning restore VSTHRD002
#endif
logger.LogError(EventIds.UnhandledException, e.Exception, "未经处理的异常");
foreach (ILoggerProvider provider in Ioc.Default.GetRequiredService<IEnumerable<ILoggerProvider>>())
StringBuilder dataDetailBuilder = new();
foreach (DictionaryEntry entry in e.Exception.Data)
{
provider.Dispose();
string key = $"{entry.Key}";
string value = $"{entry.Value}";
dataDetailBuilder.Append(key).Append(':').Append(value).Append("\r\n");
}
logger.LogError(e.Exception, "未经处理的异常\r\n{detail}", dataDetailBuilder.ToString());
}
private void OnXamlBindingFailed(object? sender, BindingFailedEventArgs e)

View File

@@ -60,7 +60,7 @@ internal class ContentDialogFactory : IContentDialogFactory
Title = title,
Content = content,
DefaultButton = ContentDialogButton.Primary,
PrimaryButtonText = SH.FactoryContentDialogFactoryConfirmPrimaryButtonText,
PrimaryButtonText = SH.ContentDialogConfirmPrimaryButtonText,
};
return dialog;
@@ -75,8 +75,8 @@ internal class ContentDialogFactory : IContentDialogFactory
Title = title,
Content = content,
DefaultButton = defaultButton,
PrimaryButtonText = SH.FactoryContentDialogFactoryConfirmPrimaryButtonText,
CloseButtonText = SH.FactoryContentDialogFactoryCancelCloseButtonText,
PrimaryButtonText = SH.ContentDialogConfirmPrimaryButtonText,
CloseButtonText = SH.ContentDialogCancelCloseButtonText,
};
return dialog;

View File

@@ -4,7 +4,7 @@ WM_GETMINMAXINFO
WM_NCRBUTTONDOWN
WM_NCRBUTTONUP
// Type definition
// Type & Enum definition
CWMO_FLAGS
MINMAXINFO

View File

@@ -3,7 +3,8 @@
"Snap.Hutao (Package)": {
"commandName": "MsixPackage",
"nativeDebugging": false,
"doNotLaunchApp": false
"doNotLaunchApp": false,
"allowLocalNetworkLoopbackProperty": true
},
"Snap.Hutao (Unpackaged)": {
"commandName": "Project"

View File

@@ -78,6 +78,42 @@ namespace Snap.Hutao.Resource.Localization {
}
}
/// <summary>
/// 查找类似 取消 的本地化字符串。
/// </summary>
internal static string ContentDialogCancelCloseButtonText {
get {
return ResourceManager.GetString("ContentDialogCancelCloseButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 完成 的本地化字符串。
/// </summary>
internal static string ContentDialogCompletePrimaryButtonText {
get {
return ResourceManager.GetString("ContentDialogCompletePrimaryButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 确认 的本地化字符串。
/// </summary>
internal static string ContentDialogConfirmPrimaryButtonText {
get {
return ResourceManager.GetString("ContentDialogConfirmPrimaryButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 保存 的本地化字符串。
/// </summary>
internal static string ContentDialogSavePrimaryButtonText {
get {
return ResourceManager.GetString("ContentDialogSavePrimaryButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 无效的 Uri 的本地化字符串。
/// </summary>
@@ -195,24 +231,6 @@ namespace Snap.Hutao.Resource.Localization {
}
}
/// <summary>
/// 查找类似 取消 的本地化字符串。
/// </summary>
internal static string FactoryContentDialogFactoryCancelCloseButtonText {
get {
return ResourceManager.GetString("FactoryContentDialogFactoryCancelCloseButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 确认 的本地化字符串。
/// </summary>
internal static string FactoryContentDialogFactoryConfirmPrimaryButtonText {
get {
return ResourceManager.GetString("FactoryContentDialogFactoryConfirmPrimaryButtonText", resourceCulture);
}
}
/// <summary>
/// 查找类似 单个成就存档内发现多个相同的成就 Id 的本地化字符串。
/// </summary>
@@ -457,7 +475,7 @@ namespace Snap.Hutao.Resource.Localization {
}
/// <summary>
/// 查找类似 提供的Url无效 的本地化字符串。
/// 查找类似 提供的 Url 无效 的本地化字符串。
/// </summary>
internal static string ServiceGachaLogUrlProviderManualInputInvalid {
get {
@@ -644,5 +662,509 @@ namespace Snap.Hutao.Resource.Localization {
return ResourceManager.GetString("ServiceUserProcessCookieRequestUserInfoFailed", resourceCulture);
}
}
/// <summary>
/// 查找类似 加载中,请稍候 的本地化字符串。
/// </summary>
internal static string ViewControlLoadingText {
get {
return ResourceManager.GetString("ViewControlLoadingText", resourceCulture);
}
}
/// <summary>
/// 查找类似 三星 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardBlueText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardBlueText", resourceCulture);
}
}
/// <summary>
/// 查找类似 保底 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardGuarenteeText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardGuarenteeText", resourceCulture);
}
}
/// <summary>
/// 查找类似 五星平均抽数 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardOrangeAveragePullText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardOrangeAveragePullText", resourceCulture);
}
}
/// <summary>
/// 查找类似 五星 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardOrangeText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardOrangeText", resourceCulture);
}
}
/// <summary>
/// 查找类似 抽 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardPullText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardPullText", resourceCulture);
}
}
/// <summary>
/// 查找类似 四星 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardPurpleText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardPurpleText", resourceCulture);
}
}
/// <summary>
/// 查找类似 UP 平均抽数 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardUpAveragePullText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardUpAveragePullText", resourceCulture);
}
}
/// <summary>
/// 查找类似 UP 的本地化字符串。
/// </summary>
internal static string ViewControlStatisticsCardUpText {
get {
return ResourceManager.GetString("ViewControlStatisticsCardUpText", resourceCulture);
}
}
/// <summary>
/// 查找类似 在此处输入 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveCreateInputPlaceholder {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveCreateInputPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 设置成就存档的名称 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveCreateTitle {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveCreateTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 导入模式 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveImportStrategy {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveImportStrategy", resourceCulture);
}
}
/// <summary>
/// 查找类似 贪婪(添加新数据,更新已完成项) 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveImportStrategyAggressive {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveImportStrategyAggressive", resourceCulture);
}
}
/// <summary>
/// 查找类似 懒惰(添加新数据,跳过已完成项) 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveImportStrategyLazy {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveImportStrategyLazy", resourceCulture);
}
}
/// <summary>
/// 查找类似 覆盖(删除老数据,添加新的数据) 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveImportStrategyOverwrite {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveImportStrategyOverwrite", resourceCulture);
}
}
/// <summary>
/// 查找类似 为当前存档导入成就 的本地化字符串。
/// </summary>
internal static string ViewDialogAchievementArchiveImportTitle {
get {
return ResourceManager.GetString("ViewDialogAchievementArchiveImportTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 绑定当前用户与角色 的本地化字符串。
/// </summary>
internal static string ViewDialogCultivateProjectAttachUid {
get {
return ResourceManager.GetString("ViewDialogCultivateProjectAttachUid", resourceCulture);
}
}
/// <summary>
/// 查找类似 在此处输入计划名称 的本地化字符串。
/// </summary>
internal static string ViewDialogCultivateProjectInputPlaceholder {
get {
return ResourceManager.GetString("ViewDialogCultivateProjectInputPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 创建新的养成计划 的本地化字符串。
/// </summary>
internal static string ViewDialogCultivateProjectTitle {
get {
return ResourceManager.GetString("ViewDialogCultivateProjectTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 添加到当前养成计划 的本地化字符串。
/// </summary>
internal static string ViewDialogCultivatePromotionDeltaTitle {
get {
return ResourceManager.GetString("ViewDialogCultivatePromotionDeltaTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 每日委托上线提醒 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationDailyTaskNotify {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationDailyTaskNotify", resourceCulture);
}
}
/// <summary>
/// 查找类似 探索派遣完成提醒 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationExpeditionNotify {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationExpeditionNotify", resourceCulture);
}
}
/// <summary>
/// 查找类似 洞天宝钱提醒阈值 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationHomeCoinNotifyThreshold {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationHomeCoinNotifyThreshold", resourceCulture);
}
}
/// <summary>
/// 查找类似 原粹树脂提醒阈值 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationResinNotifyThreshold {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationResinNotifyThreshold", resourceCulture);
}
}
/// <summary>
/// 查找类似 在主页显示卡片 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationShowInHomeWidget {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationShowInHomeWidget", resourceCulture);
}
}
/// <summary>
/// 查找类似 设置实时便笺通知 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationTitle {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 参量质变仪提醒 的本地化字符串。
/// </summary>
internal static string ViewDialogDailyNoteNotificationTransformerNotify {
get {
return ResourceManager.GetString("ViewDialogDailyNoteNotificationTransformerNotify", resourceCulture);
}
}
/// <summary>
/// 查找类似 导入祈愿记录 的本地化字符串。
/// </summary>
internal static string ViewDialogGachaLogImportTitle {
get {
return ResourceManager.GetString("ViewDialogGachaLogImportTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 获取祈愿物品中 的本地化字符串。
/// </summary>
internal static string ViewDialogGachaLogRefreshProgressTitle {
get {
return ResourceManager.GetString("ViewDialogGachaLogRefreshProgressTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 请输入 Url 的本地化字符串。
/// </summary>
internal static string ViewDialogGachaLogUrlInputPlaceholder {
get {
return ResourceManager.GetString("ViewDialogGachaLogUrlInputPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 手动输入祈愿记录 Url 的本地化字符串。
/// </summary>
internal static string ViewDialogGachaLogUrlTitle {
get {
return ResourceManager.GetString("ViewDialogGachaLogUrlTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 导出 App 的本地化字符串。
/// </summary>
internal static string ViewDialogImportExportApp {
get {
return ResourceManager.GetString("ViewDialogImportExportApp", resourceCulture);
}
}
/// <summary>
/// 查找类似 导出 App 版本 的本地化字符串。
/// </summary>
internal static string ViewDialogImportExportAppVersion {
get {
return ResourceManager.GetString("ViewDialogImportExportAppVersion", resourceCulture);
}
}
/// <summary>
/// 查找类似 导出时间 的本地化字符串。
/// </summary>
internal static string ViewDialogImportExportTime {
get {
return ResourceManager.GetString("ViewDialogImportExportTime", resourceCulture);
}
}
/// <summary>
/// 查找类似 成就个数 的本地化字符串。
/// </summary>
internal static string ViewDialogImportUIAFExportListCount {
get {
return ResourceManager.GetString("ViewDialogImportUIAFExportListCount", resourceCulture);
}
}
/// <summary>
/// 查找类似 UIAF 版本 的本地化字符串。
/// </summary>
internal static string ViewDialogImportUIAFExportUIAFVersion {
get {
return ResourceManager.GetString("ViewDialogImportUIAFExportUIAFVersion", resourceCulture);
}
}
/// <summary>
/// 查找类似 记录条数 的本地化字符串。
/// </summary>
internal static string ViewDialogImportUIGFExportListCount {
get {
return ResourceManager.GetString("ViewDialogImportUIGFExportListCount", resourceCulture);
}
}
/// <summary>
/// 查找类似 UID 的本地化字符串。
/// </summary>
internal static string ViewDialogImportUIGFExportUid {
get {
return ResourceManager.GetString("ViewDialogImportUIGFExportUid", resourceCulture);
}
}
/// <summary>
/// 查找类似 UIGF 版本 的本地化字符串。
/// </summary>
internal static string ViewDialogImportUIGFExportUIGFVersion {
get {
return ResourceManager.GetString("ViewDialogImportUIGFExportUIGFVersion", resourceCulture);
}
}
/// <summary>
/// 查找类似 在此处输入名称 的本地化字符串。
/// </summary>
internal static string ViewDialogLaunchGameAccountInputPlaceholder {
get {
return ResourceManager.GetString("ViewDialogLaunchGameAccountInputPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 为账号命名 的本地化字符串。
/// </summary>
internal static string ViewDialogLaunchGameAccountTitle {
get {
return ResourceManager.GetString("ViewDialogLaunchGameAccountTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 转换可能需要花费一段时间,请勿关闭胡桃 的本地化字符串。
/// </summary>
internal static string ViewDialogLaunchGamePackageConvertHint {
get {
return ResourceManager.GetString("ViewDialogLaunchGamePackageConvertHint", resourceCulture);
}
}
/// <summary>
/// 查找类似 转换客户端 的本地化字符串。
/// </summary>
internal static string ViewDialogLaunchGamePackageConvertTitle {
get {
return ResourceManager.GetString("ViewDialogLaunchGamePackageConvertTitle", resourceCulture);
}
}
/// <summary>
/// 查找类似 立即前往 的本地化字符串。
/// </summary>
internal static string ViewDialogUserDocumentAction {
get {
return ResourceManager.GetString("ViewDialogUserDocumentAction", resourceCulture);
}
}
/// <summary>
/// 查找类似 进入文档页面并按指示操作 的本地化字符串。
/// </summary>
internal static string ViewDialogUserDocumentDescription {
get {
return ResourceManager.GetString("ViewDialogUserDocumentDescription", resourceCulture);
}
}
/// <summary>
/// 查找类似 操作文档 的本地化字符串。
/// </summary>
internal static string ViewDialogUserDocumentHeader {
get {
return ResourceManager.GetString("ViewDialogUserDocumentHeader", resourceCulture);
}
}
/// <summary>
/// 查找类似 在此处输入包含 Stoken 的 Cookie 的本地化字符串。
/// </summary>
internal static string ViewDialogUserInputPlaceholder {
get {
return ResourceManager.GetString("ViewDialogUserInputPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 创建新存档 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementAddArchive {
get {
return ResourceManager.GetString("ViewPageAchievementAddArchive", resourceCulture);
}
}
/// <summary>
/// 查找类似 创建新存档以继续 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementAddArchiveHint {
get {
return ResourceManager.GetString("ViewPageAchievementAddArchiveHint", resourceCulture);
}
}
/// <summary>
/// 查找类似 导出 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementExportLabel {
get {
return ResourceManager.GetString("ViewPageAchievementExportLabel", resourceCulture);
}
}
/// <summary>
/// 查找类似 从剪贴板导入 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementImportFromClipboard {
get {
return ResourceManager.GetString("ViewPageAchievementImportFromClipboard", resourceCulture);
}
}
/// <summary>
/// 查找类似 从 UIAF 文件导入 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementImportFromFile {
get {
return ResourceManager.GetString("ViewPageAchievementImportFromFile", resourceCulture);
}
}
/// <summary>
/// 查找类似 导入 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementImportLabel {
get {
return ResourceManager.GetString("ViewPageAchievementImportLabel", resourceCulture);
}
}
/// <summary>
/// 查找类似 删除当前存档 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementRemoveArchive {
get {
return ResourceManager.GetString("ViewPageAchievementRemoveArchive", resourceCulture);
}
}
/// <summary>
/// 查找类似 搜索成就名称,描述或编号 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementSearchPlaceholder {
get {
return ResourceManager.GetString("ViewPageAchievementSearchPlaceholder", resourceCulture);
}
}
/// <summary>
/// 查找类似 优先未完成 的本地化字符串。
/// </summary>
internal static string ViewPageAchievementSortIncompletedItemsFirst {
get {
return ResourceManager.GetString("ViewPageAchievementSortIncompletedItemsFirst", resourceCulture);
}
}
}
}

View File

@@ -123,6 +123,18 @@
<data name="AppNameAndVersion" xml:space="preserve">
<value>胡桃 {0}</value>
</data>
<data name="ContentDialogCancelCloseButtonText" xml:space="preserve">
<value>取消</value>
</data>
<data name="ContentDialogCompletePrimaryButtonText" xml:space="preserve">
<value>完成</value>
</data>
<data name="ContentDialogConfirmPrimaryButtonText" xml:space="preserve">
<value>确认</value>
</data>
<data name="ContentDialogSavePrimaryButtonText" xml:space="preserve">
<value>保存</value>
</data>
<data name="ControlImageCachedImageInvalidResourceUri" xml:space="preserve">
<value>无效的 Uri</value>
</data>
@@ -162,12 +174,6 @@
<data name="CoreWebView2HelperVersionUndetected" xml:space="preserve">
<value>未检测到 WebView2 运行时</value>
</data>
<data name="FactoryContentDialogFactoryCancelCloseButtonText" xml:space="preserve">
<value>取消</value>
</data>
<data name="FactoryContentDialogFactoryConfirmPrimaryButtonText" xml:space="preserve">
<value>确认</value>
</data>
<data name="ServiceAchievementUserdataCorruptedInnerIdNotUnique" xml:space="preserve">
<value>单个成就存档内发现多个相同的成就 Id</value>
</data>
@@ -250,7 +256,7 @@
<value>未找到可用的 Url</value>
</data>
<data name="ServiceGachaLogUrlProviderManualInputInvalid" xml:space="preserve">
<value>提供的Url无效</value>
<value>提供的 Url 无效</value>
</data>
<data name="ServiceGameDetectGameAccountMultiMatched" xml:space="preserve">
<value>存在多个匹配账号,请删除重复的账号</value>
@@ -312,4 +318,172 @@
<data name="ServiceUserProcessCookieRequestUserInfoFailed" xml:space="preserve">
<value>输入的 Cookie 无法获取用户信息</value>
</data>
<data name="ViewControlLoadingText" xml:space="preserve">
<value>加载中,请稍候</value>
</data>
<data name="ViewControlStatisticsCardBlueText" xml:space="preserve">
<value>三星</value>
</data>
<data name="ViewControlStatisticsCardGuarenteeText" xml:space="preserve">
<value>保底</value>
</data>
<data name="ViewControlStatisticsCardOrangeAveragePullText" xml:space="preserve">
<value>五星平均抽数</value>
</data>
<data name="ViewControlStatisticsCardOrangeText" xml:space="preserve">
<value>五星</value>
</data>
<data name="ViewControlStatisticsCardPullText" xml:space="preserve">
<value>抽</value>
</data>
<data name="ViewControlStatisticsCardPurpleText" xml:space="preserve">
<value>四星</value>
</data>
<data name="ViewControlStatisticsCardUpAveragePullText" xml:space="preserve">
<value>UP 平均抽数</value>
</data>
<data name="ViewControlStatisticsCardUpText" xml:space="preserve">
<value>UP</value>
</data>
<data name="ViewDialogAchievementArchiveCreateInputPlaceholder" xml:space="preserve">
<value>在此处输入</value>
</data>
<data name="ViewDialogAchievementArchiveCreateTitle" xml:space="preserve">
<value>设置成就存档的名称</value>
</data>
<data name="ViewDialogAchievementArchiveImportStrategy" xml:space="preserve">
<value>导入模式</value>
</data>
<data name="ViewDialogAchievementArchiveImportStrategyAggressive" xml:space="preserve">
<value>贪婪(添加新数据,更新已完成项)</value>
</data>
<data name="ViewDialogAchievementArchiveImportStrategyLazy" xml:space="preserve">
<value>懒惰(添加新数据,跳过已完成项)</value>
</data>
<data name="ViewDialogAchievementArchiveImportStrategyOverwrite" xml:space="preserve">
<value>覆盖(删除老数据,添加新的数据)</value>
</data>
<data name="ViewDialogAchievementArchiveImportTitle" xml:space="preserve">
<value>为当前存档导入成就</value>
</data>
<data name="ViewDialogCultivateProjectAttachUid" xml:space="preserve">
<value>绑定当前用户与角色</value>
</data>
<data name="ViewDialogCultivateProjectInputPlaceholder" xml:space="preserve">
<value>在此处输入计划名称</value>
</data>
<data name="ViewDialogCultivateProjectTitle" xml:space="preserve">
<value>创建新的养成计划</value>
</data>
<data name="ViewDialogCultivatePromotionDeltaTitle" xml:space="preserve">
<value>添加到当前养成计划</value>
</data>
<data name="ViewDialogDailyNoteNotificationDailyTaskNotify" xml:space="preserve">
<value>每日委托上线提醒</value>
</data>
<data name="ViewDialogDailyNoteNotificationExpeditionNotify" xml:space="preserve">
<value>探索派遣完成提醒</value>
</data>
<data name="ViewDialogDailyNoteNotificationHomeCoinNotifyThreshold" xml:space="preserve">
<value>洞天宝钱提醒阈值</value>
</data>
<data name="ViewDialogDailyNoteNotificationResinNotifyThreshold" xml:space="preserve">
<value>原粹树脂提醒阈值</value>
</data>
<data name="ViewDialogDailyNoteNotificationShowInHomeWidget" xml:space="preserve">
<value>在主页显示卡片</value>
</data>
<data name="ViewDialogDailyNoteNotificationTitle" xml:space="preserve">
<value>设置实时便笺通知</value>
</data>
<data name="ViewDialogDailyNoteNotificationTransformerNotify" xml:space="preserve">
<value>参量质变仪提醒</value>
</data>
<data name="ViewDialogGachaLogImportTitle" xml:space="preserve">
<value>导入祈愿记录</value>
</data>
<data name="ViewDialogGachaLogRefreshProgressTitle" xml:space="preserve">
<value>获取祈愿物品中</value>
</data>
<data name="ViewDialogGachaLogUrlInputPlaceholder" xml:space="preserve">
<value>请输入 Url</value>
</data>
<data name="ViewDialogGachaLogUrlTitle" xml:space="preserve">
<value>手动输入祈愿记录 Url</value>
</data>
<data name="ViewDialogImportExportApp" xml:space="preserve">
<value>导出 App</value>
</data>
<data name="ViewDialogImportExportAppVersion" xml:space="preserve">
<value>导出 App 版本</value>
</data>
<data name="ViewDialogImportExportTime" xml:space="preserve">
<value>导出时间</value>
</data>
<data name="ViewDialogImportUIAFExportListCount" xml:space="preserve">
<value>成就个数</value>
</data>
<data name="ViewDialogImportUIAFExportUIAFVersion" xml:space="preserve">
<value>UIAF 版本</value>
</data>
<data name="ViewDialogImportUIGFExportListCount" xml:space="preserve">
<value>记录条数</value>
</data>
<data name="ViewDialogImportUIGFExportUid" xml:space="preserve">
<value>UID</value>
</data>
<data name="ViewDialogImportUIGFExportUIGFVersion" xml:space="preserve">
<value>UIGF 版本</value>
</data>
<data name="ViewDialogLaunchGameAccountInputPlaceholder" xml:space="preserve">
<value>在此处输入名称</value>
</data>
<data name="ViewDialogLaunchGameAccountTitle" xml:space="preserve">
<value>为账号命名</value>
</data>
<data name="ViewDialogLaunchGamePackageConvertHint" xml:space="preserve">
<value>转换可能需要花费一段时间,请勿关闭胡桃</value>
</data>
<data name="ViewDialogLaunchGamePackageConvertTitle" xml:space="preserve">
<value>转换客户端</value>
</data>
<data name="ViewDialogUserDocumentAction" xml:space="preserve">
<value>立即前往</value>
</data>
<data name="ViewDialogUserDocumentDescription" xml:space="preserve">
<value>进入文档页面并按指示操作</value>
</data>
<data name="ViewDialogUserDocumentHeader" xml:space="preserve">
<value>操作文档</value>
</data>
<data name="ViewDialogUserInputPlaceholder" xml:space="preserve">
<value>在此处输入包含 Stoken 的 Cookie</value>
</data>
<data name="ViewPageAchievementAddArchive" xml:space="preserve">
<value>创建新存档</value>
</data>
<data name="ViewPageAchievementAddArchiveHint" xml:space="preserve">
<value>创建新存档以继续</value>
</data>
<data name="ViewPageAchievementExportLabel" xml:space="preserve">
<value>导出</value>
</data>
<data name="ViewPageAchievementImportFromClipboard" xml:space="preserve">
<value>从剪贴板导入</value>
</data>
<data name="ViewPageAchievementImportFromFile" xml:space="preserve">
<value>从 UIAF 文件导入</value>
</data>
<data name="ViewPageAchievementImportLabel" xml:space="preserve">
<value>导入</value>
</data>
<data name="ViewPageAchievementRemoveArchive" xml:space="preserve">
<value>删除当前存档</value>
</data>
<data name="ViewPageAchievementSearchPlaceholder" xml:space="preserve">
<value>搜索成就名称,描述或编号</value>
</data>
<data name="ViewPageAchievementSortIncompletedItemsFirst" xml:space="preserve">
<value>优先未完成</value>
</data>
</root>

View File

@@ -389,7 +389,7 @@ internal class GameService : IGameService
{
// ContentDialog must be created by main thread.
await ThreadHelper.SwitchToMainThreadAsync();
(bool isOk, string name) = await new GameAccountNameDialog().GetInputNameAsync().ConfigureAwait(false);
(bool isOk, string name) = await new LaunchGameAccountNameDialog().GetInputNameAsync().ConfigureAwait(false);
if (isOk)
{
@@ -433,7 +433,7 @@ internal class GameService : IGameService
/// <inheritdoc/>
public async ValueTask ModifyGameAccountAsync(GameAccount gameAccount)
{
(bool isOk, string name) = await new GameAccountNameDialog().GetInputNameAsync().ConfigureAwait(true);
(bool isOk, string name) = await new LaunchGameAccountNameDialog().GetInputNameAsync().ConfigureAwait(true);
if (isOk)
{

View File

@@ -88,7 +88,7 @@
<None Remove="View\Dialog\GachaLogImportDialog.xaml" />
<None Remove="View\Dialog\GachaLogRefreshProgressDialog.xaml" />
<None Remove="View\Dialog\GachaLogUrlDialog.xaml" />
<None Remove="View\Dialog\GameAccountNameDialog.xaml" />
<None Remove="View\Dialog\LaunchGameAccountNameDialog.xaml" />
<None Remove="View\Dialog\LaunchGamePackageConvertDialog.xaml" />
<None Remove="View\Dialog\LoginMihoyoBBSDialog.xaml" />
<None Remove="View\Dialog\SignInWebViewDialog.xaml" />
@@ -294,7 +294,7 @@
</Page>
</ItemGroup>
<ItemGroup>
<Page Update="View\Dialog\GameAccountNameDialog.xaml">
<Page Update="View\Dialog\LaunchGameAccountNameDialog.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>

View File

@@ -6,18 +6,20 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shci="using:Snap.Hutao.Control.Image"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
mc:Ignorable="d">
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<shci:CachedImage
Width="120"
Height="120"
EnableLazyLoading="False"
Source="{StaticResource UI_EmotionIcon272}"/>
<TextBlock
Margin="0,16,0,0"
HorizontalAlignment="Center"
Style="{StaticResource SubtitleTextBlockStyle}"
Text="加载中,请稍候"/>
Text="{shcm:ResourceString Name=ViewControlLoadingText}"/>
<ProgressRing Margin="0,16,0,0" IsActive="True"/>
</StackPanel>
</cwuc:Loading>

View File

@@ -7,6 +7,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shci="using:Snap.Hutao.Control.Image"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shcp="using:Snap.Hutao.Control.Panel"
xmlns:shmbg="using:Snap.Hutao.Model.Binding.Gacha"
xmlns:shvc="using:Snap.Hutao.View.Control"
@@ -43,13 +44,13 @@
Margin="0,0,8,0"
VerticalAlignment="Center"
Foreground="#FF0063FF"
Text="保底"
Text="{shcm:ResourceString Name=ViewControlStatisticsCardGuarenteeText}"
Visibility="{Binding IsGuarentee, Converter={StaticResource BoolToVisibilityConverter}}"/>
<TextBlock
Margin="0,0,8,0"
VerticalAlignment="Center"
Foreground="#FFFFA400"
Text="UP"
Text="{shcm:ResourceString Name=ViewControlStatisticsCardUpText}"
Visibility="{Binding IsUp, Converter={StaticResource BoolToVisibilityConverter}}"/>
<TextBlock
@@ -147,7 +148,7 @@
<TextBlock
Margin="12,0,0,12"
VerticalAlignment="Bottom"
Text=""/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardPullText}"/>
</StackPanel>
<Grid ColumnSpacing="4">
@@ -184,7 +185,7 @@
VerticalAlignment="Center"
Foreground="{StaticResource OrangeBrush}"
Style="{StaticResource BaseTextBlockStyle}"
Text="五星"/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardOrangeText}"/>
</Grid>
</Border>
<Border Grid.Column="1" Style="{StaticResource BorderCardStyle}">
@@ -216,7 +217,7 @@
VerticalAlignment="Center"
Foreground="{StaticResource PurpleBrush}"
Style="{StaticResource BaseTextBlockStyle}"
Text="四星"/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardPurpleText}"/>
</Grid>
</Border>
</Grid>
@@ -246,7 +247,7 @@
<TextBlock
Foreground="{StaticResource OrangeBrush}"
Style="{StaticResource BodyTextBlockStyle}"
Text="五星"/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardOrangeText}"/>
<TextBlock
HorizontalAlignment="Right"
FontFamily="{StaticResource CascadiaMonoAndMiSans}"
@@ -258,7 +259,7 @@
<TextBlock
Foreground="{StaticResource PurpleBrush}"
Style="{StaticResource BodyTextBlockStyle}"
Text="四星"/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardPurpleText}"/>
<TextBlock
HorizontalAlignment="Right"
FontFamily="{StaticResource CascadiaMonoAndMiSans}"
@@ -270,7 +271,7 @@
<TextBlock
Foreground="{StaticResource BlueBrush}"
Style="{StaticResource BodyTextBlockStyle}"
Text="三星"/>
Text="{shcm:ResourceString Name=ViewControlStatisticsCardBlueText}"/>
<TextBlock
HorizontalAlignment="Right"
FontFamily="{StaticResource CascadiaMonoAndMiSans}"
@@ -280,14 +281,14 @@
</Grid>
<Grid Margin="0,2,0,0">
<TextBlock Style="{StaticResource BodyTextBlockStyle}" Text="五星平均抽数"/>
<TextBlock Style="{StaticResource BodyTextBlockStyle}" Text="{shcm:ResourceString Name=ViewControlStatisticsCardOrangeAveragePullText}"/>
<TextBlock
HorizontalAlignment="Right"
Style="{StaticResource BodyTextBlockStyle}"
Text="{Binding AverageOrangePullFormatted}"/>
</Grid>
<Grid Margin="0,2,0,0">
<TextBlock Style="{StaticResource BodyTextBlockStyle}" Text="UP 平均抽数"/>
<TextBlock Style="{StaticResource BodyTextBlockStyle}" Text="{shcm:ResourceString Name=ViewControlStatisticsCardUpAveragePullText}"/>
<TextBlock
HorizontalAlignment="Right"
Style="{StaticResource BodyTextBlockStyle}"

View File

@@ -4,10 +4,11 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="设置成就存档的名称"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogAchievementArchiveCreateTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -16,6 +17,6 @@
x:Name="InputText"
Margin="0,0,0,8"
VerticalAlignment="Top"
PlaceholderText="在此处输入"/>
PlaceholderText="{shcm:ResourceString Name=ViewDialogAchievementArchiveCreateInputPlaceholder}"/>
</Grid>
</ContentDialog>

View File

@@ -5,10 +5,11 @@
xmlns:cwuc="using:CommunityToolkit.WinUI.UI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="为当前存档导入成就"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogAchievementArchiveImportTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -22,51 +23,51 @@
ColumnSpacing="16"
Columns="3"
RowSpacing="16">
<cwuc:HeaderedContentControl Header="导出App">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportApp}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIAF.Info.ExportApp, Mode=OneWay, TargetNullValue=未知}"/>
Text="{x:Bind UIAF.Info.ExportApp, Mode=OneWay, TargetNullValue=Unknown}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="导出时间">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportTime}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIAF.Info.ExportDateTime.LocalDateTime, Mode=OneWay, TargetNullValue=未知}"/>
Text="{x:Bind UIAF.Info.ExportDateTime.LocalDateTime, Mode=OneWay, TargetNullValue=Unknown}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="导出App版本">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportAppVersion}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIAF.Info.ExportAppVersion, Mode=OneWay, TargetNullValue=未知}"/>
Text="{x:Bind UIAF.Info.ExportAppVersion, Mode=OneWay, TargetNullValue=Unknown}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="UIAF 版本">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportUIAFExportUIAFVersion}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIAF.Info.UIAFVersion, Mode=OneWay, TargetNullValue=未知}"/>
Text="{x:Bind UIAF.Info.UIAFVersion, Mode=OneWay, TargetNullValue=Unknown}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="成就个数">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportUIAFExportListCount}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIAF.List.Count, Mode=OneWay, TargetNullValue=未知}"/>
Text="{x:Bind UIAF.List.Count, Mode=OneWay, TargetNullValue=Unknown}"/>
</cwuc:HeaderedContentControl>
</cwuc:UniformGrid>
<RadioButtons
Name="ImportModeSelector"
Grid.Row="1"
Margin="0,16,0,0"
Header="导入模式"
Header="{shcm:ResourceString Name=ViewDialogAchievementArchiveImportStrategy}"
SelectedIndex="0">
<RadioButton Content="贪婪(添加新数据,更新已完成项)"/>
<RadioButton Content="懒惰(添加新数据,跳过已完成项)"/>
<RadioButton Content="覆盖(删除老数据,添加新的数据)"/>
<RadioButton Content="{shcm:ResourceString Name=ViewDialogAchievementArchiveImportStrategyAggressive}"/>
<RadioButton Content="{shcm:ResourceString Name=ViewDialogAchievementArchiveImportStrategyLazy}"/>
<RadioButton Content="{shcm:ResourceString Name=ViewDialogAchievementArchiveImportStrategyOverwrite}"/>
</RadioButtons>
</Grid>
</ContentDialog>

View File

@@ -5,12 +5,8 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Closed="OnContentDialogClosed"
Style="{StaticResource DefaultContentDialogStyle}"
Style="{StaticResource WebView2ContentDialogStyle}"
mc:Ignorable="d">
<ContentControl.Resources>
<Thickness x:Key="ContentDialogPadding">0</Thickness>
<CornerRadius x:Key="OverlayCornerRadius">0</CornerRadius>
</ContentControl.Resources>
<Grid Loaded="OnGridLoaded">
<WebView2
Name="WebView"

View File

@@ -1,24 +1,16 @@
<!-- Copyright (c) Microsoft Corporation and Contributors. -->
<!-- Licensed under the MIT License. -->
<ContentDialog
<ContentDialog
x:Class="Snap.Hutao.View.Dialog.CommunityGameRecordDialog"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Closed="OnContentDialogClosed"
Style="{StaticResource DefaultContentDialogStyle}"
Style="{StaticResource WebView2ContentDialogStyle}"
mc:Ignorable="d">
<ContentControl.Resources>
<Thickness x:Key="ContentDialogPadding">0</Thickness>
<CornerRadius x:Key="OverlayCornerRadius">0</CornerRadius>
</ContentControl.Resources>
<Grid Loaded="OnGridLoaded">
<WebView2
Name="WebView"
Width="360"
Height="580"
AllowFocusOnInteraction="True"/>
Height="580"/>
</Grid>
</ContentDialog>

View File

@@ -4,10 +4,11 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="创建新的养成计划"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogCultivateProjectTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -15,10 +16,10 @@
<TextBox
x:Name="InputText"
VerticalAlignment="Top"
PlaceholderText="在此处输入计划名称"/>
PlaceholderText="{shcm:ResourceString Name=ViewDialogCultivateProjectInputPlaceholder}"/>
<CheckBox
x:Name="AttachUidBox"
Margin="0,8,0,0"
Content="绑定当前选中的账号角色"/>
Content="{shcm:ResourceString Name=ViewDialogCultivateProjectAttachUid}"/>
</StackPanel>
</ContentDialog>

View File

@@ -5,13 +5,14 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shci="using:Snap.Hutao.Control.Image"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shvc="using:Snap.Hutao.View.Control"
xmlns:shvd="using:Snap.Hutao.View.Dialog"
Title="添加到当前养成计划"
Title="{shcm:ResourceString Name=ViewDialogCultivatePromotionDeltaTitle}"
d:DataContext="{d:DesignInstance shvd:CultivatePromotionDeltaDialog}"
CloseButtonText="取消"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">

View File

@@ -4,17 +4,18 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shme="using:Snap.Hutao.Model.Entity"
xmlns:wsc="using:WinUICommunity.SettingsUI.Controls"
Title="设置实时便笺通知"
Title="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationTitle}"
d:DataContext="{d:DesignInstance shme:DailyNoteEntry}"
DefaultButton="Primary"
PrimaryButtonText="保存"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogSavePrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
<ScrollViewer>
<wsc:SettingsGroup Margin="0,-24,0,0" Header="{Binding UserGameRole}">
<wsc:Setting Padding="16,8" Header="原粹树脂提醒阈值">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationResinNotifyThreshold}">
<Slider
MinWidth="160"
Margin="32,0,0,0"
@@ -22,23 +23,23 @@
Minimum="0"
Value="{Binding ResinNotifyThreshold, Mode=TwoWay}"/>
</wsc:Setting>
<wsc:Setting Padding="16,8" Header="洞天宝钱提醒阈值">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationHomeCoinNotifyThreshold}">
<Slider
MinWidth="160"
Maximum="2400"
Minimum="0"
Value="{Binding HomeCoinNotifyThreshold, Mode=TwoWay}"/>
</wsc:Setting>
<wsc:Setting Padding="16,8" Header="参量质变仪提醒">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationTransformerNotify}">
<ToggleSwitch IsOn="{Binding TransformerNotify, Mode=TwoWay}" Style="{StaticResource ToggleSwitchSettingStyle}"/>
</wsc:Setting>
<wsc:Setting Padding="16,8" Header="每日委托上线提醒">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationDailyTaskNotify}">
<ToggleSwitch IsOn="{Binding DailyTaskNotify, Mode=TwoWay}" Style="{StaticResource ToggleSwitchSettingStyle}"/>
</wsc:Setting>
<wsc:Setting Padding="16,8" Header="探索派遣完成提醒">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationExpeditionNotify}">
<ToggleSwitch IsOn="{Binding ExpeditionNotify, Mode=TwoWay}" Style="{StaticResource ToggleSwitchSettingStyle}"/>
</wsc:Setting>
<wsc:Setting Padding="16,8" Header="在主页显示卡片">
<wsc:Setting Padding="16,8" Header="{shcm:ResourceString Name=ViewDialogDailyNoteNotificationShowInHomeWidget}">
<ToggleSwitch IsOn="{Binding ShowInHomeWidget, Mode=TwoWay}" Style="{StaticResource ToggleSwitchSettingStyle}"/>
</wsc:Setting>
</wsc:SettingsGroup>

View File

@@ -4,13 +4,12 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Closed="OnContentDialogClosed"
Style="{StaticResource DefaultContentDialogStyle}"
DefaultButton="Primary"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogCompletePrimaryButtonText}"
Style="{StaticResource WebView2ContentDialogStyle}"
mc:Ignorable="d">
<ContentControl.Resources>
<Thickness x:Key="ContentDialogPadding">0</Thickness>
<CornerRadius x:Key="OverlayCornerRadius">0</CornerRadius>
</ContentControl.Resources>
<Grid Loaded="OnGridLoaded">
<WebView2
Name="WebView"

View File

@@ -5,10 +5,11 @@
xmlns:cwuc="using:CommunityToolkit.WinUI.UI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="导入祈愿记录"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogGachaLogImportTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -22,42 +23,42 @@
ColumnSpacing="16"
Columns="3"
RowSpacing="16">
<cwuc:HeaderedContentControl Header="导出App">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportApp}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIGF.Info.ExportApp, Mode=OneWay, TargetNullValue=未知}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="导出时间">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportTime}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIGF.Info.ExportDateTime.LocalDateTime, Mode=OneWay, TargetNullValue=未知}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="导出App版本">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportExportAppVersion}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIGF.Info.ExportAppVersion, Mode=OneWay, TargetNullValue=未知}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="UIGF 版本">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportUIGFExportUIGFVersion}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIGF.Info.UIGFVersion, Mode=OneWay, TargetNullValue=未知}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="记录条数">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportUIGFExportListCount}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind UIGF.List.Count, Mode=OneWay, TargetNullValue=未知}"/>
</cwuc:HeaderedContentControl>
<cwuc:HeaderedContentControl Header="UID">
<cwuc:HeaderedContentControl Header="{shcm:ResourceString Name=ViewDialogImportUIGFExportUid}">
<TextBlock
Margin="0,4,0,0"
Opacity="0.6"

View File

@@ -5,8 +5,9 @@
xmlns:cwucont="using:CommunityToolkit.WinUI.UI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shvc="using:Snap.Hutao.View.Control"
Title="获取祈愿物品中"
Title="{shcm:ResourceString Name=ViewDialogGachaLogRefreshProgressTitle}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">

View File

@@ -4,14 +4,15 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="手动输入祈愿记录Url"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogGachaLogUrlTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
<Grid>
<TextBox x:Name="InputText" PlaceholderText="请输入Url"/>
<TextBox x:Name="InputText" PlaceholderText="{shcm:ResourceString Name=ViewDialogGachaLogUrlInputPlaceholder}"/>
</Grid>
</ContentDialog>

View File

@@ -1,13 +1,14 @@
<ContentDialog
x:Class="Snap.Hutao.View.Dialog.GameAccountNameDialog"
x:Class="Snap.Hutao.View.Dialog.LaunchGameAccountNameDialog"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="为账号命名"
CloseButtonText="取消"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Title="{shcm:ResourceString Name=ViewDialogLaunchGameAccountTitle}"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
PrimaryButtonText="确认"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -16,6 +17,6 @@
x:Name="InputText"
Margin="0,0,0,0"
VerticalAlignment="Top"
PlaceholderText="在此处输入名称"/>
PlaceholderText="{shcm:ResourceString Name=ViewDialogLaunchGameAccountInputPlaceholder}"/>
</Grid>
</ContentDialog>

View File

@@ -8,13 +8,13 @@ namespace Snap.Hutao.View.Dialog;
/// <summary>
/// 游戏账号命名对话框
/// </summary>
public sealed partial class GameAccountNameDialog : ContentDialog
public sealed partial class LaunchGameAccountNameDialog : ContentDialog
{
/// <summary>
/// 构造一个新的游戏账号命名对话框
/// </summary>
/// <param name="window">窗体</param>
public GameAccountNameDialog()
public LaunchGameAccountNameDialog()
{
InitializeComponent();
XamlRoot = Ioc.Default.GetRequiredService<MainWindow>().Content.XamlRoot;

View File

@@ -7,14 +7,15 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shvd="using:Snap.Hutao.View.Dialog"
Title="转换客户端"
Title="{shcm:ResourceString Name=ViewDialogLaunchGamePackageConvertTitle}"
d:DataContext="{d:DesignInstance shvd:LaunchGamePackageConvertDialog}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
<StackPanel>
<TextBlock Text="转换可能需要花费一段时间,请勿关闭胡桃"/>
<TextBlock Text="{shcm:ResourceString Name=ViewDialogLaunchGamePackageConvertHint}"/>
<TextBlock
MinWidth="360"
Margin="0,16,0,8"

View File

@@ -4,11 +4,11 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="米游社每日签到"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
Closed="OnContentDialogClosed"
DefaultButton="Primary"
PrimaryButtonText="完成"
Style="{StaticResource DefaultContentDialogStyle}"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogCompletePrimaryButtonText}"
Style="{StaticResource WebView2ContentDialogStyle}"
mc:Ignorable="d">
<Grid Loaded="OnGridLoaded">

View File

@@ -1,5 +1,5 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See LICENSE in the project root for license information.
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
using Microsoft.Extensions.DependencyInjection;
using Microsoft.UI.Xaml.Controls;
@@ -11,7 +11,7 @@ using Snap.Hutao.Web.Bridge;
namespace Snap.Hutao.View.Dialog;
/// <summary>
/// ǩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD>ͼ<EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD>
/// 签到网页视图对话框
/// </summary>
public sealed partial class SignInWebViewDialog : ContentDialog
{
@@ -20,9 +20,9 @@ public sealed partial class SignInWebViewDialog : ContentDialog
private SignInJsInterface? signInJsInterface;
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>ǩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD>ͼ<EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD>
/// 构造一个新的签到网页视图对话框
/// </summary>
/// <param name="window"><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
/// <param name="window">窗口</param>
public SignInWebViewDialog()
{
InitializeComponent();

View File

@@ -4,12 +4,13 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:wsc="using:WinUICommunity.SettingsUI.Controls"
Title="设置 Cookie"
CloseButtonText="取消"
CloseButtonText="{shcm:ResourceString Name=ContentDialogCancelCloseButtonText}"
DefaultButton="Primary"
IsPrimaryButtonEnabled="False"
PrimaryButtonText="请输入Cookie"
PrimaryButtonText="{shcm:ResourceString Name=ContentDialogConfirmPrimaryButtonText}"
Style="{StaticResource DefaultContentDialogStyle}"
mc:Ignorable="d">
@@ -18,29 +19,18 @@
x:Name="InputText"
Margin="0,0,0,8"
VerticalAlignment="Top"
PlaceholderText="在此处输入包含 Stoken 的字符串"
PlaceholderText="{shcm:ResourceString Name=ViewDialogUserInputPlaceholder}"
TextChanged="InputTextChanged"/>
<wsc:SettingsGroup Margin="0,-48,0,0">
<wsc:Setting
HorizontalAlignment="Stretch"
Description="HolographicHat/GetToken"
Header="Github 上的第三方工具"
Icon="&#xEC7A;">
<HyperlinkButton
Margin="12,0,0,0"
Padding="6"
Content="前往下载"
NavigateUri="{StaticResource HolographicHat_GetToken_Release}"/>
</wsc:Setting>
<wsc:Setting
HorizontalAlignment="Stretch"
Description="进入文档页面并按指示操作"
Header="操作文档"
Description="{shcm:ResourceString Name=ViewDialogUserDocumentDescription}"
Header="{shcm:ResourceString Name=ViewDialogUserDocumentHeader}"
Icon="&#xEB41;">
<HyperlinkButton
Margin="12,0,0,0"
Padding="6"
Content="立即前往"
Content="{shcm:ResourceString Name=ViewDialogUserDocumentAction}"
NavigateUri="{StaticResource DocumentLink_MhyAccountSwitch}"/>
</wsc:Setting>
</wsc:SettingsGroup>

View File

@@ -17,6 +17,7 @@ internal static class CoreWebView2EnvironmentExtension
/// <param name="environment">环境</param>
public static void Exit(this CoreWebView2Environment environment)
{
// 暂不支持
IReadOnlyList<CoreWebView2ProcessInfo> processInfos = environment.GetProcessInfos();
foreach (CoreWebView2ProcessInfo processInfo in processInfos)

View File

@@ -50,7 +50,7 @@
Margin="12,6,6,0"
HorizontalAlignment="Stretch"
VerticalContentAlignment="Center"
PlaceholderText="搜索成就名称,描述或编号"
PlaceholderText="{shcm:ResourceString Name=ViewPageAchievementSearchPlaceholder}"
QueryIcon="{shcm:FontIcon Glyph=&#xE721;}"
Text="{Binding SearchText, Mode=TwoWay}">
<mxi:Interaction.Behaviors>
@@ -77,38 +77,38 @@
<AppBarButton
Command="{Binding AddArchiveCommand}"
Icon="{shcm:FontIcon Glyph=&#xE710;}"
Label="创建新存档"/>
Label="{shcm:ResourceString Name=ViewPageAchievementAddArchive}"/>
<AppBarButton
Command="{Binding RemoveArchiveCommand}"
Icon="{shcm:FontIcon Glyph=&#xE74D;}"
Label="删除当前存档"/>
Label="{shcm:ResourceString Name=ViewPageAchievementRemoveArchive}"/>
<AppBarSeparator/>
<AppBarButton Icon="{shcm:FontIcon Glyph=&#xE8B5;}" Label="导入">
<AppBarButton Icon="{shcm:FontIcon Glyph=&#xE8B5;}" Label="{shcm:ResourceString Name=ViewPageAchievementImportLabel}">
<AppBarButton.Flyout>
<MenuFlyout Placement="BottomEdgeAlignedRight">
<MenuFlyoutItem
Command="{Binding ImportUIAFFromClipboardCommand}"
Icon="{shcm:FontIcon Glyph=&#xE77F;}"
Text="从剪贴板导入"/>
Text="{shcm:ResourceString Name=ViewPageAchievementImportFromClipboard}"/>
<MenuFlyoutItem
Command="{Binding ImportUIAFFromFileCommand}"
Icon="{shcm:FontIcon Glyph=&#xE8E5;}"
Text="从 UIAF 文件导入"/>
Text="{shcm:ResourceString Name=ViewPageAchievementImportFromFile}"/>
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<AppBarButton
Command="{Binding ExportAsUIAFToFileCommand}"
Icon="{shcm:FontIcon Glyph=&#xEDE1;}"
Label="导出"/>
Label="{shcm:ResourceString Name=ViewPageAchievementExportLabel}"/>
<AppBarSeparator/>
<AppBarToggleButton
Command="{Binding SortIncompletedSwitchCommand}"
Icon="{shcm:FontIcon Glyph=&#xE8CB;}"
IsChecked="{Binding IsIncompletedItemsFirst}"
Label="优先未完成"/>
Label="{shcm:ResourceString Name=ViewPageAchievementSortIncompletedItemsFirst}"/>
</CommandBar>
</Grid>
@@ -240,13 +240,13 @@
Margin="0,16,0,0"
HorizontalAlignment="Center"
Style="{StaticResource SubtitleTextBlockStyle}"
Text="创建新存档以继续"/>
Text="{shcm:ResourceString Name=ViewPageAchievementAddArchiveHint}"/>
<Button
Margin="0,16,0,0"
Padding="16"
HorizontalAlignment="Stretch"
Command="{Binding AddArchiveCommand}"
Content="创建新存档"/>
Content="{shcm:ResourceString Name=ViewPageAchievementAddArchive}"/>
</StackPanel>
</Grid>
</Grid>

View File

@@ -143,7 +143,7 @@ internal class SettingViewModel : Abstraction.ViewModel
[MemberNotNull(nameof(selectedBackdropType))]
set
{
if (SetProperty(ref selectedBackdropType, value))
if (SetProperty(ref selectedBackdropType, value) && value != null)
{
selectedBackdropTypeEntry.Value = value.Value.ToString();
appDbContext.Settings.UpdateAndSave(selectedBackdropTypeEntry);
@@ -238,7 +238,7 @@ internal class SettingViewModel : Abstraction.ViewModel
.NavigateAsync<View.Page.TestPage>(Service.Navigation.INavigationAwaiter.Default)
.ConfigureAwait(false);
#else
await Task.Yield();
await Windows.System.Launcher.LaunchUriAsync(new(@"ms-windows-store://pdp/?productid=9PH4NXJ2JN52"));
#endif
}
}