Skip to content

feat: drop alpha from accent color in appearance protocols - #114

Merged
wineee merged 1 commit into
linuxdeepin:masterfrom
wineee:color
Sep 16, 2026
Merged

wineee merged 1 commit into
linuxdeepin:masterfrom
wineee:color

Conversation

@wineee

@wineee wineee commented Sep 16, 2026 •

Copy link
Copy Markdown
Member
  1. Remove the a argument from set_accent_color in treeland-appearance-manager-unstable-v1.xml
  2. Remove the a argument from accent_color event in treeland-appearance-unstable-v1.xml
  3. Add 0.7.0 breaking-change entries to dde/ and public/ READMEs
  4. Bump project version to 0.7.0 in CMakeLists.txt

Log: Accent color is now opaque RGB (r, g, b) on the wire; the alpha channel is no longer carried by either the privileged set request or the read-only observer event.

Influence:

  1. Bind treeland_appearance_manager_v1 and call set_accent_color with three uint args (r, g, b); verify the compositor applies the color and no longer reads a trailing alpha value
  2. Bind treeland_appearance_v1 and confirm the accent_color event delivers exactly three uint args (r, g, b) on initial bind and on subsequent changes
  3. Verify clients sending the old four-arg (r, g, b, a) signature are rejected or handled per compositor policy after the wire change

feat: 活动色协议去掉 alpha 分量

  1. 移除 treeland-appearance-manager-unstable-v1.xml 中 set_accent_color 的 a 参数
  2. 移除 treeland-appearance-unstable-v1.xml 中 accent_color 事件的 a 参数
  3. 在 dde/ 与 public/ 的 README 中补充 0.7.0 破坏性变更条目
  4. CMakeLists.txt 项目版本号升至 0.7.0

Log: 活动色现上线缆为不透明 RGB(r, g, b);特权设置请求与只读观察事件均不再携带 alpha 通道。

Influence:

  1. 绑定 treeland_appearance_manager_v1 并以三个 uint 参数(r, g, b)调用 set_accent_color,验证合成器应用该颜色且不再读取末尾 alpha 值
  2. 绑定 treeland_appearance_v1,确认 accent_color 事件在初始绑定及后续变化时均只发送三个 uint 参数(r, g, b)
  3. 验证发送旧四参数(r, g, b, a)签名的客户端在线缆变更后被拒绝或按合成器策略处理

Summary by Sourcery

Adopt opaque RGB accent colors across the appearance protocols and release the breaking wire-format change as version 0.7.0.

Enhancements:

  • Make accent colors opaque RGB values by removing the alpha component from the appearance manager request and appearance observer event.

Build:

  • Bump the project version to 0.7.0.

Documentation:

  • Document the 0.7.0 breaking changes for the updated accent color protocols in English and Chinese README files.

1. Remove the `a` argument from set_accent_color in
   treeland-appearance-manager-unstable-v1.xml
2. Remove the `a` argument from accent_color event in
   treeland-appearance-unstable-v1.xml
3. Add 0.7.0 breaking-change entries to dde/ and public/ READMEs
4. Bump project version to 0.7.0 in CMakeLists.txt

Log: Accent color is now opaque RGB (r, g, b) on the wire; the alpha channel is no longer carried by either the privileged set request or the read-only observer event.

Influence:
1. Bind treeland_appearance_manager_v1 and call set_accent_color with three uint args (r, g, b); verify the compositor applies the color and no longer reads a trailing alpha value
2. Bind treeland_appearance_v1 and confirm the accent_color event delivers exactly three uint args (r, g, b) on initial bind and on subsequent changes
3. Verify clients sending the old four-arg (r, g, b, a) signature are rejected or handled per compositor policy after the wire change

feat: 活动色协议去掉 alpha 分量

1. 移除 treeland-appearance-manager-unstable-v1.xml 中 set_accent_color 的 `a` 参数
2. 移除 treeland-appearance-unstable-v1.xml 中 accent_color 事件的 `a` 参数
3. 在 dde/ 与 public/ 的 README 中补充 0.7.0 破坏性变更条目
4. CMakeLists.txt 项目版本号升至 0.7.0

Log: 活动色现上线缆为不透明 RGB(r, g, b);特权设置请求与只读观察事件均不再携带 alpha 通道。

Influence:
1. 绑定 treeland_appearance_manager_v1 并以三个 uint 参数(r, g, b)调用 set_accent_color,验证合成器应用该颜色且不再读取末尾 alpha 值
2. 绑定 treeland_appearance_v1,确认 accent_color 事件在初始绑定及后续变化时均只发送三个 uint 参数(r, g, b)
3. 验证发送旧四参数(r, g, b, a)签名的客户端在线缆变更后被拒绝或按合成器策略处理
@deepin-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: wineee

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@sourcery-ai

sourcery-ai Bot commented Sep 16, 2026

Copy link
Copy Markdown

Reviewer's Guide

This PR introduces the 0.7.0 breaking wire-format change that removes alpha from both accent-color setting and notification, so clients now send and receive only opaque r, g, b uint values; corresponding English and Chinese migration notes are added.

Sequence diagram for opaque accent color protocol

sequenceDiagram
    participant Client
    participant Compositor
    participant Observer

    Client->>Compositor: set_accent_color(r, g, b)
    Compositor-->>Observer: accent_color(r, g, b)
    Note over Client,Observer: Alpha is not carried on the wire
Loading

File-Level Changes

Change Details Files
Remove alpha from the appearance protocol wire format, making accent colors opaque RGB triples.
  • Remove the alpha argument from the privileged accent-color setter.
  • Remove the alpha argument from the read-only accent-color notification.
  • Update protocol documentation with consumer migration guidance for the breaking change.
dde/treeland-appearance-manager-unstable-v1.xml
public/treeland-appearance-unstable-v1.xml
dde/README.md
dde/README.zh_CN.md
public/README.md
public/README.zh_CN.md
Publish the protocol change as release 0.7.0.
  • Bump the CMake project version from 0.6.0 to 0.7.0.
CMakeLists.txt

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

@wineee
wineee added this pull request to the merge queue Sep 16, 2026
Merged via the queue into linuxdeepin:master with commit 5fd533e Sep 16, 2026
4 of 5 checks passed
@wineee
wineee deleted the color branch September 16, 2026 08:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants