From 5d047d1c6916c79785c7a47703d5063401bf72ca Mon Sep 17 00:00:00 2001 From: ysicing Date: Thu, 1 Oct 2026 18:12:39 +0800 Subject: [PATCH] =?UTF-8?q?chore(snapshot):=20=E6=9B=B4=E6=96=B0=E6=A8=A1?= =?UTF-8?q?=E6=8B=9F=E5=8D=87=E7=BA=A7=E6=95=B0=E6=8D=AE=E5=92=8C=E5=8F=8C?= =?UTF-8?q?=E8=AF=AD=E6=91=98=E8=A6=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../XStatsUI/Snapshot/SnapshotRenderer.swift | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Packages/XStatsKit/Sources/XStatsUI/Snapshot/SnapshotRenderer.swift b/Packages/XStatsKit/Sources/XStatsUI/Snapshot/SnapshotRenderer.swift index c2b20f5..7bfdf5d 100644 --- a/Packages/XStatsKit/Sources/XStatsUI/Snapshot/SnapshotRenderer.swift +++ b/Packages/XStatsKit/Sources/XStatsUI/Snapshot/SnapshotRenderer.swift @@ -79,12 +79,16 @@ enum SnapshotRenderer { model.startupItems.refresh() model.uninstaller.loadApps() try? await Task.sleep(for: .seconds(2)) + // 固定的虚构更新仅用于离屏截图,不随正式发布版本推进,也不执行检查或安装。 + // .invalid 是演示地址;中英文摘要沿用真实更新的语言选择规则。 model.updates.showPreview(UpdateRelease( - version: "0.3.0", build: "3", date: "2026-09-20", minimumSystem: "14.0", - url: URL(string: "https://getopenstats.com/download/OpenStats-0.3.0.zip")!, sha256: String(repeating: "0", count: 64), - size: 9_600_000, dmg: nil, - notes: [tr("在线升级:发现新版本时显示更新摘要,一键安装并自动重启"), tr("连接探测只在需要时运行,更省电"), tr("进程页刷新频率调整为每 2 秒")], - changelog: URL(string: "https://getopenstats.com/#changelog"))) + version: "9.9.9", build: "9999", date: "2026-10-01", minimumSystem: "14.0", + url: URL(string: "https://example.invalid/XStats-9.9.9-AppleSilicon.zip")!, sha256: String(repeating: "0", count: 64), + size: 9_600_000, dmg: URL(string: "https://example.invalid/XStats-9.9.9-AppleSilicon.dmg"), + notes: ["优化菜单栏弹窗的显示与交互", "改善日历布局与农历显示", "减少后台重复计算,保持原有采样频率"], + changelog: URL(string: "https://github.com/ysicing/XStats/blob/main/CHANGELOG.md"), + englishNotes: ["Improve menu bar popover display and interaction", "Improve calendar layout and lunar date display", + "Reduce repeated background work while preserving sampling rates"])) for (appearanceName, suffix) in [(NSAppearance.Name.aqua, "light"), (.darkAqua, "dark")] { guard let appearance = NSAppearance(named: appearanceName) else { continue }