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
[gtk3] Binding of show/hide hotkey fails on Wayland #1109
Comments
Just saw the following issue #1084 that describes the same issue. Unfortunately I haven't found it during my searches before I opened this separate issue. So one of these issues can be closed. |
Issues look not the same, I ll keep them both |
Not sure if the comments to https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=857228 give some additional info here (probably not). I'm also wondering if Guake could offer a compatibility config option where it forces the use of X11/XWaylayd (maybe by just setting that env variable early in the startup phase). It's not as clean as @coder-hugo's suggestion with the GAction and global hotkeys, but still might have its valid use case. |
fix Guake#1340 fix Guake#1012 fix Guake#1224 fix Guake#1109
Forcing to use the X11 backend is no solution for this issue. Additionally I think the backend to use shouldn't be hard-coded but configurable. I don't have any other issues with the wayland backend. I just can't configure the global hot-key for show/hide within guake but there is a workaround available as you can show and hide guake via the dbus interface. By using the X11 backend instead of the wayland backend you also break the scaling of the app as this just works properly using the wayland backend with the x11 backend the scaled content looks blurry. |
Hi @coder-hugo. I understand your point, but I need to find a solution that satisfy the most people. I got the packaging of Guake blocked on Fedora because the global hotkey does not work by default, and I receive several new issues every week about Guake not working on Wayland. So for the moment, if the X11 backend works, I'll stick with it. I cannot develop under wayland, I don't use it on any of my systems, sadly (I have 2 ubuntu baremetal + lot of VM but wayland never worked under Parallels). So, feel free to hack into the code and propose a pull request. I have opened a ticket to add this support on #1343. |
Hi @gsemet. I also understand your point. But in this case I would definitely prefer to have an option for forcing the X11 backend. To prevent all those new issues of course this should be set to true by default. And the UI for this option should show a hint that disabling it may cause some issues. |
i'll be thinking into adding the "X11 compatibility mode for wayland" option, but currently there is no way to have libkeybinder work under wayland. So user needs to hack their own guake shortcut on GNOME, and kde user has to make the same, and so on. If i can get help on this maybe guake can be smoothly integrated and future-proof, but most of the time, I cannot do it alone, not having a Wayland nor a KDE or other than Gnome desktop. |
I just upgraded to version 3.0.2 of guake which uses GTK3 instead of GTK2. As a result of this guake runs with full Wayland support. With Wayland there is no way for an application to register a global hotkey like it's possible with X11. My current workaround to get the new version of guake running under Wayland is to set the following environement variable
GDK_BACKEND=x11
for the guake process. With this guake 3 will use also XWayland like it was the case for guake 2. So for now it's working but I think the better approach to solve this issue is to create a GAction which would appear in the global hotkeys section of the compositor. See this issus for more information.Edit: I just figured out that the workaround with the
GDK_BACKEND
environment variable isn't the best. In this case the show/hide hotkey works only if the window that has currently the focus is also rendered by XWayland. So I looked for a better workaround and found the command line flag--toggle-visibility
. So I configured a global hotkey in my compositor that callsguake --toggle-visibility
. With this there is no need to run guake using the x11 backend. But to get this working the changes of the following commit 0f2da79 are required which aren't yet contained in a release.The text was updated successfully, but these errors were encountered: