]> git.draconx.ca Git - fvwmconf.git/blobdiff - common/bindings
Don't lock the screen on a double scroll lock.
[fvwmconf.git] / common / bindings
index d9a03fae2d76f39007c50560fa893dc159bb6c28..afc2962b13401d71416f10e1dca5172207e038a8 100644 (file)
@@ -1,10 +1,13 @@
-# Globalbinds covers these.
-Key Page_Down A CM Nop
-Key Page_Up   A CM Nop
-Key End       A CM Nop
-Key Home      A CM Nop
-Key Insert    A CM Nop
-Key N         A CM Nop
+# MPD shortcuts
+Key Page_Up   A CM Exec exec mpc prev
+Key Page_Down A CM Exec exec mpc next
+Key End       A CM Exec exec mpc stop
+Key Home      A CM Exec exec mpc pause
+Key Insert    A CM Exec exec mpc play
+Key Page_Down A CM Exec exec mpc next
+
+Mouse 4 A CM Exec exec mpc prev
+Mouse 5 A CM Exec exec mpc next
 
 # Window management
 Key F4 A M  Close
@@ -32,8 +35,20 @@ Key grave A C  Exec exec $[TERMINAL]
 Key grave A CM Exec exec $[TERMINAL] -e zsh -f
 Key F3 A M  Module FvwmConsole -terminal urxvt
 
-# Screen locking
-Key XF86Standby A A Exec exec xscreensaver-command -lock
+# Screen locking.  Since a double scroll lock is used to communicate with the
+# KVM, take some care to only lock the screen if the scroll lock key is pressed
+# once.
+DestroyFunc FinishLock
+AddToFunc   FinishLock
+ + I Key Scroll_Lock A A LockScreen
+ + I $*
+
+DestroyFunc LockScreen
+AddToFunc   LockScreen
+ + I Schedule 750 FinishLock Exec exec xscreensaver-command -lock
+ + I Key Scroll_Lock A A FinishLock Deschedule $[schedule.last]
+
+Key Scroll_Lock A A LockScreen
 
 DestroyFunc DoPageMove
 AddToFunc   DoPageMove