-
-
Notifications
You must be signed in to change notification settings - Fork 53
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
OSD capability #657
base: main
Are you sure you want to change the base?
OSD capability #657
Conversation
Hang-fire on this - likely to strip the OSD capslock/numlock stuff because it the calls to libxfce4windowing ... get primary monitor calls appear to be freezing budgie-daemon. |
I wonder if that's what caused a thread to be constantly at 100% the other day... I'd been trying to figure out what caused it, but couldn't get it to happen again. |
…seems to choke without them
…revent wayland-client mutex-locks
@BuddiesOfBudgie/best-buds ok - this is ready. The big issue I found is the way we are using libxfce4windowing. If you either:
Then its very very likely that budgie-daemon will end up spinning indefinitely at 100%. Running a gdb -p on budgie-daemon shows that the callout to the underlying wayland-client stuff (libwayland) performs a mutex-lock - two calls cause each-other to block and never completes. Thus - we should limit our usage of libxfce4windowing calls throughout a process especially if the usage is impacted as described by 1/2 above. |
Description
This PR reworks the previous mutter invoked OSD capability to be wayland friendly.
Now we specifically look for volume & brightness changes are display the OSD.
The volume changes are tracked in the same manner as the volume applet - i.e. GVC.
For brightness we grab the values straight out of the gsd component.
New here is OSD display when the caps-lock / num-lock keys are displayed. Very useful for small keyboards when you can easily press the caps-lock key accidentally. Note the comment in the keymap section of osdkeys where there appears to be a bug under wayland on first initialisation of the keymap - tests on X11 show the this code works just fine. i.e. if you press caps lock immediately on first login the OSD is not displayed. Quick test under Gtk4 and the equivalent standalone code for keymap initialisation works just fine. ho hum.
The old menus code has been nuked.
The daemon X11 stuff has also been removed - budgie-daemon is now running wayland not xwayland.
Submitter Checklist
git rebase -i
(if needed)