AvengeMedia / AvengeMedia/DankMaterialShell

Color effect on distro icon in the overview widget should not change white portions of logos

Open
#1,137 0 comments 0 reactions 0 assignees View on GitHub
feature request
Dominant language
QML
Stars
8.1k
Forks
515
Avg merge
1d 8h
Merged PRs (30d)
102

Description

## Feature Description

I don't know about other distros but in Ultramarine Linux is a logo which has two colors: dark blue and white. You would expect a color effect on the logo to keep the white, but instead it gives a new (ugly imo) light green.

Image

Basically, as a result, the icon gets a tint over the white which ruins the spirit of the icon. I can't really put it in words why it looks wrong but I think the combination of adding a hue of something previously hueless and making the white "darker".

Image

Here is what it looks like normally:

Here is a quick edit on what I think a proper color override should look like this:

Image

where the white is preserved..

## Compositor

Is this feature specific to one compositor?

version 1.0.3 btw

- [ x] All compositors
- [ ] niri
- [ ] Hyprland
- [ ] dwl (MangoWC)
- [ ] sway

## Proposed Solution

I am unfamiliar with Quickshell so I don't really know what the limitations are. I can imagine a few solutions.

The most ideal solution I can suggest is that each color should (roughly) conserve the same perceptual lightness as the og icon but share the same hue/chroma in Oklab space as the primary color. [Then map each color back to sRGB gamut somehow.](https://www.w3.org/TR/css-color-4/#css-gamut-mapping).

For a simpler solution without OKLAB math, i think just simply changing the hue in HSL to the same as the primary color should also work though then HSL isn't exactly perceptual so things will still be distorted but at least the white will be fine.

Or you can just add an exception to remove the color from any whites.

## Alternatives/Existing Solutions

Uh, find the source code of the image and edit the white to be like transparency I guess. Of course, that would only work in light mode though.

Contributor guide

Open the contributing guide

Research direction

Start by locating the overview widget's distro icon color effect in the Quickshell source and compare the normal and tinted Ultramarine Linux logo examples in the issue. Done means the primary color effect still works while white portions of the logo remain white across the listed compositors.

Written by the indexing model from the issue text.

Assessment

Domain
design, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.