Hi,
I am running Arch GNU/Linux with Gnome shell 3.16 on top of Wayland.
I have F12 set to show/hide Guake but when I run it under Wayland and press F12 Guake does not appear. This happens when I have no other apps opened. If I have any app opened and focused (for example Firefox) and press F12, Guake appears.
Another related issue is once Guake is opened, if I press F12 again to close it, it does not close. I need to press other keys and then F12 in order for it to work.
Basically I cannot press F12/F12/F12.... to show/hide Guake. I managed to reproduce this on Arch with Gnome shell 3.14 and Wayland also, not only with 3.16. It runs perfectly on Xorg on both Gnome shell versions.
If you wish I can try to make a Vagrant box with GUI running a Fedora and I can make it easy for you to reproduce it.
PS: This bug it the only thing blocking me from switching to Wayland :P
Thank you for building Guake! :D
I cannot reproduce it and don't have vagrant so if you have something to help I'll welcome it !
Hmmm so your are you unwilling to install Vagrant? What distro are you using? What gnome shell version? I want to find a way for you to reproduce the issue. Thank you!
Never used vagrant
Ubuntu 14.04 gnome
In order to reproduce this bug you need to run a fairly recent Gnome Shell under Wayland. How do you prefer to do this? I suggest using Vagrant even if you did not use it before since it is easy for you to use it. Will Ubuntu Gnome switch to Wayland soon?
I cannot do anything that requires large among of work to change my environment. It will be easier for you if you try to debug the code yourself, there are log, it's python code so pretty easy to understand. I guess however this is a tricky bug :(
I've just put a 10$ bounty on this bug on bountysource. I'll try to get more people interested in this bug, I hope it will change the priority from "Low" :P It breaks toggle functionality on new software and toggle functionality is a core feature of Guake I hope I'm not the only person with this issue :P https://www.bountysource.com/issues/11035271-toggling-guake-show-hide-under-wayland-looses-focus
Will it be easier for you if I manage to give you a virtual machine with Ubuntu Gnome beta installed?
yes it can :) I had tried to install gnome beta several months ago but I don't have the VM anymore :(
Defect passed high for andrei
Thank you! :D I'll try to make a Gnome VM in the following days. This will help you get a beta machine quite fast. But I will need to take a ubuntu 15.04 server or cloud, strap Gnome on it and export the VM somewhere.
Making a Gnome Virtual Machine with both VirtualBox and Gnome Boxes failed. The current beta is pretty much broken. I don't want to get into more details.
I managed to reproduce the bug on a Ubuntu Gnome 15.04 beta1 live USB.
1) get the beta http://cdimage.ubuntu.com/ubuntu-gnome/releases/vivid/beta-1/ & write it on a USB
2) boot form it
3) connect to the Internet, open a terminal and run
sudo apt-get update && apt-get install -y gnome-session-wayland && apt-get install -y guake
4) logout from the menu and login back selecting Wayland like in this image http://worldofgnome.org/uploads/2014/03/wayland-gdm.png (leave the password empty)
5) start guake
6) leave all applications closed except for guake in the background and press "F12". Nothing happens.
If you start Firefox and press F12 in Firefox, Guake pops up but if Firefox is closed it does not.
Hope this helps you reproduce the bug on a environment similar to your dev env.
It seems that I am not the only person that has/will have this problem https://plus.google.com/u/0/117017819812643628894/posts/YY363wktxV8
I hope this extra information is useful :)
Just wanted to confirm bug on Arch running 3.16.1. Hot key works when guake preferences is in focus.
I came to report the same thing. Also Arch running gnome 3.16.1
Can also confirm this on Arch running Gnome 3.16.1
I took a look at this. Sadly I haven't managed to fix the problem. However, I believe the problem resides in the globalhotkeys C code.
In the file keybinder.c during the initialization it calls gdk_window_add_filter, where the first parameter is a window and the second parameter is a function that will be called for each event produced in the window. As it is being called now, it does it with the root window gdk_get_default_root_window (). Reading the documentation for gdk_window_add_filter we find:
Pass NULL for window to get all events for all windows, instead of events for a specific window.
This is what I tried, and it did not make any difference.
If we uncomment the 21st line in keybinder.c and recompile it by running ./dev.sh, we will get additional terminal output when pressing F12. When pressing F12 a couple of times to reveal and hide Guake with a window in focus we get the following output:
Got accel 65481, 0
Got keycode 96
Got modmask 0
--no-startup-script argument defined, so don't execute the startup script
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 2, -1
Got KeyPress! keycode: 96, modifiers: 0
Calling handler for 'F12'...
DBG Window display
DBG: Showing the terminal
do not set background from user
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 65, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 22, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 22, -1
Got Event! 22, -1
Got Event! 28, -1
Got Event! 19, -1
Got Event! 15, -1
Got Event! 12, -1
Got Event! 9, -1
Got Event! 65, -1
Got Event! 3, -1
Got KeyRelease!
Got Event! 9, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 33, -1
Got Event! 33, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 65, -1
Got Event! 10, -1
Got Event! 9, -1
Got Event! 10, -1
Got Event! 10, -1
Got Event! 2, -1
Got KeyPress! keycode: 96, modifiers: 0
Calling handler for 'F12'...
DBG Window display
DBG: gtk.gdk.WindowState =GDK_WINDOW_STATE_ABOVE of type GdkWindowState>
DBG: gtk.gdk.WindowState = 40
DBG: GDK_WINDOW_STATE_STICKY? True
DBG: GDK_WINDOW_STATE_WITHDRAWN? False
DBG: GDK_WINDOW_STATE_ABOVE? True
DBG: hiding the terminal
Got Event! 18, -1
Got Event! 10, -1
Got Event! 10, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 28, -1
Got Event! 3, -1
Got KeyRelease!
I have highlighted the more interesting sections in bold.
If we change workspace in Gnome Shell to an empty one, i.e. where we don't have any window in focus, and press F12, these sections aren't produced. Therefore we can draw the conclusion that the keypress isn't detected since the output on line 168 in keybinder.c is never produced.
I don't know what is causing this behavior though; Wayland? Mutter? Globalhotkeys? Guake?
However, I see that there is a proposal, https://github.com/Guake/guake/issues/510, to replace Globalhotkeys with a different library. I don't know though. keybinder hasn't been updated since 2012, so I doubt it will make any difference to be honest.
I did this testing in a virtual machine running Ubuntu GNOME 15.04 32-bit. Since VirtualBox doesn't support Wayland (yet), I used VMware instead. However, VMware is proprietary and only has a free 30 days trial.
Hello
Can you try with the latest HEAD, we have switched to an keybinder module
I'm trying to compile it. I have Fedora22. I followed these instructions https://github.com/Guake/guake#compilation
$git clone https://github.com/Guake/guake.git
$cd guake
$./autogen.sh
/usr/bin/gnome-autogen.sh
checking for automake >= 1.9...
testing automake... found 1.15
checking for autoreconf >= 2.53...
testing autoreconf... found 2.69
checking for glib-gettext >= 2.2.0...
testing glib-gettextize... found 2.44.1
checking for intltool >= 0.25...
testing intltoolize... found 0.51.0
checking for pkg-config >= 0.14.0...
testing pkg-config... found 0.28
Checking for required M4 macros...
**Warning**: I am going to run `configure' with no arguments.
If you wish to pass any to it, please specify them on the
`./autogen.sh' command line.
Processing ./configure.ac
Running glib-gettextize... Ignore non-fatal messages.
Copying file po/Makefile.in.in
Please add the files
codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
progtest.m4
from the /usr/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.
Running intltoolize...
Running autoreconf...
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force --warnings=no-portability
configure.ac:79: warning: macro 'AM_GCONF_SOURCE_2' not found in library
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.ac:79: warning: macro 'AM_GCONF_SOURCE_2' not found in library
autoreconf: running: /usr/bin/autoconf --force --warnings=no-portability
configure.ac:79: error: possibly undefined macro: AM_GCONF_SOURCE_2
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
What am I doing wrong? :D
yum install guake?
The problem still appear on guake from git HEAD
@pypingou it's actually dnf install guake :D
I have it from the repos but since I reported this bug I wanted to check the HEAD version and install it from source and check if it is ok before it gets into other distros.
@pypingou it's actually dnf install guake :D
You got me there, old habits die hard :D
I have it from the repos but since I reported this bug I wanted to check the HEAD version and install it from source and check if it is ok before it gets into other distros.
I used to have a daily rebuild of guake on copr, I should check if it is still working, let me get back to you on Monday, that should make testing easier ;-)
Ok I managed to fix the build, here is the copr repo: https://copr.fedoraproject.org/coprs/pingou/guake/
don't hesitate the modify the README if there are any dependency to add for fedora
On Sun, Jun 07, 2015 at 02:58:06AM -0700, Gaetan Semet wrote:
don't hesitate the modify the README if there are any dependency to add
for fedora
There is keybinder now :)
I installed from the copr and keybinder. What am I doing wrong? :D
$guake
Traceback (most recent call last):
File "/usr/lib64/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/lib/python2.7/site-packages/guake/main.py", line 43, in <module>
from guake.guake_app import Guake
File "/usr/lib/python2.7/site-packages/guake/guake_app.py", line 49, in <module>
import keybinder
ImportError: No module named keybinder
you need keybinder library + the python wrapper (in debian/ubuntu, it is libkeybinder0 and python-keybinder)
$sudo dnf install python-keybinder
$guake INFO:guake.guake_app:Logging configuration complete
/usr/lib/python2.7/site-packages/guake/guake_app.py:1624: GtkWarning: gtk_box_pack: assertion 'child->parent == NULL' failed
self.mainframe.pack_start(self.mainframe, expand=True, fill=True, padding=0)
I use pyenv for python versionion. Do I need to have something installed with pip for the local user?
I installed it from the copr, I installed the keybinder related stuff and my Fedora broke. For some reason Plymouth seemed to freeze. I managed to jump into a console with Alt+F2 but I did not manage to fix the problem. I decided that I will loose less time if I nuke my Fedora and reinstall.
I suspect my problem is not related to Guake, I even managed to revert the last dnf transactions but it still did not boot. Even if I think this is not a Guake related issue I think it is important to post it here since the coincidence is quite strange. I will make a backup before the next time I install Guake from HEAD (master) as a precaution.
I'm using the most current version on webupd8 (0.7.2) under Wayland and have what I think is the same issue (although it may differ). It seems to me that the behaviour is this:
When I'm running an x-native app (running via xwayland automatically), or if I'm in guake itself, the hotkey is recognized. But if I'm in a wayland app (or the desktop environment alone) the hotkey is not recognized.
I think the problem is GTK2 vs GTK3 shortcuts and how they're implemented (although I could be off-base here, that's just a rank guess). In any case, until this issue is fixed -- for anyone who loves guake and wants to keep using it, do this:
..this isn't exactly a fix, but it works very well, and it's enabled me to keep using Guake (which I like a _lot_). This fix is swift and responsive due to guake's nice DBus cli interface. Nice work on that, btw!
can you try the HEAD, we use another key binder library.
I installed the latest from the COPR and python-keybinder.
Guake will never appear on Wayland. I tried with F12 and with Control + Shift + J (my settings). It only dissapears and only with F12, not with Ctrl + Shift + J.
PS: when I open google chrome I get this:
/bin/google-chrome: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory Might it be related to the installation of Guake from the COPR?
Sorry, the shortcut key I use is Shift + Alt + J. It got into my muscle memory and I forgot :D
I tried the latest from the COPR under X11 and only F12 works. Under X11 it works both with showing and hiding Guake.
@Stibbons the latest version in copr is git089bbdb6 from July 6th.
Yes, @pypingou that was the build I ran. guake-0.7.2-8.20150706git089bbdb6.fc22.noarch
FYI: Apparently the Google Chrome issue is related, but I think it's my bad. Before installing the COPR Guake, I removed the current version. I think updating was an option also. When I removed the default Fedora22 Guake I also removed libXScrnSaver.
dnf history info 99
Command Line : remove guake
Transaction performed with:
Installed dnf-1.0.1-2.fc22.noarch @updates
Installed rpm-4.12.0.1-12.fc22.x86_64 @updates
Packages Altered:
Erase guake-0.7.2-2.fc22.x86_64 (unknown)
Erase libXScrnSaver-1.2.2-8.fc22.x86_64 @fedora
Erase pyxdg-0.25-5.fc22.noarch @fedora
Erase vte-0.28.2-14.fc22.x86_64 @fedora
I removed Guake from the COPR and reinstalled the old version and Chrome works again.
Hello, I am experiencing this issue under Arch linux wtih GNOME 3.18 running with wayland.
I notice that it will not drop down when I have a GTK+ 3 application selected only when I have an application running under XWayland selected.
I have the same problem on Fedora 23, GNOME 3.18.2 Wayland.
Thanks
Waaaaaaa!!! Thank you, @eode! This solution you suggested works for me! I have been using a Guake replacement for some time now and now I made a key binding to guake -t and I'm back on Guake! I don't know how I missed your comment! Fedora 23 + Gnome 3.18 here.
I have the same problem with Fedora 24 with Wayland, Gnome 3.20.2, and guake 0.8.5.
And I confirm that the workaround provided by @eode is working very nicely! Thanks!
Same issue here, I work around by opening Guake manually twice, then I can hit F12 to use Guake. I have Arch linux with gnome 3.20.3 and Guake 0.8.5.
@ganloo have you tried this workaround. It seems simpler than opening it twice.
@andreicristianpetcu Yes, it works quite well, thanks. I just want to confirm this issue which has not been fixed, but thank you anyway.
Yeah, as much as this is a functional workaround, the actual issue is
_definitely_ still there.
On Tue, Jul 26, 2016 at 11:52 PM, ganloo [email protected] wrote:
@andreicristianpetcu https://github.com/andreicristianpetcu Yes, it
works quite well, thanks. I just want to confirm this issue which has not
been fixed, but thank you anyway.—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Guake/guake/issues/492#issuecomment-235477458, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACXHzwWDiNcpgNwGnvJ8OoBpjT8lAhI5ks5qZtYZgaJpZM4D_R6x
.
Can confirm this bug for fedora 24. Just upgraded and wanted to try out Wayland and hit this bug. The workaround posted by @andreicristianpetcu worked fine :-)
Should I somehow notify the fedora guys about this?
Thx for making this great application.
Btw wayland is default as of gnome 3.22 and more people are going to face this issue. The work around mentioned earlier works for now.
This happens on Fedora 25, which has wayland as default. There is the workaround mentioned earlier, but guake should work without needing it.
Thanks!
The workaround mentioned earlier with keyboard shortcut works for single monitor, in dual monitors it always gets focus in a particular monitor.
Best,
Razvan
@avra911 That doesn't for Fedora on my ThinkPad T440s when I have it on the Dock, I can get guake to jump to even the built in screen. Seems to depend on the HW/Distro used. Might be interesting to know what you run.
Upgraded to Fedora 25. Wayland became the default display server. Custom keyboard shortcuts would work only in some contexts. For example: worked fine when focused on some windows like firefox, but would do nothing when focused on the desktop. No issue after setting WaylandEnable=false in the /etc/gdm/custom.conf file and restarting. [switching back to Xorg fixed it]
Edit: now unsure if it was only the guake shortcut that didn't work. Will update after checking if it's useful.
@gilgwath, I have exactly the same problem @rohantmp described only with dual monitor. Just on the laptop it works, it gets focused on desktop as well by adding the custom keyboard shortcut. On external monitor, sometimes gets focuses in desktop, sometimes not (4 times it wont, 1 time it will), randomly. I think this commit may fix it: https://github.com/Guake/guake/commit/33a1e817d436e503f2728ad1157a6896f8f392d7.
guake 0.8.7-1.fc25
fedora 25 with kernel 4.8.11-300.fc25.x86_64
on a samssung n900x4c
I just updated to Fedora 25, and can confirm this issue.
when i have for instance Google Chrome of Firefox open and i try the shortcut it works, when i have a "standard" terminal it doesn't work. Adding the shortcut to the global shortcuts broke it completely and it would stop working from the browsers as well as from everywhere else.
i switched back to Xorg (with the WaylandEnable=false in /etc/gdm/custom.conf) for now since i use Guake a lot throughout the day.
I can confirm it too, and the problem is also present when document viewer is in focus. So if you have any other application in focus it will work, if you don't have anything (or some specific ones), you won't be able to use it.
Using Fedora 25, latest version, and Xwayland
The workaround still works on Fedora 25 + Wayland.
I have the same issue on Arch/Gnome 3.22 + Wayland. The hotkeys work fine under xorg. I've noticed a similar issue with albert; in fact, the hotkeys for albert and guake seem to work/fail in the same places. Could that indicate a bug in Wayland?
Edit: some related links:
https://twitter.com/mricon/status/666068446782689280
https://github.com/clementine-player/Clementine/issues/5462
https://bbs.archlinux.org/viewtopic.php?id=218218
Since doing some updates on my Fedora 25 system, the work-around doesn't work anymore.
Worse, when a key is assigned (F9), the keypresses of it will "disappear" somehow. I am unable to bind the key to a global shortcut (which I removed to test if it still worked).
So now I need to go into the icon-tray to click on the icon for Guake to get it to show.
Happens with 0.8.8 as well (just updated to it from testing).
I have exactly the same problem as @brhahlen. After some updates, the workaround stopped working and Guake is now useless on Fedora 25.
For me it still works on F25. What happens if you runt from another terminal guake -t? @brhahlen @livthomas
It started working for me again, a week ago. Setting and resetting the Global Keyboard Shortcut (in Gnome Settings, not in guake) fixed it for me
Setting and resetting the Global Keyboard Shortcut (in Gnome Settings, not in guake) fixed it for me
Could you describe a little more what you did?
Go to the Gnome Applications Menu, type in "Keyboard", and click on the "Keyboard" Settings shortcut.
This will open a list with the default Global Keyboard Shortcuts.
Scroll all the way down, click the "+" and add Guake:
Name: Guake
Command: guake -t
Shortcut: F9 (in my case)
Do a reboot, just to be sure, because it didn't initially register for me.
Mine is now working again in the Guake settings, too.
So you replaced the libkeybinder library by the gnome hot key. I actually
like this way, I wonder if it should not be the default. Gnome hotkey
manager is more likely to support the keyboard properly compared to
libkeybinder.
So in a way, hotkey support in guake3 should be flexible enough to let the
Gaetan
I didn't specifically replace anything :-)
The hotkey is set both in Guake and in Gnome, and it works now. The advantage is that I don't need the autostart for Guake, as just pressing F9 will start Guake for me.
So I don't want to say this is the ideal solution, just what works for me.
@brhahlen, thanks, it works after changing the Gnome shortcut and restarting the system.
@brhahlen your method works for me, without restarting the system.
With a global hotkey guake shows up a little bit slower, but it works everywhere. So i use different hotkeys to run and to toggle guake. If local not working, global does.
@Stibbons, i can add another one case with Fedora 25, Gnome3.22, Wayland.
If I run Naitilus and focuse it, my guake's hotkey ctrl + space not show guake, but toogle selection of directory under mouse.
@brhahlen thank you, it works!
Just updated my Debian laptop and it seems I'm hitting the same issue. I can add the shortcut, but it introduces a small delay on the Guake shell spawning. It's a bit weird when you are used to the proper speed.
For now, I've switched to Gnome on X11 when login in, which fixes the shortcut not working on the Desktop or in files.
I have updated my Debian (testing) installation and I have the same issue now, the workaround works well. I reduced the delay by using the following code:
#!/usr/bin/env python2
# -*- coding: utf-8; -*-
import dbus
try:
bus = dbus.SessionBus()
remote_object = bus.get_object('org.guake.RemoteControl', '/org/guake/RemoteControl')
remote_object.show_hide()
except dbus.DBusException:
pass
I put this in /usr/bin/guake-toggle.py with exec permissions, and changed the shortcut to execute this command. I used the strings DBUS_NAME and DBUS_PATH directly to avoid importing anything from guake.
I am not sure if this is a solely wayland bug, in such case maybe adding this command to guake is a good idea and it would help in future similar bugs.
Another situation that is linked: as it is, you can show the guake window when there is another window of a non-gnome program that's open. The problem also appears to show the guake window on the _right_ screen. i.e. if you have no window, or only gnome apps windows, open on one screen, you won't be able to open your guake window on that screen even if your mouse is there. If you have at least one non-gnome window on that screen, it works. Seems moving your mouse around in gnome windows / gnome desktop does not update the mouse position...
@brhahlen nice one this works for me too, now since I found out how to make @jorgeecardona script work it also starts pretty smooth :-) Did need to reboot though!
@brhahlen, thanks working perfectly
Hello,
this workaround work really well with a single monitor. When you have multiple monitors guake appear only on the first monitor.
The workaround still works on Antergos + Wayland.
I have the same bug on Fedora 28, GNOME Shell 3.28.1.
I've ran into a different bug on Fedora 28, GNOME Shell 3.28.2:
I have had F12 mapped to guake -t and it worked quite well. However, as part of some recent update it seems I am no longer able to map F12 to anything. I therefore had to resort to mapping guake -t to F10 which thankfully still works but is far from optimal.
If anyone has any clue as to how to get F12 to work again, I would greatly appreciate it.
I have the same bug on Archlinux, GNOME Shell 3.30.1
The workaround mapping two times the same shortcut (Guake and GNOME Settings) works for me.
Edit: versions
Guake Terminal: 3.3.2
VTE: 0.54.2
VTE runtime: 0.54.2
Gtk: 3.24.1
Same bug here, I added 10$ to the bounty:
https://www.bountysource.com/issues/11035271-toggling-guake-show-hide-under-wayland-looses-focus
Hello guys, just a hint for Fedora (30) users, the workaround needs to use guake3 names, therefore:
#!/usr/bin/env python3
# -*- coding: utf-8; -*-
# Copied from https://github.com/Guake/guake/issues/492#issuecomment-324165795
import dbus
try:
bus = dbus.SessionBus()
remote_object = bus.get_object('org.guake3.RemoteControl', '/org/guake3/RemoteControl')
remote_object.show_hide()
except dbus.DBusException:
pass
This also seems to effect Fedora 30 using Xorg.
UPDATE:
After looking through the comments i checked and tried a few things all failed on a fresh default install of Fedora 30. What solved the problem was adding a keyboard shortcut in settings.
Name: Guake Toggle
Command: guake -t
Shortcut: F12
Im using Xorg not wayland with GNOME. Maybe add an option to include the shortcut to the settings on install ??
Thanks @scope2229 ! Creating a gnome-shell keyboard shortcut also works for Wayland (Debian 10 buster).
Stpe-by-step:
guake-toggle for commandThanks @SergiyKolesnikov
This solution works like a charm for Ubuntu 18.04 with Ubuntu on Wayland (enabled on signup).
I've been using a similar shortcut as @SergiyKolesnikov (thanks!) however I have one tweak and one issue with it.
guake-toggle for command (this is recommended as it can be a bit faster)My issue however is that this doesn't seem to work with the "Refocus if open" option. If I open Guake, Ctrl+Tab over to a different window I must press the keyboard shortcut again. (I have had to disable "Hide on lose focus" - piping to wl-copy and other commands hid the terminal when finished - which I think is what is causing this issue)
First time will hide the already open Guake window.
Second time will show the window again.
Does anybody have a script/CLI options for overcoming this?
Most helpful comment
I'm using the most current version on webupd8 (0.7.2) under Wayland and have what I think is the same issue (although it may differ). It seems to me that the behaviour is this:
When I'm running an x-native app (running via xwayland automatically), or if I'm in guake itself, the hotkey is recognized. But if I'm in a wayland app (or the desktop environment alone) the hotkey is not recognized.
I think the problem is GTK2 vs GTK3 shortcuts and how they're implemented (although I could be off-base here, that's just a rank guess). In any case, until this issue is fixed -- for anyone who loves guake and wants to keep using it, do this:
..this isn't exactly a fix, but it works very well, and it's enabled me to keep using Guake (which I like a _lot_). This fix is swift and responsive due to guake's nice DBus cli interface. Nice work on that, btw!