Merge pull request #3 from FlowerRealm/codex/add-codex-integration

Clarify indeterminate flag docs
This commit is contained in:
Flower Realm 2025-10-18 10:46:48 +08:00 committed by GitHub
commit 6951c17486
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 35 additions and 2 deletions

View file

@ -20,20 +20,23 @@ public static class ConfigHandler
public static Config? LoadConfig()
{
Config? config = null;
var result = EmbedUtils.LoadResource(Utils.GetConfigPath(_configRes));
var configPath = Utils.GetConfigPath(_configRes);
var configFileExists = File.Exists(configPath);
var result = EmbedUtils.LoadResource(configPath);
if (result.IsNotEmpty())
{
config = JsonUtils.Deserialize<Config>(result);
}
else
{
if (File.Exists(Utils.GetConfigPath(_configRes)))
if (configFileExists)
{
Logging.SaveLog("LoadConfig Exception");
return null;
}
}
var isNewConfig = config == null;
config ??= new Config();
config.CoreBasicItem ??= new()
@ -171,6 +174,22 @@ public static class ConfigHandler
config.SystemProxyItem.SystemProxyExceptions = Utils.IsWindows() ? Global.SystemProxyExceptionsWindows : Global.SystemProxyExceptionsLinux;
}
if (isNewConfig && !configFileExists)
{
try
{
var ret = SaveConfig(config).GetAwaiter().GetResult();
if (ret != 0)
{
Logging.SaveLog($"{_tag}: Failed to create default config file.");
}
}
catch (Exception ex)
{
Logging.SaveLog($"{_tag}: Failed to create default config file", ex);
}
}
return config;
}

View file

@ -47,6 +47,13 @@ public class ProfilesViewModel : MyReactiveObject
[Reactive]
public string SubUsageText { get; set; }
/// <summary>
/// 当订阅用量仍在请求、或远端未提供总流量时保持进度条在“未知/占位”马灯状态,避免显示 0% 等误导性的数值。
/// 该值直接绑定到视图层进度条的 <c>IsIndeterminate</c> 属性。
/// </summary>
[Reactive]
public bool SubUsageIndeterminate { get; set; }
[Reactive]
public bool SubUsageIndeterminate { get; set; }
@ -56,6 +63,13 @@ public class ProfilesViewModel : MyReactiveObject
[Reactive]
public string SubExpireText { get; set; }
/// <summary>
/// 在未能计算到期日或仍在加载时,让到期进度条保持“不确定”马灯动画,提示用户等待最新数据。
/// 该值直接绑定到视图层进度条的 <c>IsIndeterminate</c> 属性。
/// </summary>
[Reactive]
public bool SubExpireIndeterminate { get; set; }
[Reactive]
public bool SubExpireIndeterminate { get; set; }