Replace Systray icons to reduce fractional scaling blur?

On scaled HiDpi laptop screens (I suppose a very high amount of users) the systray icons look pretty blurry when using fractional scaling, due to missing antialiasing.

For some reason the lower contrast on the Plasma6 Wifi applet makes this look worse.

Meanwhile the icons are designed in a very thin and detailed way, which I think doesn’t fit the usecase at all. On small screens the clipboard icon simply has too many “written lines”.

Comparing that to the Adapta icons, I think they look better, allow easier distringuishing as they use a little bit of color. They integrate into colorful application icons better (Syncthing, MullvadVPN, XWaylandVideoBridge,…) and they are also thicker so they dont have these fractional scaling issues.

Adapta Icons

I think they need to be improved and adapted to Plasma, especially as the theme doesnt seem to work on Plasma 6, but would you like canged systray icons?

I think they are the last part (maybe apart the very sharp and edgy window decorations) that make Plasma look a bit weird and not modern.

125% on a 1080p panel is pretty odd, I don’t think there’s a great solution apart from not using monochrome icons at all like you suggest.

Not really, I think ours look fine (but I only use HiDpi on >1080 panels, so the downside of our pixel alignment doesn’t affect them.)

I’m afraid this isn’t really a system tray issue; it’s a general issue with fractional Qt scaling and small monochrome icons that have 1px stroke widths. With this combination, such icons have always been blurry; tou see it all over the place.

What I suspect changed to make the issue more obvious is that on Wayland now, KScreen picks a default scale factor that’s sometimes fractional, in an attempt to make all items on the screen roughly be the physical size that KDE’s designers expected for them to be. This happens to result in the common 14" 1080p screen laptop getting a resolution of 125% by default, which makes the slight icon blurriness issue appear.

There are a few options for how to resolve this, ordered by my preference in what we should do:

  1. KWin adopts a different scaling algorithm for fractional scaling that results in more sharpness and less blurriness
  2. We change our icons to have thicker stroke widths
  3. We adopt a new icon infrastructure that makes use of the new font-based icon stuff in Qt 6, and then we commensurately redo all of our icons to adopt the new system
  4. We change the auto-scale-choosing algorithm so that it stops automatically choosing fractional scale factors, and we return to a world where many users end up with screen elements that are much too large or much too small
1 Like

Could it be possible somehow to create an icon display element that queries the current fractional scale and renders an un-scaled icon of the size that most closely matches the real pixel size that it needs to display?

I’m aware that the next step up from 22px or 24px icons (usually in use for 100%) is 32px icons which are a whopping 150% or more. But also, there’s some leeway in how much space an icon can take within the panel or other elements. Showing the next-smaller icon always works although it’ll be on the smaller side, but sometimes we have enough space to fit the 32px version as well. Maybe we can use that space.

1 Like

right, also as 14" 1080p is really common, and uses 125% it could make sense simply to create another set of icons for this size, 28px?