Skip to content

[Bug]: 使用 wl_shm XRGB 的窗口内容呈现加法混合效果 #892

Description

@glyvut

SUMMARY | 问题概要

使用 wl_shm 协议(如 mpv --vo=wlshm)的窗口在浅色背景上显示时,窗口内容呈现加法混合效果——颜色叠加在底层内容上。例如纯黑底显示正常,纯白底显示纯白。

LAUNCH-WAY | 启动方式

unknown

BACKEND | 启动后端

unknown

STEPS TO REPRODUCE | 复现步骤

  1. treeland -r 任一终端
  2. mpv --vo=wlshm /path/to/any_resource

在任意后端复现

OBSERVED RESULT | 观察到的结果

Image

如图,mpv 全透明,有装饰的测试程序全透明,无装饰的测试程序不透明。
测试程序:https://github.com/glyvut/wayland-red-rect

EXPECTED RESULT | 期望的结果

应为不透明窗口

ADDITIONAL INFORMATION | 额外补充

根因应该在圆角处理的代码路径,XRGB 中的 X 被作为 alpha 解读。

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions