Subject: FVWM: FVWMButtons

From: Tim Hanson <[email-masked]>
Date: Sat, 20 Apr 2002 22:52:15 -0700

I switched to SuSE 8.0 a while back, on a number of computers.  For some reason 
I can't Swallow programs like xeyes and asclock anymore.  Is there a fix?
-- 
"Love is an ideal thing, marriage a real thing; a confusion of the real with
the ideal never goes unpunished."
		-- Goethe

--
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: Sat, 12 Oct 2002 12:24:07 +0200

> I can't Swallow programs like xeyes and asclock anymore.  Is there a fix?

You really need to be more specific:

 * What fvwm version do you have?  (try "fvwm2 -version")
 * What module do you use to swallow these applications?
 * Are you sure you have xeyes and asclock installed?  Can you
   start them from the command line?
 * What config lines do you have to swallow these modules?

P.S.:

Please adjust the time and date on your machine.  According to the
mail header, your mail was sent 6 months ago.

Bye

Dominik ^_^  ^_^

 --
Dominik Vogt, [email-masked]
Reply-To: [email-masked]
--
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: Tim Hanson <[email-masked]>
Date: Sat, 12 Oct 2002 13:10:03 -0700

Okay, I'll fill you in:

>  * What fvwm version do you have?  (try "fvwm2 -version")

2.4.5, compiled 3/25/02  That's the standard that comes with SuSE 8.0, I think.

>    start them from the command line?

Yes.  I see xeyes and xclock briefly on the screen before they disappear. 
asclock finds a home in the upper left corner of my screen.

 >  * What config lines do you have to swallow these modules?

*FvwmButtonsFont		6x13
*FvwmButtonsFore		Black
*FvwmButtonsBack		grey67
*FvwmButtonsGeometry	+300+30
*FvwmButtonsRows		2
*FvwmButtons (2x2 Frame 0 Swallow(UseOld) "FvwmPager" "Module FvwmPager 0 0")
*FvwmButtons (3x2 Swallow "xosview" `Exec xosview`)
*FvwmButtons - - Swallow "FvwmXeyes" Exec xeyes -name "FvwmXeyes" -geometry +0+0 
-bg grey67 &
*FvwmButtons - - Swallow "FvwmXclock" Exec xclock -name "FvwmXclock" -update 1 
-geometry +0+0 -padding 1 -bg grey67 &
*FvwmButtons - - Swallow "Fvwmasclock" Exec asclock  "Fvwmasclock" -geometry 
+0+0 -padding 1 -bg grey67 &
*FvwmButtons Fvwm2 window3d.xpm Function barthiswmpopupfunc
*FvwmButtons Help question2_3d.xpm Function barrcpopupfunc
*FvwmButtons Internet Terminal.xpm Function barinetpopupfunc
*FvwmButtons Graphics palette3_3d.xpm Function bargraphicspopupfunc
*FvwmButtons Games calvin_3d.xpm Function bargamespopupfunc
*FvwmButtons Tools box_full_3d.xpm Function bartoolspopupfunc
*FvwmButtons Shells Shell.xpm Function barshellspopupfunc
*FvwmButtons Files drawers_3d.xpm Function barfilesspopupfunc
*FvwmButtons Documents butterfly2_3d.xpm Function bardocspopupfunc

> mail header, your mail was sent 6 months ago.

Ha! Forgot!  This is a brand new host I just built yesterday, and I forgot to 
setup ntpd.

---

From: Floyd Davidson <[email-masked]>
Date: 12 Oct 2002 13:36:24 -0800

>*FvwmButtons - - Swallow "FvwmXeyes" Exec xeyes -name "FvwmXeyes" -geometry +0+0 

FvwmButtons seems to be _very_ sensitive to a number of things,
and the results are always odd.  I'll use your xeyes command as
an example and show how to trouble shoot this kind of problem.
(This pretty much describes what I actually did, too.)

First, look at the obvious differences in the command you using
for that one and the commands for others that do work.  Instead
of the above, try this,

 *FvwmButtons (- - Swallow "FvwmXeyes" \
  Exec xeyes -name "FvwmXeyes" -geometry +0+0 -bg grey67 &)

Opps, that doesn't work either.  So lets cut it down to a bare
minimum and see what happens,

 *FvwmButtons (- - Swallow "FvwmXeyes" Exec xeyes &)

Hmmm...  still won't work, so:

 *FvwmButtons (- - Swallow "FvwmXeyes" 'Exec xeyes &')

It  _still_ doesn't work!  (This one is tricky, and not at
all obvious.)  Run xeyes from the command line and then run
xwininfo on it.  The first line of information is,

   xwininfo: Window id: 0xa00007 "xeyes"

The problem is that FvmwButtons knows to grab this process by
the window id name, and if it doesn't match... it doesn't work.

 *FvwmButtons (- - Swallow "xeyes" 'Exec xeyes &')

Bingo, that one works! (It will also work if the "&" is removed
too.)  So then you can try putting your customizations back in.
The first discovery is that there is no point in using the
-geometry option, it's ignored anyway.

I'm not sure what the -name option will do with your
configuration.  On mine it causes a name to be put in the title
bar, which causes xeyes to not be swallowed correctly (but my
overall configuration tells fvwm not to decorate xeyes, so it
may be different for your config).

Another odd point is that setting the background won't do
anything unless the +shape option is also used.

So that ends up with a line that looks like

 *FvwmButtons (- - Swallow "xeyes" 'Exec xeyes -bg grey67 +shape')

You can apply the same process to the others and eventually get
them to work too.

   1) Start with the most basic command you can, just to get
      it to "work".  

      A) Copy the syntax used in a functioning example.

      B) Determine the actual window name by running
         the program and invoking xwininfo.

   2) Add other options such as framing, padding, and/or

   3) Add other program options, such as -bg.  This may
      need to be coordinated with 2) above.

Note that when something causes a problem, it might have
almost any manifestation, and generally it is exceedingly
difficult to connect what happens to what might have caused
it.  Hence stick with making exactly one change at a time,
using "killall FvwmButtons" to kill the module and then
restarting it from within fvwm each time (you don't have to
kill fvwm itself each time).

-- 
Floyd L. Davidson              <http://www.ptialaska.net/~floyd>
Ukpeagvik (Barrow, Alaska)  "Place where people hunt snowy owls"
--
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: Mikhael Goikhman <[email-masked]>
Date: Sat, 12 Oct 2002 22:13:58 +0000

On 12 Oct 2002 13:10:03 -0700, Tim Hanson wrote:
> 
> *FvwmButtons - - Swallow "FvwmXeyes" Exec xeyes -name "FvwmXeyes" -geometry +0+0 -bg grey67 &
> *FvwmButtons - - Swallow "FvwmXclock" Exec xclock -name "FvwmXclock" -update 1 -geometry +0+0 -padding 1 -bg grey67 &
> *FvwmButtons - - Swallow "Fvwmasclock" Exec asclock  "Fvwmasclock" -geometry +0+0 -padding 1 -bg grey67 &

Please use the syntax that is documented in the FvwmButtons man page:

*FvwmButtons: (Swallow "FvwmXeyes" \
	`Exec xeyes -name "FvwmXeyes" -geometry +3000+3000 -bg grey67`)
*FvwmButtons: (Swallow "FvwmXclock" \
	`Exec xclock -name "FvwmXclock" -update 1 -geometry +3000+3000 \
	-padding 1 -bg grey67`)
*FvwmButtons: (Swallow "Fvwmasclock" \
	`Exec asclock  "Fvwmasclock" -geometry +3000+3000 -padding 1 \
	-bg grey67`)

Regards,
Mikhael.

---

From: Tim Hanson <[email-masked]>
Date: Sat, 12 Oct 2002 19:33:43 -0700

That did the trick.  The SuSE staff put that in long ago (I've been slowly 
tweaking this same .fvwm2rc for a few years now).  Thanks.