Created attachment 7555 distorted icons in systray The icons in notification area are often corrupted. See the attached result after starting hexchat, followed by vlc. The vlc icon is displayed incorrectly, overlaid on a copy of hexchat icon. This is not specific to those two programs. Sometimes the icons are shifted by one pixel right and one pixel down, sometimes they have black background. This has something to do with migration to gtk3, in 4.12.2 I did not encounter such problems.
Yes, this is a "known" problem, good you have opened a bug for that. It has been introduced by the gtk3 migration. The bug only appears when compositor is disabled.
Agree it was introduced with gtk3 migration, but disagree it appears only when compositor is enabled. The screenshot in comment 0 was made when compositor was disabled (Settings/Window Manager Tweaks/Compositor). I just re-checked (run hexchat, then vlc) - icons corrupted even when compositor is not enabled.
Yes, that what I said : only when compositor IS disabled :) Or maybe you can reproduce the bug even when compositor is enabled ?
Created attachment 7590 systray-bug-compositor-enabled Sorry for misreading, my bad. I now tried with compositor enabled, and the bug is still there - even when I run hexchat only, the icon is not centered in the systray, it appears shifted by (1,1) or (2,2) (one or two pixels to the right and down). Running vlc afterwards uses part of the hexchat icon next to vlc icon, which also feels offset by (1,1) or so. See the attached screenshot.
Created attachment 8120 Screenshot of Notification Area Properites This also has been happening with me with SpiderOakONE. The application icon appears smaller than it should and is overlaid over a duplicate of the NetworkManager Applet icon. There is a NetworkManager Applet icon properly displayed to the right of this overlaid icon. When I view the Notification Area properties, I can see proper icons for some applications, but there is a generic icon for these apps: Spideroakone, Xfce Power Manager, and Task Manager in the Known Applications list. I have previously cleared the list, but there is no change. I don't know if this has anything to do with the behavior I have experienced since upgrading to Fedora 29 and Xfce 4.13.
Also, I found that if I open the Notification Area Properties dialog and change the icon size, then check the box for Square icons, the size of the icons will change and they will be drawn correctly. When I uncheck the box for Square icons, the icons are properly displayed. I have just rearranged the list to have the Network Manager on top, then the Xfce Power Manager. Since the other items are below that, it should not be trying to shift the icons that are always there to the right. I will know if this is helpful after the next time I reboot.
Created attachment 8121 Screenshot showing corruption of SpiderOakONE icon I logged out and back in and restarted SpiderOakONE after the changes I specified above. The first attempt did not place an icon in the notificaton area. After closing the icon and killing the backend process, I restarted SpiderOakONE. This time it placed an icon in the Notification area, but the icon is half-size. Changing the icon size in the properties and checking, then unchecking the square icons button fixes size of the icon, but it still isn't quite right as the right edge of the SpiderOakONE icon is cut off. This is with compositing enabled.
Either checking Square Icons or simply unchecking Show frame will let the full icon be seen. It is tight up against the edge of the notification area which is probably why the right edge was being cut off. Checking Square Icons gives a pixle or two of space between the icon's edge and the edge of the notification area.
Which Gtk+3 version are you using? There have been GtkStatusIcon changes that break the icons - especially without compositing enabled - in Gtk+3.24. Related upstream report: https://gitlab.gnome.org/GNOME/gtk/issues/1280
gtk3-3.24.1-1.fc29.x86_64
Created attachment 8176 f.lux icon this happens to me for f.lux icon. it shows ok in lxqt. compositor enabled. same gtk3 as previous message
Is this be a duplicate of bug 13948, which is WONTFIX?
In theory this problem (as far as it is a result of https://gitlab.gnome.org/GNOME/gtk/issues/1280) should be gone with Gtk+ >=3.24.3: https://gitlab.gnome.org/GNOME/gtk/blob/3.24.3/NEWS#L13 Please test and give feedback!
Also this suggests it's fixed: https://gitlab.gnome.org/GNOME/gtk/issues/1280#note_385306
It was built today for Fedora 30 https://bodhi.fedoraproject.org/updates/FEDORA-2019-6440498f39
(In reply to Simon Steinbeiss from comment #14) > Also this suggests it's fixed: > https://gitlab.gnome.org/GNOME/gtk/issues/1280#note_385306 Cannot confirm. According to that report, GTK+ 3.24.3 should contain the fix. I'm running 3.24.8 and am still getting corruption when the compositor is disabled.
Yes in Fedora it's already 3.24.10 and the tray graphics is still corrupted without compositing. Maybe it's a side symptom of GNOME not using systrays anymore.
From the OP's report this seems to be a different problem than what you haarp and Sergio describe (which in turn seems to be https://bugzilla.xfce.org/show_bug.cgi?id=14577, for which I just attached a patch that needs testing).
xfce4-panel 4.14.1 was just released, it ships a fix for Bug 14577 which may also fix the problem(s) reported here.
(In reply to Andre Miranda from comment #19) > xfce4-panel 4.14.1 was just released, it ships a fix for Bug 14577 which may > also fix the problem(s) reported here. The problem is still here. The icons are shifted one or two pixels right and down. When I start hexchat and then vlc, the vlc contains part (2 pixel wide) of the hexchat icon on the right side. Row size=28. Also found: If you change the row size of the panel from higher to lower, the icons in the notification area looks different from when you change from lower to higher. I.e. going from 27->28 row size leads to different result than to going 29->28.
Not sure if we'll be able to fix all those issues. The problem is in part that the panel itself has no control over the trayitem's icon and the square size as well as the icon size are an approximation or a "recommendation" for the trayitem, but it can still decide to display whatever (as far as I've understood). But yeah, I agree that this bug is different (it's more about position and size) from the other (resolved) one, which was about drawing the item correctly in general.
Just found out: if there is no frame around the notification area, the icons are not shifted right and down. (Panel preferences/Items/Notification area/Edit/Show frame)
Created attachment 9064 Patch: Drop the "show frame" option Please test the attached patch.
There's a bug in the patch, please skip testing it until I fix and replace it.
Created attachment 9068 Updated patch Ok, the patch should now work.
Tried the patch. The frame is gone on the panel, but I still see the "Show frame" checkbox (which does nothing now) (Panel preferences/Items/Notification area/Edit/Show frame)
Are you sure you rebuilt everything correctly? Works for me (also the respective lines from the glade file have obviously been removed in my patch).
The sizing and stuff works correctly now though..?
Made it to work. The source has to be configured with "--enable-maintainer-mode", otherwise the changes in .glade file are not reflected. So now the bug is mostly gone. Still, sometimes the hexchat icon gets cropped on the left by one pixel when changing the size of the panel (but after restart of the panel with the same size, everything is clean and well aligned).
*** Bug 15977 has been marked as a duplicate of this bug. ***
Simon Steinbeiss referenced this bugreport in commit d77b3b382dd8724489c9210e15f6865964628ba1 systray: Drop "Show frame" option (Bug #14186) https://git.xfce.org/xfce/xfce4-panel/commit?id=d77b3b382dd8724489c9210e15f6865964628ba1
https://git.xfce.org/xfce/xfce4-panel/tree/plugins/systray/systray.c?id=d77b3b382dd8724489c9210e15f6865964628ba1#n126
@Marcos: Thanks for noticing. Fixed (incl a few more references).
This is fixed for Xfce 4.16. For 4.14 the "show-frame" property is set to FALSE by default, so the user has to actively enable the frame. Unless a lot of people complain about the frame causing issues, I'd rather not remove options in a stable release.