--- a/.fvwm/config Thu Sep 27 16:06:04 2012 +0300
+++ b/.fvwm/config Mon Oct 01 09:58:41 2012 +0300
@@ -43,6 +43,14 @@
ExecUseShell /bin/bash
################################################################
+# Debugging code.
+
+# KillModule FvwmDebug
+# Module FvwmDebug
+# BugOpts DisplayNewWindowNames on
+# BugOpts ExplainWindowPlacement on
+
+################################################################
# Set paths.
m4_define(`m4_IMGPATH', `$[FVWM_USERDIR]/images')m4_dnl
@@ -79,7 +87,7 @@
# StartsOnPage [desk [x y]]
Style "mc-main1" StartsOnPage 0 1 0, SkipMapping
Style "mc-main2" StartsOnPage 0 2 0, SkipMapping
-Style "goldendict" StartsOnPage 3 1 2, SkipMapping
+Style "goldendict" StartsOnPage 3 1 2, SkipMapping
Style "XClock" !Title, Sticky, StaysOnTop, !Iconifiable, FixedPosition, FixedSize, WindowListSkip, CirculateSkip
# Run only om sturtup.
@@ -123,10 +131,33 @@
# Available: Fvwm, Mwm, Win.
MenuStyle "*" Mwm
+################################################################
+# Windows moving and resizing behaviour.
+
+# If during an interactive move the window or icon comes within proximity pixels of
+# another the window or icon, it is moved to make the borders adjoin.
+Style * SnapAttraction 10
+
Style "*" !Iconifiable
# This disable ResizeOpaque, which cause frequent redrawing of applications.
Style "*" ResizeOutline
+# Default is TileCascadePlacement.
+Style * MinOverlapPlacement
+
+# Percentage of a page to scroll when the cursor hits the edge of a page.
+# With 0 0 I can't scroll to other page by hitting edge, but can move app to another page!
+# With 100 100 by hitting edge I move to next page.
+EdgeScroll 0 0
+# Tells how hard it should be to change the desktop viewport by moving the mouse over the
+# edge of the screen and how hard it should be to move a window over the edge of the screen.
+EdgeResistance 150
+Style * EdgeMoveDelay 150
+Style * EdgeMoveResistance 150
+# Width or height of the invisible window that fvwm creates on the edges of the screen that
+# are used for the edge scrolling feature.
+EdgeThickness 1
+
################################################################
# Program Styles.
@@ -165,26 +196,20 @@
DesktopName 2 Work
DesktopName 3 Media
DesktopName 4 Games
-# Percentage of a page to scroll when the cursor hits the edge of a page.
-# With 0 0 I can't scroll to other page by hitting edge, but can move app to another page!
-# With 100 100 by hitting edge I move to next page.
-EdgeScroll 0 0
-# Tells how hard it should be to change the desktop viewport by moving the mouse over the
-# edge of the screen and how hard it should be to move a window over the edge of the screen.
-EdgeResistance 150
-Style * EdgeMoveDelay 150
-Style * EdgeMoveResistance 150
-# Width or height of the invisible window that fvwm creates on the edges of the screen that
-# are used for the edge scrolling feature.
-EdgeThickness 1
################################################################
-# Mouse and Focus Behavior.
+# Focus Behavior.
ClickTime 350
MoveThreshold 3
# GrabFocusTransient, ClickToFocusRaises
Style "*" SloppyFocus, MouseFocusClickRaises
+# Programs can focus themselves.
+Style * FPFocusByProgram
+
+# New windows/transients grab the focus when created closing a window/transient releases
+# focus to the previously focused window.
+Style * FPGrabFocus, FPGrabFocusTransient, FPReleaseFocus, FPReleaseFocusTransient
DestroyFunc MyFuncFocusWindow
AddToFunc MyFuncFocusWindow
@@ -204,9 +229,13 @@
*FvwmEvent-StartMaximised: add_window MyFuncStartMaximised
AddToFunc StartFunction I Module FvwmEvent
-AddToFunc StartFunction I FvwmEvent FvwmEvent-NewWindow
+# TODO: have problem with Emacs ediff frame.
+# AddToFunc StartFunction I FvwmEvent FvwmEvent-NewWindow
AddToFunc StartFunction I FvwmEvent FvwmEvent-StartMaximised
+# Start on screen with pointer.
+# Style * StartsOnScreen c
+
################################################################
# Screenshot Functions (uses ImageMagick).