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 <[email protected]> gpg public key: 1024D/C6FF61AD fingerprint: 66DC D68F 5C1B 4D71 2EE5 BD03 8A00 786C C6FF 61AD Ham is for reading, not for eating.
