From ad6e61daf3fed635628a9b49d4d03d93c5a52a12 Mon Sep 17 00:00:00 2001 From: guiling Date: Sat, 9 May 2026 21:25:52 +0800 Subject: [PATCH] fix conflicts --- CHANGELOG.md | 14 +++++++++++--- SettingsWindow.xaml | 2 +- ViewModels/MainViewModel.cs | 4 ++-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 427f6f2..169d898 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,19 @@ # Changelog +## v1.0.2 (2026-05-09) + +### 更改 +- **刷新率从 300ms 提升至 100ms**,速度显示和曲线图近乎实时 +- 历史数据点从 200 增至 600,保持约 60 秒曲线窗口 + +### 修复 +- 设置窗口版本号与保存按钮重叠问题 + ## v1.0.1 (2026-05-08) ### 修复 -- **节点切换不彻底** — 切换节点后自动遍历并重路由所有引用该组的父级服务组(如 `🌍 国外媒体`、`📲 电报信息`),确保规则匹配的流量真正经过新代理,解决 "UI 和 Web 面板显示已切换,实际地区未改变" 的问题 +- **节点切换不彻底** — 切换节点后自动遍历并重路由所有引用该组的父级 Selector 组(如 `🌍 国外媒体`、`📲 电报信息`),确保规则匹配的流量真正经过新代理,解决 "UI 和 Web 面板显示已切换,实际地区未改变" 的问题 - **节点选择不再依赖硬编码名称** — 改为关键字模糊匹配(`选择` `节点` `Proxy` `Auto` `Select` `自動`),适配各种命名习惯(`🔰 选择节点` `🌍 节点选择` 等),自动选代理选项最多的组 - **配置文件持久化修复** — 单文件发布版改用实际 EXE 目录保存 `config.json`,不再因临时解压路径变化丢失设置 - **下拉框闪烁修复** — `StaysOpen="True"` 防止点按后立即收回,`SelectionChanged` 事件替代 `MouseLeftButtonUp` @@ -21,10 +30,9 @@ - **轻量版运行时引导** — 缺 .NET 8 时自动打开下载页面 - **中文项目文档** — `README.md` 含功能介绍、快速开始、项目结构、配置说明 -## v1.0.0 (初始版本) +## v1.0.0 (2026-05-07) - 悬浮毛玻璃窗口,实时显示 Clash Meta 下载/上传速度 -- 300ms 刷新率,速度曲线图 (sparkline) - 节点名显示,延迟测速(⚡ 手动触发) - macOS 风格红绿灯窗口控件 - 始终置顶,可拖拽,隐藏任务栏 diff --git a/SettingsWindow.xaml b/SettingsWindow.xaml index 0f8a238..0c6fece 100644 --- a/SettingsWindow.xaml +++ b/SettingsWindow.xaml @@ -98,7 +98,7 @@ - diff --git a/ViewModels/MainViewModel.cs b/ViewModels/MainViewModel.cs index c5db9d7..0b0169e 100644 --- a/ViewModels/MainViewModel.cs +++ b/ViewModels/MainViewModel.cs @@ -22,14 +22,14 @@ public class MainViewModel : INotifyPropertyChanged, IDisposable private DateTime _lastNodeFetchTime = DateTime.MinValue; private bool _isPolling; private string? _groupName; - private const int MaxHistoryPoints = 200; + private const int MaxHistoryPoints = 600; private static readonly TimeSpan NodeFetchInterval = TimeSpan.FromSeconds(3); public MainViewModel() { var config = ConfigService.Load(); _apiService = new ClashApiService(config); - _speedTimer = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(300) }; + _speedTimer = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(100) }; _speedTimer.Tick += OnSpeedTimerTick; }