Skip to content

Render foreground grayscale filters - #469

Merged
wieslawsoltes merged 1 commit into
mainfrom
feature/css-filter-grayscale-256
Sep 18, 2026
Merged

wieslawsoltes merged 1 commit into
mainfrom
feature/css-filter-grayscale-256

Conversation

@wieslawsoltes

Copy link
Copy Markdown
Collaborator

Unchanged Code OSS uses filter: grayscale(1) for inactive/open session visuals and Chat achievement badges, but WebScene currently paints those surfaces in their original colors. This change resolves bounded number/percentage grayscale values and applies the standard luminance interpolation matrix through the existing retained filter group in Avalonia/Uno and Flutter.

The scene struct and version remain unchanged: kind 30 reserves bit 30 for grayscale and carries its 0–1 amount in stroke_width; bit-31 brightness and zero-flag opacity behavior remain intact, with kind 31 as the balanced end. Compound filters, animation/interpolation, other functions, masks, and backdrop sampling remain under #256.

Validation debt: per the implementation-throughput priority, tests, browser/native pixel contracts, performance/lifecycle benchmarks, hosted checks, CI monitoring, and exact-package visual acceptance were skipped. git diff --check passes on source head 73498726 rebased onto main 6363114a.

Closes #468
Parent: #256

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.

Render Code OSS foreground grayscale filters

1 participant