feat: 添加对Wine平台的兼容 (#2572)

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
This commit is contained in:
KongDemian
2026-01-01 14:10:26 +08:00
committed by GitHub
parent d46d594f31
commit 71e64fe2a0
8 changed files with 357 additions and 13 deletions

View File

@@ -34,6 +34,8 @@ using BetterGenshinImpact.ViewModel.Windows;
using Wpf.Ui;
using Wpf.Ui.Controls;
using BetterGenshinImpact.Platform.Wine;
namespace BetterGenshinImpact.ViewModel;
public partial class MainWindowViewModel : ObservableObject, IViewModel
@@ -164,6 +166,13 @@ public partial class MainWindowViewModel : ObservableObject, IViewModel
_logger.LogInformation($"主题类型已从 {originalThemeType} 修正为 {themeType},因为当前系统不支持该主题效果");
}
if (WinePlatformAddon.IsRunningOnWine)
{
// Wine 平台下不应用主题
_logger.LogInformation("检测到运行在 Wine 平台,跳过主题应用");
return;
}
switch (themeType)
{
case ThemeType.DarkNone:
@@ -429,8 +438,8 @@ public partial class MainWindowViewModel : ObservableObject, IViewModel
deviceId = "default"; // 如果获取设备ID失败使用默认值
}
// 每个设备只运行一次
if (!Config.CommonConfig.OnceHadRunDeviceIdList.Contains(deviceId))
// 每个设备只运行一次 | 在Wine上会崩溃
if (!Config.CommonConfig.OnceHadRunDeviceIdList.Contains(deviceId) && !WinePlatformAddon.IsRunningOnWine)
{
WelcomeDialog prompt = new WelcomeDialog
{