I have investigated my problem further. If you have forgotten what it's about, don't worry, I'll explain.
What seems to happen is this: Starting at some time (typically after unlocking xlock in the morning), sawfish can no longer see button presses arriving in a window. It sees them in the root window, the frame and title bar including the sawfish buttons, but I can define bindings for button presses in the window till I'm blue in the face and sawfish will never act on them, and the events go to the window below. Same thing with global button bindings: they are seen by sawfish in every context except windows. So forget what I said earlier about Button6. That seems to be a red herring; it's mouse buttons in general. What is odd is that restarting sawfish does not help. As far as I know that causes sawfish to exec() itself, right? So if any internal datastructure is messed up, a restart should cure the problem. But clearly, workspace and window configurations are kept across such a restart, so I suppose that info is stored on the server. Might information about event masks and the like also be stored on the server? - Harald
