Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upTray icon in KDE5 doesn't have colorful border #2042
Comments
marmarek
added
bug
C: desktop-linux
P: critical
UX
labels
May 30, 2016
marmarek
added this to the Release 3.2 milestone
May 30, 2016
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
May 30, 2016
Member
One idea is to abandon borders and color the whole icon, similar to icons used in the menu. Algorithm used for this coloring requires converting RGB to HSL, which seems to be not an easy task in C, but much easier in python (as it's done with app icons). And it looks to be quite easy to call python function from C.
|
One idea is to abandon borders and color the whole icon, similar to icons used in the menu. Algorithm used for this coloring requires converting RGB to HSL, which seems to be not an easy task in C, but much easier in python (as it's done with app icons). And it looks to be quite easy to call python function from C. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
After hours of debugging with @woju finally got it working :) IMHO looks nice, much better than unnoticeable border:

Transparency is introduced by KDE - this is probably the same mechanism that stripped the border...
Should we enable it by default for every WM? Or only KDE? @rootkovska
|
After hours of debugging with @woju finally got it working :) IMHO looks nice, much better than unnoticeable border: Transparency is introduced by KDE - this is probably the same mechanism that stripped the border... |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Can you disable it for KDE and paste here a screenshot? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
Take a look above - there is nm-applet icon from sys-net (yes, should have red border, but it's stripped by KDE).
|
Take a look above - there is nm-applet icon from sys-net (yes, should have red border, but it's stripped by KDE). |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
No, I would like to see the icon with a white bg. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
There is no white bg in KDE5 - it strips it out. Yes, what is actually visible in the tray in KDE5 is something preprocessed by KDE, not directly mapped VM icon.
|
There is no white bg in KDE5 - it strips it out. Yes, what is actually visible in the tray in KDE5 is something preprocessed by KDE, not directly mapped VM icon. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
And I can't see any configuration to disable this feature. Actually there is even no configuration for icon size (which is really annoying on HiDPI...)
|
And I can't see any configuration to disable this feature. Actually there is even no configuration for icon size (which is really annoying on HiDPI...) |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
rootkovska
Jun 6, 2016
Member
What if our magic HSL-based color converter also converted any of the white pixels into... sightly less white pixels, say RGB(254,254,254)?
|
What if our magic HSL-based color converter also converted any of the white pixels into... sightly less white pixels, say RGB(254,254,254)? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Currently it looks pretty ugly IMHO... |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
... and if we also add back the frame in the VM color? :) |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Also adding @bnvk to get his opinion. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
KDE strips the border, even if I made it thicker (2px). |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
rootkovska
Jun 6, 2016
Member
I see... Ok, let's try this:
- Revert back to the transparent bg,
- Tone down the Saturation (the S in HSL) at least by 50% (S /=2)
?
|
I see... Ok, let's try this:
|
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Looks better though :) |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Not bad either :) IMHO |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
rootkovska
Jun 6, 2016
Member
And can you paste the screen with the nm-appet in a "connecting" state -- that looked worst on the screens above...
|
And can you paste the screen with the nm-appet in a "connecting" state -- that looked worst on the screens above... |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
No idea why, but when I've restarted nm-applet, KDE cut off another pixel or two from each side of the icon... Maybe something about icon size - now icon window (somewhere hidden by KDE) is 16x16, but embedded in 32x32 KDE container. After restarting gui daemon, icon is back at the right size (32x32), but is not updating anymore... Anyway probably unrelated to the whole coloring stuff.
Here is a screenshot you've requested:

And the one in disconnected state (the red one is in problematic state of 16x16 size):

This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
rootkovska
Jun 6, 2016
Member
I'm inclined towards the reduced-sat-on-transparent-bg version. Can you show how other icons would look this way? E.g. Electrum?
|
I'm inclined towards the reduced-sat-on-transparent-bg version. Can you show how other icons would look this way? E.g. Electrum? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Not so good :/ |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
Cutting 2px from each side is especially visible on keepassx. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
palmface @bnvk, help? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jun 6, 2016
Member
I've already introduced configuration parameter for this. We can make it all configurable and decide on the final version later.
There is still an option for bordered but not colored icon (useful for other WMs).
|
I've already introduced configuration parameter for this. We can make it all configurable and decide on the final version later. There is still an option for bordered but not colored icon (useful for other WMs). |
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
marmarek
closed this
in
marmarek/old-qubes-gui-daemon@8429457
Jun 7, 2016
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
added a commit
to marmarek/old-qubes-gui-daemon
that referenced
this issue
Jun 7, 2016
marmarek
reopened this
Jun 7, 2016
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
timcollinsal1
Jun 9, 2016
Might be just dumb newbie uestion here (ill be that idiot guy who cant read documentation) - Using 3.2 test iso, after launch I have no border or tray or anything outside of top left hidden icon for network config. Im sure theres a command to open the GUI, but what might that be? Im running everything through terminal now ( I know the version Im using is test/pre=release) just curious how I might activate to ease user expereince visually and for thos of us not as familiar with console.
timcollinsal1
commented
Jun 9, 2016
|
Might be just dumb newbie uestion here (ill be that idiot guy who cant read documentation) - Using 3.2 test iso, after launch I have no border or tray or anything outside of top left hidden icon for network config. Im sure theres a command to open the GUI, but what might that be? Im running everything through terminal now ( I know the version Im using is test/pre=release) just curious how I might activate to ease user expereince visually and for thos of us not as familiar with console. |
rootkovska
closed this
Jun 30, 2016
marmarek
referenced this issue
May 26, 2017
Open
im-chooser icon in system tray is corrupted under KDE #2832
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
zander
Jan 11, 2018
For what its worth;
the icon size is configurable and it is an "enum" to avoid HiDPI displays showing a 16 pixels icon.
The default is 16-pixels, scaled (looks just fine on a 230DPI screen I own, def not actually 16px).
You can change the default in a package quite trivially by patching (in dom0);
/usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/config/main.xml
under iconSize change the default to 2, for instance.
About the border, the simplest solution is to work with the KDE team, or at least the sources. KDEs plasma is mostly implemented using javascript (in qml style) which means you have the sources in dom0. Many useful things can be done without recompiling.
For instance the actual icon behaviour etc is defined in;
/usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/StatusNotifierItem.qml
Either way, I'd be interested in reopening the investigation towards a coloured outline as the current solution of colourising is not my favourite, I got the impression you guys didn't prefer that either ;)
zander
commented
Jan 11, 2018
|
For what its worth; The default is 16-pixels, scaled (looks just fine on a 230DPI screen I own, def not actually 16px). You can change the default in a package quite trivially by patching (in dom0); About the border, the simplest solution is to work with the KDE team, or at least the sources. KDEs plasma is mostly implemented using javascript (in qml style) which means you have the sources in dom0. Many useful things can be done without recompiling. For instance the actual icon behaviour etc is defined in; Either way, I'd be interested in reopening the investigation towards a coloured outline as the current solution of colourising is not my favourite, I got the impression you guys didn't prefer that either ;) |
andrewdavidwong
reopened this
Jan 12, 2018
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
zander
Jan 19, 2018
Interesting observation;
Adding a border to my applications icon, and showing it in my kde5 desktop had the following effect;
a) when running the app in dom0. This shows the border just fine.
b) When running in an appVM, this shows the colored image, without border.
I conclude that KDE does not remove any border added by Qubes, I don't know the full pipeline from appVM to kde-systemtray, would it be possible that the issue lies in one of the other components?
zander
commented
Jan 19, 2018
|
Interesting observation; Adding a border to my applications icon, and showing it in my kde5 desktop had the following effect; a) when running the app in dom0. This shows the border just fine. b) When running in an appVM, this shows the colored image, without border. I conclude that KDE does not remove any border added by Qubes, I don't know the full pipeline from appVM to kde-systemtray, would it be possible that the issue lies in one of the other components? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Jan 20, 2018
Member
Icon handling is configured in /etc/qubes/guid.conf. Default is to color it, instead of adding border. Available options are in man qubes-guid, for reference:
Available trayicon modes:
bg: color full icon background to the VM color
border1:
add 1px border at the icon edges
border2:
add 1px border 1px from the icon edges
tint : tint icon to the VM color,
can be used with additional modifiers (you can enable multiple of them)
tint+border1,tint+border2:
same as tint, but also add a border
tint+saturation50:
same as tint, but reduce icon saturation by 50%
tint+whitehack:
same as tint, but change white pixels (0xffffff) to almost-white (0xfefefe)
|
Icon handling is configured in
|








marmarek commentedMay 30, 2016
In KDE5, tray icon (especially NetworkManger Applet) doesn't have colorful border. It looks like KDE is trying to blend the icon into panel.
It is critical to have a way to distinguish icons from VMs.