! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Icons in systray corrupted
Status:
RESOLVED: FIXED
Product:
Xfce4-panel
Component:
Notification Area

Comments

Description Adam Purkrt 2018-01-22 13:28:11 CET
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.
Comment 1 Skunnyk editbugs 2018-02-10 18:59:34 CET
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.
Comment 2 Adam Purkrt 2018-02-10 19:11:56 CET
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.
Comment 3 Skunnyk editbugs 2018-02-10 19:44:02 CET
Yes, that what I said : only when compositor IS disabled :)

Or maybe you can reproduce the bug even when compositor is enabled ?
Comment 4 Adam Purkrt 2018-02-10 19:56:03 CET
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.
Comment 5 Stephen Haffly 2018-11-20 16:22:51 CET
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.
Comment 6 Stephen Haffly 2018-11-20 16:28:04 CET
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.
Comment 7 Stephen Haffly 2018-11-20 16:41:41 CET
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.
Comment 8 Stephen Haffly 2018-11-21 04:11:34 CET
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.
Comment 9 Simon Steinbeiss editbugs 2018-12-06 00:38:12 CET
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
Comment 10 Stephen Haffly 2018-12-06 04:02:30 CET
gtk3-3.24.1-1.fc29.x86_64
Comment 11 mailinglists35 2018-12-12 01:46:19 CET
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
Comment 12 haarp 2019-04-12 14:43:12 CEST
Is this be a duplicate of bug 13948, which is WONTFIX?
Comment 13 Simon Steinbeiss editbugs 2019-04-14 11:49:13 CEST
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!
Comment 14 Simon Steinbeiss editbugs 2019-04-14 12:08:15 CEST
Also this suggests it's fixed: https://gitlab.gnome.org/GNOME/gtk/issues/1280#note_385306
Comment 15 Sergio 2019-06-20 23:27:09 CEST
It was built today for Fedora 30 https://bodhi.fedoraproject.org/updates/FEDORA-2019-6440498f39
Comment 16 haarp 2019-07-19 19:00:34 CEST
(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.
Comment 17 Sergio 2019-07-19 20:53:25 CEST
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.
Comment 18 Simon Steinbeiss editbugs 2019-09-18 21:41:48 CEST
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).
Comment 19 Andre Miranda editbugs 2019-09-26 03:05:39 CEST
xfce4-panel 4.14.1 was just released, it ships a fix for Bug 14577 which may also fix the problem(s) reported here.
Comment 20 Adam Purkrt 2019-09-30 15:07:05 CEST
(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.
Comment 21 Simon Steinbeiss editbugs 2019-09-30 22:53:11 CEST
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.
Comment 22 Adam Purkrt 2019-10-02 09:21:41 CEST
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)
Comment 23 Simon Steinbeiss editbugs 2019-10-02 13:41:36 CEST
Created attachment 9064 
Patch: Drop the "show frame" option

Please test the attached patch.
Comment 24 Simon Steinbeiss editbugs 2019-10-02 13:59:59 CEST
There's a bug in the patch, please skip testing it until I fix and replace it.
Comment 25 Simon Steinbeiss editbugs 2019-10-02 21:24:19 CEST
Created attachment 9068 
Updated patch

Ok, the patch should now work.
Comment 26 Adam Purkrt 2019-10-03 14:07:28 CEST
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)
Comment 27 Simon Steinbeiss editbugs 2019-10-03 14:39:54 CEST
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).
Comment 28 Simon Steinbeiss editbugs 2019-10-03 14:40:36 CEST
The sizing and stuff works correctly now though..?
Comment 29 Adam Purkrt 2019-10-03 18:34:41 CEST
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).
Comment 30 Andre Miranda editbugs 2019-10-04 05:06:45 CEST
*** Bug 15977 has been marked as a duplicate of this bug. ***
Comment 31 Git Bot editbugs 2019-10-04 10:00:07 CEST
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
Comment 33 Simon Steinbeiss editbugs 2019-10-07 12:05:26 CEST
@Marcos: Thanks for noticing. Fixed (incl a few more references).
Comment 34 Simon Steinbeiss editbugs 2019-10-08 10:16:45 CEST
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.

Bug #14186

Reported by:
Adam Purkrt
Reported on: 2018-01-22
Last modified on: 2019-10-08
Duplicates (1):
  • 15977 "Show frame" crops the rightmost icon

People

Assignee:
Simon Steinbeiss
CC List:
11 users

Version

Version:
4.13.2

Attachments

distorted icons in systray (11.81 KB, image/png)
2018-01-22 13:28 CET , Adam Purkrt
no flags
systray-bug-compositor-enabled (1.99 KB, image/png)
2018-02-10 19:56 CET , Adam Purkrt
no flags
Screenshot of Notification Area Properites (58.82 KB, image/png)
2018-11-20 16:22 CET , Stephen Haffly
no flags
Screenshot showing corruption of SpiderOakONE icon (28.96 KB, image/png)
2018-11-20 16:41 CET , Stephen Haffly
no flags
f.lux icon (25.37 KB, image/png)
2018-12-12 01:46 CET , mailinglists35
no flags
Patch: Drop the "show frame" option (8.33 KB, patch)
2019-10-02 13:41 CEST , Simon Steinbeiss
no flags
Updated patch (9.04 KB, patch)
2019-10-02 21:24 CEST , Simon Steinbeiss
no flags

Additional information