Repository navigation
v0.4.5
Com Bridge v0.4.5
两处体验修正,功能不变。
修:高 DPI 屏上界面偏小
本进程是 per-monitor DPI 感知的 —— 这是输入坐标必须的(否则 Windows 会把
光标坐标按缩放"虚拟化",跨屏落点整体偏移)。代价是 tkinter 不再自动放大界面:
96 DPI 下设计好的 620×660 窗口,在 200% 缩放的笔记本屏(如 2560×1600)上只占
四分之一面积,字小得看不清。
现在整套界面按系统缩放同步放大:
| 1.0× | 1.5× | 2.0× | |
|---|---|---|---|
| 窗口实际尺寸 | 636×535 | 946×759 | 1256×984 |
- 自绘位图(卡片/胶囊/徽章/按钮)的尺寸与 PIL 字号统一乘缩放系数(
uidpi.SCALE); - Tk 的磅值字体通过
tk scaling同步放大; - Tk 自带的磅值字体;
- 副机窗体同样按比例放大。
启动日志会写明当前倍率,例如:
[gui] 界面缩放 ×2.00(系统 DPI 192)
需要强制指定时可用环境变量:COM_BRIDGE_UI_SCALE=1.5(或 150%)。
已知取舍:倍率在启动时确定一次。把窗口拖到另一块不同缩放的屏幕上不会实时重排,
需要重启程序。
修:主界面那个"对时偏差 +47568320 ms"
它显示的其实是 offset_us —— 两台机器单调钟(perf_counter)纪元之差,
等于两机开机时刻相差多少(这台副机是 13.2 小时)。它是换算基准,不是
"时钟误差",摆在界面上只会让人以为时钟差了 13 小时。
现在:
- 主界面:
(对时往返 1.3 ms)—— 用户真正能感知的量; - 状态窗口:
rtt 1.34ms / 样本 8 / 偏移跳变 0 次(最大 0.00ms) | 单调钟偏移 +47568320ms(两机开机时刻之差,换算用,不是时钟误差)
偏移跳变才是真正要盯的指标:offset 一旦阶跃,相邻音频包的时间戳就错位,
会听到断口。这个计数以前只在内部统计,现在摆出来了。
测试
763 项通过(新增 10 项界面缩放回归:倍率范围、像素换算四舍五入、环境变量解析、
150% 写法、主题常量确实过缩放)。