Re: [SF] xconsole mystery



Janek> by my guess, part of the problem is that 'matched windows' stuff
Janek> applies only when a new window is opened. Perhaps we need a patch
Janek> which applies 'matched windows' instructions upon sawfish start
Janek> to all already opened windows....

Ian> Hmm, no, that can't be it.  Even windows that already exist when
Ian> sawfish starts go through the mapping protocol, the code around
Ian> windows.c:1607 takes care of that.  Then map_request() in events.c
Ian> calls add_window(), from which before-add-window-hook is run, and
Ian> that's where the matchers hide.  So the matchers must in fact be
Ian> applied against my window.

Now I know why it behaves this way.  In events.c, map_request(), add_window()
is called first.  That will aplly the matchers, but _then_ the check is made
is initial_state == IconicState and if this is true the window is iconified.

The right fix would seem to be to use the raw X ID and XIconifyWindow()
instead of rep's Qiconify_window, and do it _before_ the add_window()
call.

-- 
Ian Zimmerman <itz buug org>
gpg public key: 1024D/C6FF61AD 
fingerprint: 66DC D68F 5C1B 4D71 2EE5  BD03 8A00 786C C6FF 61AD
Ham is for reading, not for eating.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]