-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Swaybar tray #3249
Swaybar tray #3249
Conversation
e403a17
to
699fa20
Compare
Build seems to fail on my Arch Linux machine with this error
Full build log:
|
The swaybar meson build is probably missing the dependency for |
@ianyfan Yes, it compiles now, thank you! Although it currently segmentation faults as soon as i have any programs running that provide a tray icon
|
No themes are being found, even though looking at the I should probably add a warning message if the "Hicolor" is not found, since it is required to be present as a fallback. |
On My machine default is this
so I reinstalled Forcing Im not really sure how to debug this more. edit: setting
|
The latest commit should fix this, though I think it makes the function a bit less elegant |
@artizirk If it still crashes with the latest changes, could you provide a backtrace? Thanks. |
@ianyfan It works now without crashes or local hacks. Awesome! |
888fe3c
to
4f18675
Compare
Just a quick reminder to remove
from here upon merge. |
bdc5d04
to
c8d687d
Compare
Welp. I'm happy with the commits as they are, I just rebased it onto the latest master. |
Thanks! |
Is there a reason for not enabling tray by default? |
Posting this here because there seems to be discussion in this thread about specific apps' tray support. I tried the new system tray with both Dropbox and nm-applet. Dropbox worked pretty well, although the context menu appeared in the middle of the screen rather than near the tray icon. nm-applet did not work as well. It was built ad run with Appindicator support. The icon did appear in the tray, but did not respond to any type of click; no menus appeared. Even stranger, when nm-applet was showing in the tray, no other tray icons could be clicked either. Once the nm-applet process was killed, the other icons began responding to clicks again. |
@electrickite Is this still an issue? |
@ianyfan Yes it still seems to happen on the latest build. |
I believe I had the dropbox issue when I was testing this, so I'm not sure if there's anything I can do about it. As for nm-applet, the menu doesn't show up because it hasn't been implemented yet. However, I'm still able to click on other tray icons, so I can't seem to replicate your problem. Maybe there's a clue in the (swaybar) debug logs? |
Can you list the python packages required in a virtual environment to get this script to run? Thanks. |
Could you attach the debug logs for when you try to register steam's icon? |
That's strange. Can you get any icons working? |
@ianyfan: I'm also not able to click on |
I think they use the dbus menu, which has not been implemented yet. |
@progandy the current blocker is implementing layer shell popups |
Is there any issue that tracks this ? |
@progandy with Waybar nm-applet --indicator responds to right click, the context menu shows up center of the screen. |
Missing features are now being tracked in #3799 |
Hi, |
@fdutheil The tray uses sd-bus as the dbus library. You could try building with basu or libsystemd That would require some patches to the meson configuration for sway. |
It's blocked on the general lack of availability of a good sd-bus alternative, which I would love to see but don't have time to write. |
Now that this is nearing feature-completion, I would very much appreciate anyone who would like to help test this out and let me know which applications don't work to see what edge cases I haven't accounted for.
Electron apps require the environment variable
XDG_CURRENT_DESKTOP=Unity
so you may have to run apps likeXDG_CURRENT_DESKTOP=Unity slack
for example. ref: electron/electron#10427Supersedes #2645 (thanks to @mckinney-subgraph for the jumping-off point)
Closes #1768, closes #1372
Refs:
I implemented the KDE protocol since I couldn't find any apps that implemented the XDG/freedesktop protocol to test it.
The watcherThis is pretty much feature-complete.The rest is a barebones implementation that just about works with many bugs, especially in the rendering, since I'm not very knowledgeable about cairo, hopefully someone can give me a few tips? or I'll work it out eventually.Notable bug: bus events sometimes aren't processed on startup. (I'm not sure if this is still happening)
I only realised right at the end that clicks are going to be quite haphazard since we can't get the global coordinates, which are needed to send to the app.
But since it basically works, I'm putting it here so that people know that this feature is not being ignored. :)
@4e554c4c let me know if I'm doing anything horribly wrong :P
Things that will definitely be done in this PR:
Things that may be done but not definitely:
Things that will probably be left for another PR: