On Mon, Apr 14, 2003 at 07:44:20PM +0000, Mikhael Goikhman wrote:
> On 14 Apr 2003 17:50:11 +0200, Dominik Vogt wrote:
> > 
> >   AddToFunc enter_handler
> >   + I autohide $0 FvwmButtons 500 SW
> >   #               ^           ^   ^
> >   #               |           |   |___  Shade direction (optional)
> >   #               |           |_______  Hide delay
> >   #               |___________________  Unique window name/resource
> > 
> >   AddToFunc autohide
> >   + I WindowId $0 ($1) Deschedule $0
> >   + I WindowId $0 ($1) ThisWindow (shaded) WindowShade off
> >   + I CondCase (!Match) All (!shaded, $1) autohide_hide $$$$$$$w $2 $3
> > 
> >   AddToFunc autohide_hide
> >   + I Deschedule $0
> >   + I Schedule $1 $0 WindowShade $2
> > 
> >   AddToFunc StartFunction
> >   + I Module FvwmAuto FvwmAutohide -passid -menter enter_handler
> 
> This is nice. Just a note, this requires the latest cvs to run.
> I am not quite sure why the number of dollars is 7 instead of 8 here.

Trial and error.  I added dollars until it worked.  Eight works
fine too.

> Anyway, here is a more short and understandable version of the whole
> thing (all functions have one parameter less and only one dollar):

Ah!  I wasn't aware that a window id could be used in conditions.
But you are probably wrong about the number of '$'s because
$[w.id] *is* defined initially, but contains the wrong window.
I'll test that later.  There is still a bug with hiding:  as long
as enter events keep coming in fast enough, hiding will not
trigger.  The Deschedule command in autohide_hide must be
scheduled after the WindowShade command instead of being executed
right away.

>   AddToFunc enter_handler
>   + I autohide FvwmTaskBar 500 SW
>   #            ^           ^   ^
>   #            |           |   |___  Shade direction (optional)
>   #            |           |_______  Hide delay
>   #            |___________________  Unique window name/resource
> 
>   AddToFunc autohide
>   + I ThisWindow ($0) Deschedule $[w.id]
>   + I ThisWindow ($0, shaded) WindowShade off
>   + I Cond (!Match) All ($0, !shaded) autohide_hide $1 $2
> 
>   AddToFunc autohide_hide
>   + I Deschedule $[w.id]
>   + I Schedule $0 $[w.id] WindowShade $1
> 
>   AddToFunc StartFunction
>   + I Module FvwmAuto FvwmAutohide -menter enter_handler

Bye

Dominik ^_^  ^_^
--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [EMAIL PROTECTED]
To report problems, send mail to [EMAIL PROTECTED]

Reply via email to