FvwmButton Moving between monitors on reboot (Random)

Hi guys,

Hope you can all help, I’ve been struggling trying to write a small function to keep a button in the very top left hand corner of the screen on the Primary Screen. I’ve managed to get this up and running but I’m getting random and varied results every time I reboot the machine.

Basically I look to see if the machine has an external screen connected and if so I use a dual-screen config. Otherwise I use single-screen config.

Here is an image of what Hardware I’m using:

https://i.ytimg.com/vi/Ww6S8C6HQEE/maxresdefault.jpg

Here is my config file:

[size=85]pos@s8000t001-test:~/.fvwm> cat config.dual.hp.topleft
DestroyFunc StartFunction
AddToFunc StartFunction

  • I Exec exec /home/pos/bin/beanstore.sh
  • I Exec exec fvwm-root -r /usr/share/wallpapers/studio_wallpaper_1024x768.png

Style RestartPOSButton NeverFocus,StaysOnTop,NoTitle,BorderWidth 0,HandleWidth 0
DestroyModuleConfig RestartPOSButton]*RestartPOSButton: ButtonGeometry 100x20+0+0[/b]
*RestartPOSButton: Rows 1
*RestartPOSButton: Columns 1
*RestartPOSButton: Font “xft:Carlito-Regular:pixelsize=14”
*RestartPOSButton: Colorset 30
*RestartPOSButton: Frame 1
*RestartPOSButton: (1x1, Title “Restart POS”, Icon graphics_paint_edit.png, Action(Mouse 1) Exec restartBeanStore)
Module FvwmButtons RestartPOSButton

DestroyFunc StartFirefox
AddToFunc StartFirefox

  • I Exec exec firefox
  • I ThisWindow (firefox, !Maximized) Maximize
  • I ThisWindow WindowStyle FixedSize, FixedPosition, !Maximizable

DestroyFunc StartXterm
AddToFunc StartXterm

  • I Exec exec xterm

Key f A M StartFirefox
Key x A M StartXterm

DesktopSize 1x1
DesktopName POS

Mouse 1 SF A -
Mouse 1 T A -
Mouse 2 SF A -
Mouse 2 T A -
Mouse 1 R A -
Mouse 0 R A -
Mouse 2 R A -

Style “*” SloppyFocus, NoTitle, BorderWidth 0, HandleWidth 0
Style Bean FPClickRaisesUnfocused, FPClickRaisesFocused, NoTitle, BorderWidth 10, HandleWidth 0
Style xvkbd !FPGrabFocus, NeverFocus, NoTitle, BorderWidth 0, HandleWidth 0
Style out StaysOnBottom, Notitle, BorderWidth 0, HandleWidth 0
#Style xterm StaysOnBottom, Notitle, BorderWidth 0, HandleWidth 0

Colorset 30 fg black, bg #c6c3c6, RootTransparent buffer, Tint #efebef 65[/size]

This is what it looks like after reboot 1:

https://imgur.com/OdcmZBE

This is what it looks like after reboot 2:

https://imgur.com/a/N7eQw

In both instances of the reboots the config being picked up is the dual-screen one.

The config file I’m using is the same as the config.dual.hp.topleft one.

.xsession errors below:

[size=85]pos@s8000t001-test:~> cat .xsession-errors-:0
[fvwm][CMD_DesktopName]: <> First argument to DesktopName must be an integer:
unable to find device USBest Technology
unable to find device USBest Technology SiS HID Touch Controller

Fri Dec 1 10:04:52 2017
Geometry: Desktop geometry is set to 2048x768+0+0
Main: XTest extension present - version 2.2
Main: Listening on port 5900

Fri Dec 1 10:07:49 2017
Connections: accepted: 10.205.11.22::61686
SConnection: Client needs protocol version 3.8
SConnection: Client requests security type VncAuth(2)

Fri Dec 1 10:07:51 2017
Main: Enabling 8 buttons of X pointer device
Main: Allocated basic Xlib image
VNCSConnST: Server default pixel format depth 24 (32bpp) little-endian rgb888
VNCSConnST: Client pixel format depth 8 (8bpp) color-map

Fri Dec 1 10:08:55 2017
VNCSConnST: Client pixel format depth 24 (32bpp) little-endian rgb888[/size]

NOTE: The ‘unable to find device’ errors are not an issue. There are multiple device names and the script looks for multiple. It hasn’t found the 2 USBest ones, however it will have found another one as the touchscreen does work as expected.