On Wed, Jan 13, 2010 at 11:03:54AM +0000, Thomas Adam wrote:
> On Wed, Jan 13, 2010 at 02:51:48AM -0800, Craig wrote:
> > On Wed, 13 Jan 2010 09:20:02 +0000, "Thomas Adam"
> > said:
> > ...
> > > 
> > > With ClickToFocus, see something like:
> > > 
> > > Style * ClickToFocus
> > > FvwmAuto 900 -menter Focus
> > 
> > That's exactly what I was looking for, thanks!
> > 
> > Some bindings, menu definitions and:
> > 
> > Style * ClickToFocus
> > FocusStyle * !GrabFocus 
> > FocusStyle * !GrabFocusTransient
> 
> That will stop the windows from taking focus when they're mapped, but it
> won't stop windows taking focus if they're via certain EWMH-hints -- which
> nothing you've show here addresses, and is likely going to annoy you more,
> based on what you've described.
> 
> So, here's some further things to consider:
> 
> * FVWM can to be told to not give focus to applications that request it
>   through various means with:
> 
>   Style * !FPFocusByProgram
> 
>   ... disallows that application to request focus itself.
> 
> * FVWM can be told not to give focus to an application where focus is sent
>   using FlipFocus/Focus:
> 
>   Style * !FPFocusByFunction
> 
> ... which is OK.  But the latter is a little drastic.  Indeed, when most
> people use "!FPFocusByFunction" what they're *really* after is destroying or
> redefining the definition of "EWMHActivateWindowFunc", as this gets called
> when an EWMH-compliant application would do something such as highlight
> itself in a taskbar, etc., but FVWM doesn't distinguish whether such a
> taskbar is present -- just that the event occured.  Hence:
> 
> DestroyFunc EWMHActivateWindowFunc
> AddToFunc   EWMHActivateWindowFunc
> + I Nop
> 
> (Blindly just using "DestroyFunc EWMHActivateWindowFunc" is fine here -- but
> making the action a "Nop" stops FVWM spewing errors to ~/.xsession-errors
> when it tries to run this function but cannot find it.)
> 
> Note that you can see its default operation in the man page -- but the
> second action it does is to request focus to the given window:
> 
> AddToFunc EWMHActivateWindowFunc I Iconify Off
>            + I Focus
>            + I Raise
>            + I WarpToWindow 50 50
> 
> ... It's the "Focus" command which causes people the most problems here.
> 

That was careless of me.  I missed off "UrgencyFunc" -- same rules apply as
with EWMHActivateWindowFunc -- either redefine it, or ditch it and give it a
Nop action.

-- Thomas Adam

-- 
"It was the cruelest game I've ever played and it's played inside my head."
-- "Hush The Warmth", Gorky's Zygotic Mynci.

Reply via email to