SUMMARY | 问题概要
使用 wl_shm 协议(如 mpv --vo=wlshm)的窗口在浅色背景上显示时,窗口内容呈现加法混合效果——颜色叠加在底层内容上。例如纯黑底显示正常,纯白底显示纯白。
LAUNCH-WAY | 启动方式
unknown
BACKEND | 启动后端
unknown
STEPS TO REPRODUCE | 复现步骤
- treeland -r 任一终端
- mpv --vo=wlshm /path/to/any_resource
在任意后端复现
OBSERVED RESULT | 观察到的结果
如图,mpv 全透明,有装饰的测试程序全透明,无装饰的测试程序不透明。
测试程序:https://github.com/glyvut/wayland-red-rect
EXPECTED RESULT | 期望的结果
应为不透明窗口
ADDITIONAL INFORMATION | 额外补充
根因应该在圆角处理的代码路径,XRGB 中的 X 被作为 alpha 解读。
SUMMARY | 问题概要
使用 wl_shm 协议(如
mpv --vo=wlshm)的窗口在浅色背景上显示时,窗口内容呈现加法混合效果——颜色叠加在底层内容上。例如纯黑底显示正常,纯白底显示纯白。LAUNCH-WAY | 启动方式
unknown
BACKEND | 启动后端
unknown
STEPS TO REPRODUCE | 复现步骤
在任意后端复现
OBSERVED RESULT | 观察到的结果
如图,mpv 全透明,有装饰的测试程序全透明,无装饰的测试程序不透明。
测试程序:https://github.com/glyvut/wayland-red-rect
EXPECTED RESULT | 期望的结果
应为不透明窗口
ADDITIONAL INFORMATION | 额外补充
根因应该在圆角处理的代码路径,XRGB 中的 X 被作为 alpha 解读。