GNOME Bugzilla – Bug 734159
Inactive and active window decorations look exactly the same
Last modified: 2018-05-02 16:11:10 UTC
None of the ":backdrop" CSS selectors get used for unfocused/inactive windows if one uses a window manager such as xfwm4 or OpenBox instead of mutter. This bug, combined with the introduction of client-side decorations, means that the title bars for inactive windows still look exactly the same as the active window. This is a major usability problem, since there is no longer any way to tell which window will respond if one starts typing.
Why wouldn't they ? GTK+ is adding the backdrop state flag whenever the window is unfocused. I'm pretty sure xfwm4 and openbox have a notion of focus... See gtkwindow.c:ensure_state_flag_backdrop for the relevant code.
It appears that for the purposes of "backdrop", GTK+ is looking only at the _NET_WM_STATE_FOCUSED property, which was introduced [1] in 2011 and at least xfwm4 doesn't support yet (not surprising given that XFCE's last release was in 2012). xfwm4 of course supports the traditional FocusIn and FocusOut events, but GTK+ doesn't seem to pay attention to those in this case. http://cgit.freedesktop.org/xdg/xdg-specs/commit/?id=e34d84a17341bb82af38fb84c6c070bb58b6d5b5
I implemented a patch for xfwm4 here: https://bugzilla.xfce.org/show_bug.cgi?id=11067
thanks for tracking that down. It would be nice if we could take cues from Focus events, at least when _NET_WM_STATE_FOCUSED is not supported. A patch for that would be most welcome.
Focus events seem to all come from XI2 in GDK now; unfortunately I have no familiarity with that input system. Looking at the _NET_ACTIVE_WINDOW property on the root window could also be an option. I tried to get some code working for this last night but wasn't successful.
Ping? Is anyone looking at using e.g. _NET_ACTIVE_WINDOW in case _NET_WM_STATE_FOCUSED is not in _NET_WM_SUPPORTED?
nobody is working on this, as you can see from the lack of updates...
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gtk/issues/499.