Subject: FVWM: FvwmEvent and Frame Id

From: Michael Guterl <[email-masked]>
Date: Sun, 25 Jul 2004 01:10:31 -0400

*FvwmEvent: Cmd exec
*FvwmEvent: PassId
*FvwmEvent: enter_window '/home/squeegy/fadein'
*FvwmEvent: leave_window '/home/squeegy/fadeout'

I am currently using this, but instead of having the WindowID passed
to the applications, is it possible to have the frameid passed
instead?
--
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-masked].
To report problems, send mail to [email-masked].

---

From: Dominik Vogt <[email-masked]>
Date: Tue, 27 Jul 2004 10:17:00 +0200

> to the applications, is it possible to have the frameid passed

You can't pass the frame window id at the moment, but you can make
a shell script:

  # assuming that the client window id is stored in the environment
  # variable WID:
  FID=`xwininfo -tree -id $WID |
    grep "Parent window" |
    sed -e "s/^.*: //" -e "s/ .*$//"
  `

It's a bit inefficient because it needs three external programs to
run.

Ciao

Dominik ^_^  ^_^

 --
Dominik Vogt, [email-masked]
Reply-To: [email-masked]

---

From: Mikhael Goikhman <[email-masked]>
Date: Tue, 27 Jul 2004 12:17:49 +0000

On 27 Jul 2004 10:17:00 +0200, Dominik Vogt wrote:
> a shell script [using xwininfo -id]:

I hope that whoever solves this natively does not add PassFrameId option
to FvwmEvent. :)  PassId option may be more or less obsolete.

Instead, the correct solution would be to add a new variable, i.e.:

  DestroyModuleConfig FvwmEvent: *
  *FvwmEvent: enter_window MyFadeIn
  *FvwmEvent: leave_window MyFadeOut

  AddToFunc MyFadeIn
  + I Exec exec /home/squeegy/fadein $[w.frame_id]

Alternativelly, if you know perl, then instead of these two scripts,
you may compose a simple module in perl that listens to enter_window
and leave_window events, and uses their frame_id argument.

Regards,
Mikhael.