Holding Alt key to have edgeresistance of 0?(no key pressed)

Hi guys, I would like to do like pekwm where when one holds the Meta/alt key of the keyboard (only ! ) and you move your mouse close to the edge you get into the adjacent workspace.
Is that possible with fvwm ?

A sthg else, my config uses this type with holding mouse 1 and meta:

[code]AddToFunc Move-or-Iconify I Raise

  • M EdgeResistance 0 0
  • M Move
  • M EdgeResistance 99999999 9999999
  • D Iconify

and it contains too:

DesktopSize 3x2 EdgeScroll 100 100 EdgeResistance 9999999999999 999999999 EdgeThickness 2

You can bind commands to your alt key. If you look at the output from the following:

[n6tadam@workstation ~]% xmodmap
xmodmap:  up to 3 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x6d)
mod1        Meta_L (0x40),  Meta_L (0x7d),  Meta_L (0x9c)
mod2        Num_Lock (0x4d)
mod3        Super_L (0x73),  Super_L (0x7f)
mod4        Super_L (0x7f),  Hyper_L (0x80),  Menu (0x75)
mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x7c)

You can see that my left Alt key is Meta_L so I can do something like this:

Key Meta_L A N EdgeScroll 100 100

Of course, what you’re wanting to have happen is something bound on key hold, and key-release – something FVWM used to be able to do (the key-release stuff) but was taken out ages ago since it was deemed buggy. So… you’re probably going to have to use something like this:

SetEnv ED 0
DestroyFunc ToggleES
AddToFunc    ToggleES
+ I Test (EnvMatch ED 0) EdgeScroll 0 0
+ I TestRc (Match) SetEnv ED 1
+ I Test (EnvMatch ED 1) EdgeScroll 500 0
+ I TestRc (Match) SetEnv ED 0

But then this is sub-optimal since as soon as you press the Alt key your EdgeScroll functionality changes. Which may or may not be what you want. You could of course look at the EdgeIsActive and EdgeHasPointer test conditions, but then this would most likely invalid the need for you ever having the Alt key in the first place.

– Thomas Adam

Thanks a lot, you rock.

I am now using this:

DestroyFunc panscroll
AddToFunc panscroll

  • I EdgeThickness 2
  • I EdgeResistance 0 0
  • I EdgeThickness 1

DestroyFunc panscroll2
AddToFunc panscroll2

  • I EdgeThickness 0[/code]

with : Key Menu A N panscroll Key Menu A C panscroll2

Until the developpers make it work or that I move to enlightment …
(Pitty we cannot detecth the key release)

I wish you a good day (very sunny outside, worth to go)