Commit Graph
9 Commits
Author SHA1 Message Date
Jokul 9803c59e76 fix: 为所有接口采集速度历史而非仅活动接口
原 calculateSpeed 仅给活动接口追加采样点,切换到非活动接口时趋势图
为空需等待数分钟。新增 m_lastRxBytesByIface/m_lastTxBytesByIface
跟踪所有接口字节基线,遍历全部接口采集速度历史。

切换接口时趋势图立即有数据,新增接口(如USB网卡)也自动开始采集。
2026-07-24 09:53:39 +08:00
Jokul 8e7b945a7c fix: setActiveInterface校验接口有效性
传入不存在的接口名会被持久化到配置文件且当前会话速度恒为0。
增加 m_interfaceList.contains 校验,无效接口名直接忽略。
2026-07-24 09:41:20 +08:00
Jokul 91bc3174a0 fix: detectInterfaces过滤规则与readNetworkStats统一
detectInterfaces 原仅过滤 lo,docker/veth/br- 接口会在首次刷新前
短暂出现在列表中后被 readNetworkStats 覆盖,造成 UI 闪烁。
统一过滤规则为 lo/veth*/docker*/br-*。
2026-07-24 09:37:11 +08:00
Jokul c614df5fbe fix: 独立窗口及任务栏图标适配深色模式
4 个独立窗口(AboutWindow/SettingsWindow/TextColorPicker/TrafficChartWindow)
新增 isDarkMode 属性,由 networkview.qml 检测后注入,各窗口定义深/浅双色方案。

深色模式检测从 DockPalette.iconTextPalette 改为 DTK.palette.window.hslLightness,
因 DockPalette 不随系统深色主题变化。

同时将 networkview.qml 任务栏图标和 NetworkPopup 弹窗的颜色基从
DockPalette.iconTextPalette 改为 DTK.palette.windowText,修复深色模式
下黑底黑字、浅色模式下白底白字的问题。
2026-07-24 09:30:18 +08:00
Jokul 42028d93bd fix: 总量统计改为累加会话增量而非取计数器值
原 m_totalDownload = currentRxBytes 直接取活动接口计数器值,切换
网卡时跳变到新接口计数器,网卡重启时归零,语义有误导。

改为 m_totalDownload += rxDeltaClamped 累加会话增量,总计从 0
开始增长,切换网卡不再跳变。跨重启持久化属于后续 #18 的范畴。
2026-07-23 00:11:09 +08:00
Jokul af7ae6b334 fix: 计数器回绕/重置时钳制负速度为0
网卡重启、/proc/net/dev 计数器溢出或接口重置时,字节差值为负,
QML 会显示负速度。对 rxDelta/txDelta 钳制为 0 避免此问题。
2026-07-23 00:06:43 +08:00
Jokul e53981f828 fix: 速度计算按真实时间间隔而非假定为1秒
calculateSpeed() 原直接取字节差作为 bytes/sec,假定定时器严格
1 秒触发。系统负载高时 QTimer 延迟会导致速度失真。

改为记录上次采样的毫秒时间戳 m_lastTimestampMs,按真实流逝时间
delta_bytes / elapsed_seconds 计算速度;速度存储由 qint64 改为
double 保留精度;elapsedSec > 0 守卫避免除零。

同时新增 docs/project-review.md 项目审查清单。
2026-07-23 00:01:39 +08:00
Jokul ea2081f0a6 remove 2026-07-18 19:51:24 +08:00
Jokul 009dd9578f feat: 重新设计插件 UI 样式与交互
- 任务栏图标:双行数值显示(下载蓝/上传绿),固定宽度避免抖动
- 左键弹出面板:360×320 居中布局,双列速度卡片,网卡名+IP 卡片背景
- 右键菜单:deepin 风格 Platform.Menu + MenuHelper(刷新/设置/关于)
- 设置窗口:frameless 自定义标题栏,网卡接口选择,卸载插件功能
- Tooltip:网卡名 + IP 地址单行展示
- C++ 后端:新增 ipAddress 属性(QNetworkInterface),优先选择物理网卡
- 速度格式化:最小单位 KB,2 位小数
- 移除 QML 侧多余 refresh 调用,修复 tooltip 数值变 0
- 新增设计文档与实现计划
2026-07-18 18:44:12 +08:00