-
-
Notifications
You must be signed in to change notification settings - Fork 696
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
System tray icons overlap when changing status #2935
Comments
Thanks for reporting. Can you share your config please and also let me know if there are any error messages in the logs. Also, what icon set are you using? I can't really recreate with my icons. |
Can't recreate. When toggling power state via the applet, the icon redraws correctly for me. |
Is a compositor interfering possibly? |
Here's my config: hamens_config.txt Nothing in the error logs. Using |
I tried uninstalling This is the |
Same problem. This is an nm-applet bug. |
Has anyone tried this in a different window manager to confirm that? If it happens in other WMs then the bug needs to be reported upstream and we can close this. |
Polybar and dwm bar good. Qtile, the systray is not updated |
So it's not a nm-applet bug then. |
No. |
What is the background of your bar ( |
I have my wallpapers change on startup (and I frequently change them every few times in session), so |
Nice, and presumably the issue is the same no matter what the current state of that is? Do the colors ever have transparency? |
Transparency does feel like a likely candidate here. However, if it was, I'd also expect a |
Correct.
Yes. |
Have you tested system tray icons other than the ones I mentioned? |
For me, the problem was solved if I set the background for the bar this way.
|
helps, but like @hamensman i have the same issue with the Edit: |
@ervinpopescu can you post your bar It would be good if you could try testing with picom disabled and a fully opaque bar |
Turns out that having Edit: 2nd edit:
If I use Should I open another issue for the icon size thing? |
Yes. New issue for the size please. Ideally, please post enough detail for us to try to recreate. |
I've lost track of this one. Can anyone confirm if the overlapping is still an issue as I can't recreate it. |
Yes, it still is. |
Happens to me with volumeicon as well. I have my Systray inside a WidgetBox. Interestingly, collapsing and opening the WidgetBox corrects it without having to reload qtile. |
Is volumeicon a systray app? Can you post your config and a screenshot of the issue. |
I have some errors in the logs.
|
Yes.
I got you in a moment. |
Not sure what you're looking for but, if you run To get the tray, you can do this:
That will give you something like this:
You can then run
As you can see, the tray advertises the visual id that should be used by apps to display their icons. |
OK. What am I meant to be looking at in those screenshots? Is it the |
I don't have time to code. I hope they solve the problem. |
Can I suggest you start a discussion on this so we don't fill up the issue with questions about the widget. |
This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 30 days. |
I'm having the same issue with One thing I noticed, I didn't face this issue on my |
@elParaguayo This issue shouldn't be closed. It clearly hasn't been fixed yet. For me, there is overlap in the icons when the bar background is set to a solid color (as shown in the original screenshots). Apparently, some reported that this issue does not happen on Fedora. I wonder if some newer versions of qtile or picom or other relevant packages broke this. It would be great if we could get the package versions on a system without these issues so I could test this theory. If I set the bar to have any transparency, the systray icons will have a fully transparent background rather than the transparency set in the bar. This is already documented in the documentation. Some reported that it's an issue with picom, but this is actually not the case. I'm experiencing this issue with two different systray icons: NetworkManager, and ibus. NetworkManager seems to be fixed when I kill picom, but ibus still exhibits the weird overlaying. I also tried xcompmgr, and I see the same overlaying behavior. I ran the following commands as suggested to check depth when using a transparent and a non-transparent background:
I'm getting weird results. For non-transparent bar, I'm getting:
For transparent bar, I'm getting:
I'm running qtile 0.22.1 on Arch (EndeavourOS). |
Also, since I can recreate this issue, I'm happy to assist with testing. |
Those two numbers are not the depth, they're the ID of the visual being used to display the icons. The bar and the widget should have the same ID which they do so that's good. Do you have another window manager installed? As System Tray is an X specification, it would be good to know if the same issue arises on that WM too or whether this is because of qtile's implementation. |
I don't have another window manager, but I installed polybar and polybar's systray doesn't suffer from this issue. |
I tested polybar with transparency as well. It also doesn't suffer from the semi-transparency issue qtile bar is suffering from. I also tested trayer with and without transparency. No issues for me. I'm digging into polybar source code to see if I can find anything relevant. |
I suspect they're doing some form of pseudo-transparency where they take the surface underneath the bar and copy that image to the tray. |
OK, so after a little digging, it seems like polybar is using pseudo-transparency, meaning it draws the at the semi-transparent background, and then adds the contents (systray) on top. I believe they are basically creating an illusion that there's semi-transparency, while not using true transparency. This is likely the technique they're using to achieve transparency: https://en.wikipedia.org/wiki/Pseudo-transparency Seems like they're drawing the main surface on the main context, and then drawing the background color over the main surface, and then refreshing the windows (tray icons) on top. I haven't used cairo before so I might have gotten some concepts wrong here. Here's the source code of how they're redrawing the background: This PR to disable redrawing the tray when transparency is not present further hints on this process: polybar/polybar#2604 |
You're absolutely on point. |
Going to poke around the source code to see if I can hack together something. Need to set up dev environment so I can have a local build running tho. |
It's complicated, as I recall we need to use the I might give this another look as it's definitely a suboptimal outcome at the moment but it's probably going to be hard! |
Also, I think this would need to implemented at the bar level rather than the widget level. |
I'm also having this issue. My tray icons worked fine when I was using AwesomeWM, maybe we could look at their implementation for reference? |
I had a working implementation of this a while ago (#4126). It didn't get merged as we had some other priorities. I can pick this up again after the next release (that's current priority) as it will need to be updated to reflect some other changes to our code. |
Let's take the wifi (
nm-applet
) and bluetooth (blueman-applet
) system tray icons.When I am connected to wifi and bluetooth is on, they look like this:
If I disconnect wifi and disable bluetooth, they should look like this:
But what actually happens is they end up overlapping on top of each other, looking like this:
Right now, I would have to do a qtile restart if I wanted the icons to look as they should.
Using latest Qtile on Arch.
The text was updated successfully, but these errors were encountered: