GNOME Bugzilla – Bug 689030
Menus don't open correctly in awesome
Last modified: 2018-04-14 23:56:45 UTC
I use Gnome 3.4.2 with awesome 3.4.13 as my window manager on Debian sid. Menus are often vertically compressed, so that a scroll bar shows up. Then they disappear visually, but still have focus. It's a bit hard to describe what is going on, that's why I created a small screencast, it's attached. Additionally, sometimes the menus show up displaced from their normal position - possibly all the way on the opposite side of the screen. Sometimes the menus work, then suddenly they disappear. I cannot 100% reproduce it. But working for a few minutes with GTK3 applications and the behaviour shows up for sure. All GTK3 menus are affected, from evince over the file manager to the network-manager systray applet. When I navigate with the keyboard, the menus work fine. I was unable to trigger the behaviour with Mutter. The behaviour is present if I run the GNOME session with awesome as WM as well as with the plain awesome session. Running gnome with mutter and gnome-shell I could not trigger the menu bug. Apparently I am not the only one with this problem: http://article.gmane.org/gmane.comp.window-managers.awesome/9556
I could not attach the screen cast. It's here: http://freeshell.de/~mpfusion/screencast.mkv
Created attachment 233040 [details] [review] add missing bounds check in get_work_area This should fix bugs #689030 and #683333 The amount of data in the _NET_WORKAREA property was not being checked and some window managers (at least xmonad, i3, and awesome) are only including 4 values even if they report a number of desktops greater than 1. While we're at it also check that the type is CARDINAL and the format is 32.
After being annoyed by this bug for months (I use xmonad) I've finally tracked it down. The patch applies onto master, gtk-3-4, and gtk-3-6 cleanly right now. This is actually a bug both in gtk and in the window managers. The window managers should be setting enough values in the _NET_WORKAREA property and gtk should not be trying to get non-existent values from the property.
*** Bug 683333 has been marked as a duplicate of this bug. ***
the patch solves the problem for me. it applies correctly against libgtk 3.6.4 (and can be inserted as-is in the appropriate debian package's patch list). thanks for fixing this. until it's included upstream, interested debian users can download ready-built packages including this patch from <http://archive.amsuess.com/pool/main/g/gtk+3.0/>.
See also bug 691515 A workaround for this bug is to run: xprop -root -remove _NET_WORKAREA
In the Debian bug tracking system bug report #681974 [1] describes this problem. [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=681974
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
For the record, I haven’t seen this in a while with Debian Sid/unstable (currently awesome WM 4.2). But the patch was applied downstream.
As announced a while ago, we are migrating to gitlab, and bugs that haven't seen activity in the last year or so will be not be migrated, but closed out in bugzilla. If this bug is still relevant to you, you can open a new issue describing the symptoms and how to reproduce it with gtk 3.22.x or master in gitlab: https://gitlab.gnome.org/GNOME/gtk/issues/new