Commit Graph
20 Commits
Author SHA1 Message Date
gentpan 76e7427dfe 发布 0.4.0:主窗口改用液态玻璃,菜单栏弹窗更紧凑,应用 CPU 改为占整机比例 2026-09-16 21:32:38 +05:00
gentpan 5cca1169bd IP 地址区块:弹窗只显示公网地址,没有 IPv6 时不占行
- 菜单栏弹窗里不再显示本地 IPv4、本地 IPv6 与路由器,这三行只在主窗口的网络页显示
- 网卡没有 IPv6 地址时不显示“本地 IPv6”,拿不到公网 IPv6 时不显示“公网 IPv6”,不再用“—”占一行
2026-09-16 21:01:14 +05:00
gentpan 46d5b33030 连接探测标题右侧不再显示探测地址与“每秒一次” 2026-09-16 20:57:50 +05:00
gentpan 8f7691d290 进程 CPU 在概览里改为占整机的比例,悬停显示单核口径
用户反馈 CPU 占用高:CPU 弹窗“按应用汇总”与仪表盘“高占用进程”按单核满载为 100% 计(活动监视器的算法),多核 Mac 上一个应用常显示 99%、75%,又放在整机总占用下面,容易误读。

- Format.machineShare:单核口径 ÷ 逻辑核心数,全部核心跑满为 100%;小于 0.1% 且不为 0 写 “<0.1%”。Format.coreShare 保留单核口径写法
- CPU 弹窗 / CPU 页的按应用汇总、仪表盘高占用进程改用整机占比,数值悬停显示单核口径;仪表盘着色阈值改为整机占比 25% / 50%
- 进程页保持单核口径,与活动监视器一致
- 单元测试覆盖两种写法;译文与更新日志同步
2026-09-16 20:53:52 +05:00
gentpan 165963de84 弹窗高度随内容自动调整:数据到达后变高不再露出滚动条
弹窗打开时按平铺布局测一次高度,之后公网 IP、归属地等数据陆续到达,内容变高(实测 860 → 911pt)而窗口不变,底部露出一小截滚动条。

- PageScroll 在弹窗里用 onGeometryChange 记下滚动内容高度与可视高度,差值通过 reportPopoverOverflow 环境值交给面板
- StatusPanel.adjustHeight(by:):按差值调整窗口高度、顶边不动,上限为菜单栏下方到屏幕底边的可用高度,屏幕放不下时才保留滚动
- 打开时的平铺测量保留作为起始高度;展开 / 收起区块、数据刷新都会自动校正
2026-09-16 19:48:18 +05:00
gentpan 84542374bc IP 纯净度标题行重新排版:置信度改为浅色小字,完整报告、刷新、收起并成一组按钮
- 置信度不再是带框徽章,改为标题旁的 12pt 浅灰文字,百分比按高低着色(confidenceTone → confidenceColor)
- “查看完整报告 / 完整报告”文字链接与 ReportLink、ReportStyle、ViewThatFits 三档标题行一并去掉,改为外链图标
- 新增 HeaderActionGroup:一组小图标按钮在 macOS 26 上合成一颗玻璃胶囊,更早系统为浅灰胶囊;组内的 MiniIconButton 不再各自带玻璃
- 译文与更新日志同步
2026-09-16 19:32:11 +05:00
gentpan 4099ec636e 菜单栏弹窗改为紧凑排版:去掉卡片底色改细分隔线,纯净度与 DNS 默认收起
- 新增 isPopover 环境值,PopoverRootView 打开;Card 在弹窗里不画灰底,只在顶部画一条细分隔线,上下 8pt、行距 6pt;PageScroll 在弹窗里区块间不再留间距
- 弹窗顶栏的两个按钮改用 24pt 的 MiniIconButton
- 网络弹窗:IP 纯净度、DNS 默认收起成一行(CollapsedSection,显示分数等级 / 正在使用的 DNS),点开后标题栏右侧有收起按钮;展开状态存在 AppSettings.expandedPopoverSections,变化时刷新弹窗高度
- 流量图高度 72pt → 56pt,连接探测改为 30 列 2 行
- 网络弹窗 1519pt → 952pt,其余弹窗矮 9%~21%;主窗口详情页不变
2026-09-16 18:52:04 +05:00
gentpan 9e4f92e366 连接探测只看通不通:绿红两色 60 格,去掉延迟抖动丢包,前台固定每秒探测
- ProbeGrid 只分绿(通)、红(超时或不可达)、灰(尚无数据),不再用橙色表示延迟偏高
- 探测历史固定 60 次:弹窗 20 列 3 行,主窗口 30 列 2 行;去掉格子下面的延迟、抖动、丢包与 NetworkController 里对应的统计
- 网络详情打开时固定每秒探测一次(NetworkController.foregroundProbeSeconds),移除 AppSettings.probeSeconds、设置里的“探测间隔”与同步文档字段;后台低频探测仍每 10 秒
- 译文、README、官网与隐私页、更新日志同步
2026-09-16 18:32:38 +05:00
gentpan d68fbce42a 主窗口改用液态玻璃(macOS 26),分段切换改为苹果标准样式,新增全局加载框
- 新增 Design/LiquidGlass.swift:dsGlass 修饰器(macOS 26 用 glassEffect,更早系统与离屏截图退回实色)、isInsideGlass 环境值避免玻璃叠玻璃、LoadingHUD 全局加载框
- 侧边栏是浮在窗口里的玻璃面板,选中项为滑动的淡蓝圆角底;顶栏“在菜单栏显示”一组收进玻璃胶囊
- DSButtonStyle:主按钮蓝色玻璃胶囊、次要按钮透明玻璃;IconButton / MiniIconButton 为圆形玻璃;ChipButton 为玻璃胶囊;DSToggle 在 macOS 26 用系统开关
- SegmentedControl 统一为苹果标准样式:灰色圆角底槽、等宽分段、选中段实心品牌蓝白字并滑动;PillSwitch 同样灰底
- 清理、卸载、导出诊断、修改 DNS 进行中显示全局加载框
- 没有用 safeAreaBar 让页面从顶栏下滚过:macOS 上交界处会画一条分隔线,柔和或隐藏滚动边缘都去不掉
2026-09-16 18:26:09 +05:00
gentpan f3c0f860cb 发布 0.3.2:修复 IP 纯净度查不到(cleanip.io 只查请求方自己,改为锁定 IPv4 / IPv6 分别查询) 2026-09-16 01:56:16 +05:00
gentpan d305e5e3e1 纯净度改为只查自己:锁定 IPv4 / IPv6 连接分别请求 cleanip.io/cli?json=1
cleanip.io 自 09-15 起不再接受 /cli?ip=,带参数一律 400,网络详情的纯净度因此一直停在“正在查询”。

- 新增 AddressFamilyRequest:用 Network.framework 建连接并锁定 IP 版本,走 HTTP/1.1 over TLS 请求,
  处理 chunked 与 Content-Length;这一族没有路由时直接失败,不干等。URLSession 无法指定地址族,
  而 cleanip.io 在 Cloudflare 后面 A / AAAA 都有,锁定地址族才能两族各查到自己的结果
- 锁定地址族的连接建不起来时退回 URLSession,只接受与所查同一族的结果
- 分流代理下 cleanip.io 看到的出口与 Cloudflare 不同时,显示 cleanip.io 看到的地址;缓存按 Cloudflare 的地址比对
- 查询失败的空结果不再写进 7 天缓存,也不进内存缓存,服务恢复后下次打开详情即重查
- 单元测试覆盖响应解析;真实网络下 IPv4 在本机验证、IPv6 在服务器上用 curl -6 验证 cleanip.io 返回对应地址的纯净度
2026-09-16 01:47:21 +05:00
gentpan 40b7e41cbf 支持 Intel 芯片:分别打包 Apple 芯片版与 Intel 版,官网按芯片提供两个下载按钮
- Makefile 支持 ARCH=arm64 / x86_64,release.sh 两种芯片各自构建、签名、公证,生成 DMG 与升级包
- 版本清单顶层仍是 Apple 芯片版(兼容 0.3.0),intel 字段放 Intel 版;应用按芯片挑包,安装前核对架构
- Homebrew cask 按 arch 选择安装包
- 官网下载区改为 Apple 芯片 / Intel 两张卡片,README 安装段落与常见问题同步
2026-09-15 16:21:29 +05:00
gentpan e2300826b6 发布 0.3.0:更新 README 截图,补充卸载应用与启动项说明,自动检查更新失败后按小时重试
- 官网此前的 0.2.0 安装包早于卸载应用、启动项与在线升级的提交,发布 0.3.0 补上(#1)
- 自动检查更新只有拿到版本清单才记为已检查,登录时网络未就绪导致的失败不再等 24 小时才重试
- release.sh 在构建后读取构建号,版本清单里的 build 与安装包一致
- README 截图换成 0.3.0 界面,新增启动项截图与“卸载应用与启动项”一节
2026-09-15 14:43:07 +05:00
gentpan b8db7eacae 归属地只用 cleanip.io:移除 MaxMind GeoLite2 与其他在线数据源
- 删掉 MaxMind .mmdb 读取器、本地数据库控制器与「IP 归属地数据库」设置区块,去掉「归属地数据源」选择及 ipapi.is / DB-IP / ipinfo.io 解析;PublicAddressLookup 只向 cleanip.io 查询,结果按 IP 记一小时,收到 429 当天不再请求
- 设置同步文档不再带 geoSource / geoIncludeCity / geoAutoUpdate;公网 IP 缓存键升到第 4 版,旧数据源的缓存不再读取
- 网络详情:IP 地址区块标题不再放 cleanip.io 字标,只留在纯净度区块;纯净度色带改为直角
- 删除 server/geoip 的 GeoLite2 同步脚本;README、架构说明、第三方声明、官网与隐私页、译文同步,清掉 53 条不再使用的翻译
2026-09-15 04:24:42 +05:00
gentpan 51b954983b 菜单栏新增“电池”项目:电量、24 小时曲线、功耗、健康度与蓝牙设备电量
- 电池按九种风格画在菜单栏,充电中带闪电,电量低于 20% 按“高负载时着色”变红;点击弹出电池详情,主窗口同名页面复用同一视图,历史页多了电池电量曲线
- 历史库加 battery 列(旧库首次打开时 ALTER TABLE 迁移),HistoryRecorder 单独查最近 24 小时电量供弹窗使用
- BluetoothController 按需轮询蓝牙设备电量:弹窗 / 页面开着每分钟,菜单栏需要时每 5 分钟;本机信息页的蓝牙卡片改用它
- 没有电池的 Mac 上电池项目改为显示电量最低的蓝牙设备;「设置 · 菜单栏」新增“蓝牙设备电量低时提示”开关(同步文档一并带上)
- README、架构说明、更新日志与译文同步
2026-09-15 03:58:30 +05:00
gentpan c9d722f20d 账号同步、磁盘工具、IP 归属地数据源与纯净度、弹窗与设置调整
- 账号与同步:GitHub / Google / Apple 登录后把菜单栏项目与风格等偏好同步到 getopenstats.com,换一台 Mac 登录即恢复(AccountSync 模块、SyncController、SettingsDocument、账号设置页,openstats:// 回调)
- 磁盘页成为工具页:已用 / 可清除 / 可用分段容量条、空间分析、文件系统检查、本地快照清理(辅助工具协议 v4)、其他磁盘推出
- 公网 IP:归属地数据源可选 CleanIP.io / ipapi.is / DB-IP / ipinfo.io / 本地 GeoLite2,每台 Mac 自己查、本地缓存 7 天;IPv4 / IPv6 双栈各自查询与切换;弹窗显示 ASN、运营方、原生 / 住宅等徽章与纯净度评分色带;接口区块可重置上传 / 下载统计
- 弹窗:右上角按钮改为该指标自己的图标 + 总设置;主窗口页面标题栏的开关点不动已修复;滚动条改为悬浮式,内容不再偏左;网络弹窗卡片被标题行撑宽的问题已修复
- 设置:⌘ 拖动排序说明;每个菜单栏项目单独选风格并带实时预览;网络与磁盘的进程榜单固定 5 行并平滑排序;CPU 持续高负载通知
- 设计系统:分段条、评分色带、标签徽章、胶囊切换、刷新按钮等组件与徽章配色 token
- 更新日志、架构说明、README 与译文同步
2026-09-15 03:37:24 +05:00
gentpan 92d09169fd 版本号改为 0.2.0 (0003) 格式:每次构建号加一,发布时用 bump-patch / bump-minor 改营销版本 2026-09-14 23:24:09 +05:00
gentpan de7a50b57c 桌面小组件:系统概览(小号、中号) 2026-09-13 08:52:50 +05:00
gentpan bdb55e602d 发布 0.2.0:安装包放官网,Homebrew 通过 gentpan/tap 安装
- 版本号改为 0.2.0(构建号 2),更新日志标记为 0.2.0 · 2026-09-13
- release.sh 生成的 cask 指向 getopenstats.com/download;新增 publish_release.sh:上传 DMG、校验线上文件、提交 cask 到 homebrew-tap
- 官网部署排除 /download/;官网下载按钮与 README 安装说明改为官网下载与 brew 命令
2026-09-13 07:18:50 +05:00
gentpan 4741d40e1b OpenStats:macOS 菜单栏系统监控初始版本
- 菜单栏:CPU/GPU/内存多样式、网速两行、温度、风扇
- 面板:概览仪表盘、进程、散热、防休眠,液态玻璃与浅色/深色主题
- 采集层:CPU/内存/网络/GPU/磁盘/电池/进程/SMC 温度与风扇,按界面分级采样
- root 辅助工具:风扇调速、合盖不睡眠,断开时自动恢复
- XcodeGen 工程、单元测试、截图模式
2026-09-13 02:44:05 +05:00