On Sun, Aug 26, 2001 at 11:58:16PM -0400, Bob Woodside wrote: > 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.
Yes. > 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. 1) Move the mouse over a sloppyfocus+mousefocusraises window that is not on top. Restart fvwm. Click into the window. The window does not raise. 2) Create two overlapping sloppyfocus+mousefocusraises windows. Focus the upper window. Iconify the lower window via an icon manager (FvwmIconMan is fine; the icon manager must use NeverFocus). DeIconify the window. It is raised above the focused window. Move the pointer into the focused window and click. The window does not raise. > > 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. Could you perhaps describe again what the problem of xfm was? Bye Dominik ^_^ ^_^ -- Dominik Vogt, [EMAIL PROTECTED] Reply-To: [EMAIL PROTECTED] -- 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]