-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Tray D-Bus Menu (fifth time the charm) #8920
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
base: master
Are you sure you want to change the base?
Conversation
Co-authored-by: Ian Fan <[email protected]> Co-authored-by: Nathan Schulte <[email protected]> Signed-off-by: Felix Weilbach <[email protected]>
Co-authored-by: Demi Marie Obenour <[email protected]>
|
One thing which I am unsure about is the namings of the functions in |
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
|
When can we expect this feature to be merged? |
|
Thank you for working on this! I've given this a try. Ran into some problems:
Here are patches for the first three: 0001-fix-swaybar-dbusmenu-fix-null-pointer-dereference-wh.patch |
This change adds a null check when loading icons in the dbusmenu code to avoid a segmentation fault when the icon surface fails to load.
Properly destroy cairo surface for icon data when freeing dbusmenu items.
…m access Add caching for icon lookups in menu items. Two new fields are added to the menu item struct: - icon_surface: cached icon surface loaded from icon_name - icon_lookup_done: tracks whether icon lookup has been attempted The icon is now looked up once and cached, rather than performing filesystem access every time the menu is drawn. The cached surface is properly cleaned up when the menu is destroyed.
I recently switched from i3 to sway and found out about the missing dbus menu support in swaybar (issue).
From what I understood, the initial implementation was done in #5161 then continued in #6249 then continued in #8405 then continued in #8698 🤔. However, it seems that the last two PRs (#8405 and #8698) are just people trying to rebase the PR to master, with some minor changes suggested in comments. I would like this to get merged so I decided to take ownership of this change and see it through the end.
In addition to the previous state, the following changes were added:
I have not reviewed all changes that are included in this PR since I saw that a lot of people already put a lot of work into that.
Let me know if I can do anything to speed up the review process or if I should adjust / fix any issues with this PR.