Dominik Vogt wrote: > > Bob, I had to restore some of the old logic in focus_grab_buttons(). > What I do not understand is your motivation to reverse buttons > grabbing for the focused window. I think you assumed that calling > the function with is_focused == 1 means to ungrab the window - > which is wrong.
This is really curious. It certainly looked like the intent of is_focused == 1 was to ungrab, anc vice-versa. [sigh.] That's the disadvantage of having been inactive for so long. In the code as it was, I could never see the ungrab in f_g_b happening, and I often couldn't see the grab happening where it seemed it should (based on several printfs I finally inserted in desperation). > It still grabs buttons if the (focused) window has > MouseFocusClickRaises and is not on top of all other overlapping > windows. I have removed/rewritten/commented the parts dealing > with focus handling in focus_grab_buttons(). Have you committed your changes yet? I didn't see a mention of them come through the mailing list from CVS. Can you describe for me a scenario that I can try, where the code as I changed it misbehaves? Then I can use that as a sanity check. I haven't seen any untoward behavior on my systems, but I'm obviously not exercising either the apps or the combinations of style options that are causing problems. > Then there is the stuff in MoveFocus which suppresses ungrabbing > buttons of the focused window if it is already on top. I guess > this causes the problem with xfm, Not really, this was because my changes to f_g_b caused an ungrab to happen prematurely for a MouseFocusClickRaises window, so we never caught the click to raise it. > but actually your fix means that > these buttons are not ungrabbed at all, regardless if the window > is on top or not, i.e. the grabs are permanent as long as the > window is focused, right? Until someone clicks on it. But I think I overlooked the case of an AutoRaise happening (which I don't use - I always explicitly click to raise). > But this could be done much easier in > f_g_b(): > > if (<mousey_focus> && is_focused) > grab_all > else if ... Hmmm. I'll have to think about this after I get a look at your changes. > This has to be cleaned up before 2.4.1. Absolutely. Cheers, Bob -- Visit the official FVWM web page at <URL:http://www.fvwm.org/>. To unsubscribe from the list, send "unsubscribe fvwm-workers" in the body of a message to [EMAIL PROTECTED] To report problems, send mail to [EMAIL PROTECTED]