broader detection of the iconify event

Revert using getXWindowStates() instead of gdk_window_get_state(). Xfce only
sets_NET_WM_STATE_HIDDEN after iconify.
This commit is contained in:
foudfou 2013-10-10 22:01:29 +02:00
parent 6459bc6e4f
commit 4bbb66cde8
1 changed files with 5 additions and 3 deletions

View File

@ -566,10 +566,12 @@ firetray.Window = {
case x11.UnmapNotify: // for catching 'iconify'
log.debug("UnmapNotify");
let gdkWinStateOnUnmap = gdk.gdk_window_get_state(firetray.Handler.gdkWindows.get(xid));
log.debug("gdkWinStateOnUnmap="+gdkWinStateOnUnmap+" for xid="+xid);
let winStates = firetray.Window.getXWindowStates(xid);
let isHidden = winStates & FIRETRAY_XWINDOW_HIDDEN;
log.debug("winStates="+winStates+", isHidden="+isHidden);
// NOTE: Gecko 8.0 provides the 'sizemodechange' event
if (gdkWinStateOnUnmap & gdk.GDK_WINDOW_STATE_ICONIFIED) {
if (isHidden) {
log.debug("GOT ICONIFIED");
let hides_on_minimize = firetray.Utils.prefService.getBoolPref('hides_on_minimize');
let hides_single_window = firetray.Utils.prefService.getBoolPref('hides_single_window');