添加单实例限制、应用图标、移除托盘设置菜单、快捷键暂停/恢复功能

单实例限制:通过命名Mutex和窗口消息广播确保只能运行一个实例,再次启动时唤起已有窗口

应用图标:exe文件嵌入app.ico,托盘和窗口图标统一使用该图标文件

移除托盘右键菜单中与显示主界面重复的设置选项

快捷键暂停/恢复:托盘菜单和主界面侧边栏均添加切换按钮,通过MainViewModel.IsHotKeyEnabled双向同步
This commit is contained in:
2026-05-10 14:10:52 +08:00
parent b715904439
commit f33c89d2c4
8 changed files with 116 additions and 26 deletions

View File

@@ -66,6 +66,9 @@ public partial class MainViewModel : ObservableObject
[ObservableProperty]
private bool _isAutoStart;
[ObservableProperty]
private bool _isHotKeyEnabled = true;
// ───────────────────────────── 命令 ─────────────────────────────
[RelayCommand]
@@ -94,6 +97,15 @@ public partial class MainViewModel : ObservableObject
_logService.Info(IsAutoStart ? "已启用开机自启动" : "已关闭开机自启动");
}
[RelayCommand]
private void ToggleHotKey()
{
IsHotKeyEnabled = !IsHotKeyEnabled;
_hotKeyManager.IsEnabled = IsHotKeyEnabled;
var status = IsHotKeyEnabled ? "已恢复" : "已暂停";
_logService.Info($"{status}快捷键功能");
}
/// <summary>
/// 供 MainWindow 外部调用,用于输出提示信息
/// </summary>