1.12 to 1.13
	1. Added button specific menu colors. Now the root menus have the 
	   defined color, and the button menus have the button colors.
	   <devmorfo@cs.mtu.edu>

1.11 to 1.12
	1. Added ButtonForeColor, ButtonBackColor, MenuForeColor, MenuBackColor,
	   MenuArrowColor, BorderColor, HiBorderColor, if compiled with the 
	   -DMORE_COLORS option. <devmorfo@cs.mtu.edu>

1.10 to 1.11
	1. Fixed the stupid 1 pixel offset that I always have for shaped
	   no title windows.

1.09 to 1.10
	1. Fixed up some focus handling a bit. Probably, some clients shifted
	   the input focus to their children, confusing fvwm.
	2. If MWMButtons is enabled, fvwm omits the right side buttons
	   for transient windows, like mwm.
	3. Updated the system.fvwmrc and mwm_like.fvwmrc files.
	4. Added an Immediate option to complex functions.
	5. Added function Warp, like Circulate, but de-iconifies as
	   it goes.
	6. Improved focus handling for iconification and de-iconification.
        7. Added StickyForeColor and StickyBackColor for sticky windows,
	   if compiled with -DMORE_COLORS
	8. Added IconPath and PixmapPath to make config files simpler

1.07 to 1.09
	1. Changed Scr.Focus to Scr.Hilite
	   ungrabbed to Scr.Focus
	   previous_focus to Scr.Previous focus.
	   All fallout from the Lucid emacs focusing nonsense.
	2. Added prototypes to allow compilation on SunOS using
	   -Wall -Wstrict-prototypes with GCC. For Linux,
	   -Wall -Wstrict-prototypes has never been a problem.
	3. Fixed it so that icons could get the focus once again
	   (broke during the Lucid emacs work).
	4. Fixed circulateup/down again. (Still more fall out
	   from lucid emacs).
	5. Fiddled with focus and colormap control when paging,
	   esp for keyboard-induced paging. Removed all use
	   of colormapNotify, since it seemed to be unneeded.
	6. Incorporated assorted motif-like patches
	7. Added visual button press info for all windows,
	   unless -DMOTIF is used, in which case, only title-bar
	   windows are done.
	8. Implemented somewhat more conventional sub-menus,
	   left justified all menus, except for titles. Added 
	   NoBoundaryWidth for decoration width on undecorated
           windows.
	9. Changed all #ifdef MOTIF's to if(Scr.flags & MWM....)
	   There are 3 options for the .fvwmrc:
	        MWMborders
		MWMbuttons
		MWMMenus.
       10. Fixed error in handling of RaiseLower when window is 
	   partially obscured by a StaysOnTop Window.
1.06 to 1.07
	1. Changed several instances of strncasecmp to strcasecmp to
	   improve handling of menu binding for people who like
 	   to have several menus with similar names.
	2. Fixed (?) problems with windows moving during re-starts.
	   (caused by mods to restorewidthdrawnlocation which were
	   supposed to help with disappearing dialog boxes)
	3. did a few mods regarding placement of windows on de-iconification
	   (try to de-iconify onto the current screen).
	4. Fixed ComplexFunctions so that they work correctly when
	   called from a root window menu.
	5. Added a patch from mark@ofps.ucar.edu (Mark Bradford)
	   to correctly handle bindings to keysyms that have multiple
	   physical keys.
	6. Fixed CenterOnCirculate. This ought to cause serious
	   grief for the unsupported_patches, since it changes the
	   definitions for Scr.flags.
	7. Fixed up operation for actively following the real input
	   focus (Lucid Emacs). Now, the highlighted window should be
	   the one that really has the input focus, not the 
	   window that fvwm thinks should have the focus. This is achieved by
	   having EnterNotify and LeaveNotify (or ButtonPress for click to
	   focus) call setFocus only. When a FocusIn or FocusOut is received,
	   fvwm updates the border color. The variable ungrabbed tells which
	   window fvwm last sent the input focus to. The variable
	   Scr.Focus tells which window is currently high-lighted.

From 1.05 to 1.06
	1. Fixed up detection of iconified windows on re-starts. Should
	   lead to ability to re-start without loosing iconic state. Allows
	   re-starts from mwm without loosing iconified windows.
	2. Fixed up so fvwm respects iconic state accross re-starts. 
           Restarts to and from mwm and olwm respect this too. Twm fails to
	   respect the new stuff, but windows don't get lost, so it should be
	   OK.
	   (All this because I kept loosing my clock when re-starting into
	   fvwm from mwm).
	3. Fixed a minor error in button3 handling around the pager 
	   decorations.
	4. In click to focus mode, corrected window-focus stack on window 
  	   iconfication.
	5. Added correction for unmapping dialog boxes. May help with
	   problems of disappearing dialog boxes.
	6. Corrected flaw in Sticking and Unsticking windows failing
	   to make the window show up/disappear in the pager.
	7. Corrected a problem where deleting (not destroying) a
	   window caused the next key-binding action to be executed twice
	   IF the pointer wound up in the root window after the
	   destroy. (Wow, weird).
	8. Made Icon placement respect application supplied icon placement
	   hints
	9. Once the icon is moved, fvwm will no longer auto-place it.

From 1.04 to 1.05
	1. Fixed a minor flag in SetMapStateProp
From 1.03 to 1.04
	1. Eliminated the appearance of a (NL) character preceding
	   the 2nd column menu entries.
	2. Made title-bar and title-bar-button popups line up neatly under 
	   their buttons. A nice little touch.
	3. Whacked up the mwm-like.fvwmrc to use the new -DHOT_KEYS
	4. Fixed problem with de-iconifying pager causing warping.
	5. Added code to raise all of a windows transients with
	   the window itself.
	6. Fixed (?) a problem with border color errors on windows
	   that unmap themselves and re-map quickly
	7. Made default for menu popups to request save_unders.
	   Quicker re-draws after a popup. Added a compile
	   time option to get rid of it.
	8. Compiled with -Wall and -Wstrict-prototypes again, and fixed a
	   few minor errors. Removed all references to Xos.h, since it
	   seems to be unneeded.
From 1.02 to 1.03
	1. #ifdef'd out this:
           If a window is moved using pager and meets opaque
           move criteria, move the window itself in real-time too.
	   since it caused problems for some people.
	2. Fixed the move-window indicator to display 12 characters, which
	   was needed to indicate +1024 +1024.
	3. Integrated patches for menu hotkeys and motif-like appearance
	   right into the main source, since these are neatly #ifdef'd
	   Left the default configuration as it was. Flags can be set
	   in the makefile
From 1.01 to 1.02
	1. Fixed up pager code a bit.
	   Leave grid lines on during a button3 drag in pager.
	   If a window is moved using pager and meets opaque
	   move criteria, move the window itself in real-time too.

From 1.0 to 1.01
	1. Fixed some border-drawingf details for tiny windows.
	2. Fixed a possible crash condition during startup in
	   MoveResizeViewportIndicator
	3. Fixed a minor boo-boo in click to focus handling
	   when mouse activities are bound to window events.

To Do List (Sorted by # of requests):
	Nothing


From 0.99 to 1.0
	1. Fixed the problem with grid lines not showing unless
	   a pager font was used.
	2. Removed flags |= VISIBLE from RaiseWindow in pager.c
	   It prevented correct auto-raise operation.
	3. Fixed the pager window title color problems.
	4. Added a move-window location indicator similar
	   to the one for resizing from Henrique Martins 
	   <martins@hplhasm.hpl.hp.com>
	5. fixed the window-resize wrap around problem.
	6. Added code to move pager representation of windows as 
           the real window moves/resizes.
	7. Changed XCopyPlane for drawing icon pixmaps
           to xcopy area, so that apps can pass color pixmaps
	   to fvwm. Beat up on icon pixmap drawing to let it
	   handle application supplied color icon pixmaps
           and shaped icon pixmaps.
	8. For cases when NumberOfScreens > 1, added a query
	   to check for current screen prior to setting keyboard
	   focus. Should fix problems of mysteriously loosing
	   focus. Problems of not re-drawing decorations on expose
	   events for screens other than 0 remain.
	9. In order to get both matlab and xv to stop walking their
	   windows around when the re-configure themselves, I had
	   to re-parent application windows inside a parent that
	   is exactly the same size as the app window. While I was in
	   there, made fvwm re-parent undecorated windows, since this
	   simplifies some things. Also, can now have seperate cursors
	   for the four corners, which is ofter requested. (Why do
	   matlab and xv have to be too smart for their own good?)
	10.Tidied up above code, now let AddWindow() drop the decorations
	   any old place, then let SetupFrame clean up the mess.
	11.Middle-clicking on a window in the pager no longer moves
	   the pager image of the window.
	12.Changed to DrawImageString for pager labels, so that they are
	   readable in monochrome.
	13.Tried to improve icon autoplacement for icons that
	   are too wide or tall for the icon box.

From 0.985 to 0.99

	1. Took a whack at multi-screen support.
           Had to explicitly draw menus when they pop-up. They
           didn't seem to get expose events properly.
	2. Repaired the default-icon support.
	3. Got xpaint dialog boxes to work. I was doing an
	   XMapSubWindows() which caused xpaint's watch-
           window bizareness to break if the window was
	   not re-parented! (All subwindows of the
           main application window got mapped).
	4. Re-worked the pager for efficiency & improved
	   appearance. Added PagerForeColor
	5. Made LookInList case sensitive again.
	6. Incorporated OpaqueMove and EdgeScroll Improvements 
	   from Henrique Martins <martins@hplhasm.hpl.hp.com>
	7. Added OpaqueMove to the default setup, with a 
           percentage above which rubber-bands are used again.

To Do List (Sorted by # of requests):

(Don't construe this as an indication that these will eventually
 be done. This is just a list to help me remember what requests have 
 been made)

	Done		Job

			optional no icon labels
	unlikely	Seperate Icon & Menu Colors
	impossible?     Be able to fake mouse button presses for applications
	partly  	Function correctly on multi-screen displays
             x		Improve Icon Auto-placement
	     x		Impove pager drawing speed


From 0.98 to 0.985
	1. Fixed some typos in fvwm.1
        2. Fixed a clicktofocus test (typo) in
           functions.c, FocusOn();
        3. Fixed Foreground color usage in decorations.
        4. Fixed placement of application supplied windows.
        5. Patched up mwm_like.fvwmrc, so that it would delete
           windows if you double click on button 1.
	6. Added code to grab buttons and keys in icon windows,
	   just in case.
	7. Removed some WM_STATE setting for parent and icon windows.
           caused editres to break.
        8. changed 
		struct _gravity_offset 
		{
		  int x, y;	
		};
	  in  add_window.c back to an int structure for RS/6000 users
	  who had problems when it was char x,y;
	9. Added a little functionality to CirculateUp/Down
	10.Added user-selectable config file.
	11.In GrabEm, Changed PointerGrab mode from false to true.
	12.Fiddled AutoPlace so that if an Icon is going to wind up
	   partly off the screen, it moves it back on. Now, if you
	   specify an iconbox thats ot tall enough, along the bottom
	   of the screen, Icons end up lined up neatly.
        13.Fixed an unsigned/regular int problem in pager code which
	   caused windows to "wrap around" if you moved them partly
	   of the pager window.
	14.Improved EdgeResistance scrolling code so that it
           makes sure that the mouse stayed in the scroll region of
	   the screen for the entire delay period. (It used to just
 	   check the start and stop points.
        15.Removed lots of XGetGeometry and XSync calls to try
           to speed things up. Suppressed error messages relating to
           input focus and Colormap installation along the way.
        16.Merged all name_lists into a single list with a flag
           to tell what attributes are set. Saves memory in the list
           and allows for expansion.
        17.Fixed a few missing pixels in mono mode for menus and title-bar.
	18.Major overhaul of borders.c, add_window.c, including touches to
           other modules, under the guise of speed enhancement.
	19.Added option for WindowListSkip.
	20.Added compile time option to skip iconified windows when
           circulating.

To Do List (Sorted by # of requests):

(Don't construe this as an indication that these will eventually
 be done. This is just a list to help me remember what requests have 
 been made)

	Done		Job

	x	        opaque move (compile time)

			optional no icon labels

	unlikely	Seperate Icon & Menu Colors

	impossible?     Be able to fake mouse button presses for applications

        mostly		Clean up border drawing code to  improve speed

	x               editres is broken now.

	x		if you move a window over the top of the
			pager, it jumps to the bottom of the desktop.

	x		No good way of lining up icons (neatly along the
			bottom of the screen.

	x               User selectable startup file
			Add Weird and obscure options

	x		Add option to leave entries out of the window list

        x		Option to circulate skip over icons (compile time)

From 0.975 to 0.98
	1. Improved handling of Icons that change their
           pixmaps. They no longer switch positions, and if
	   they go from no pixmap to having a pixmap, that
           is detected and handled.
        2. Fixed Circulate Up/Down to handle SuppressIcons
           and shaped windows.
	3. Improved AutoRaise handling when used in conjunction
           with application pop-up windows.
	4. Fixed bug where all 10 title-bar buttons show up if you bind
           something to "A" (all contexts)
	5. Fixed problem of clicking button 2 in the pager causing windows to
           shuffle around a bit.
	6. Fixed problem where moving an icon in the pager window caused only
           the label to move.
	7. Added code to unmap icons supplied by application windows during 
           re-starts.
        8. Added code to check for window existence prior to setting the
           input focus to that window. Eliminates some internal errors.
	9. When using application-supplied icon windows, added code to 
           reparent the icon window to the root window, because olwais
           (and maybe others) make the icon windows children of the application
           window.
	10.Stopped clearing the icon pixmap window since its not needed and
           causes flickering.
	11.Compiled with -Wall -Wstrict-prototypes and cleaned up a lot
           of the warnings. Suns don't seem to have prototypes for a lot
           of standard functions like fprintf, so I can't leave these in.
           Some items of siginificance were found and correct, must was of
           no real concern.
        12.Ran Purify on fvwm, found a few items of no real significance.
        13.Remove the check for pointer motion from HandleMotionNotify, 
           since that kept us from scrolling in deferExecution. Consolidate
           all EdgeScrolling by pointer motion code into one routine in
           the pager, HandlePaging
	14.Added StickyIcons.
	15.Changed all Bool type flags in the Scr structure to flags in an
	   unsigned int. Should allow easier expansion in the future.
	16.Added IconBoxes (up to 4). Removed keyword AutoPlaceIcons, since
	   an IconBox line implies this.
	17.Fixed up code for title-bar buttons, so that they never draw over
           the frame corners. Also fixed the way left side buttons are
 	   drawn for shaped windows, and the way the title-bar, top and
	   bottom side bars are drawn for really teeny windows.
	18.Added code to optionally label the windows in the pager
	   with a really teeny font.
        19.Added a call to WaitForButtonsUp() at the end of addWindow(), since
	   it seemed to be possible to loose the input focus by moving the
	   cursor really fast after adding a window.
	20.Added IconFont (optional) for icon labels. To do this,
	   changed the PagerGC to FontGC, whose sole purpose in life
	   is to host miscellaneous fonts. Defined a macro in misc.h
	   to switch the font for FontGC.
	21.Switch from using XShapeCombineShape to XShapeCombineRectangles
	   to make shaped window title-bars. Does it all in one call,
	   much faster. Also move Shape setting code to its own subroutine
	   for ShapeNotify events. Moved SetupFrame to borders.c
	22.Fixed problem where windows partly off the top or left of the 
	   desktop didn't show up in the pager.
	23.Made the window list use the middle of the window as a test
           of on/off screen/desktop, instead of all sorts of bizarre
	   quantities.
	24.Consolidated a few config.c subroutines while adding EdgeResistance.
	25.General clean up in events.c, borders.c, functions.c
To Do List (Sorted by # of requests:
	Done		Job
	 x		IconBoxes (for autoplacement)
	 x		PagerLabelFont
			Seperate Icon & Menu Colors
	 x		EdgeResistance
         x		IconFont
	 x		Sticky Icons
	 		Be able to fake mouse button presses for applications
	partial		Clean up border drawing code to  improve speed
         x		Clean up shaped window handling in SetupFrame, to
			  	improve speed.

From 0.97 to 0.975
	1. Changed getdtablesize() to sysconf() in events.c
           (getdtablesize doesn't exist in HP/UX.
        2. Added a ConstrainSize call to the Maximize routine
           in functions.c (thanks to Pete Bevin <pete@sst.icl.co.uk>).
	3. Fixed misc bugs in AutoRaise and WindowList
        4. Allowed ^N, ^P, ^f, ^b shortcuts in addition to arrow keys


From 0.96 to 0.97
	1. Fixed the problem of not being able to correctly bind
           a function key to a decoration point such as the title-bar.
	   This involved moving the XGrabKey() grabs from the
	   decorations/windows to the frame, and then fixing up
	   GetContext to recognize the subwindow field of the xkey
	   events.
	2. Fixed the Fvwm Internal Errors found when de-iconifying windows
	   These were caused by doing a deferExecution on an icon window
	   and trying to unset the keyboard focus before grabbing the
	   keyboard, andthen restoring it later. The error was in trying to
           restore the focus to the application window instead of the icon
	   Create functions GrabEm and UngrabEm to handle moving the
	   keyboard focus, grabbing the pointer and keyboard, and then 
           ungrabbing/re-focusing later.
	3. In HandleEnterNotify, decided to detect entering the root window,
	   because we sometimes can leave a window without it being 
           detected by HandleEnterNotify. This was related to pop-up
	   menus in window title-bars.
	4. Fixed a small error in add_window() which caused completely
           undecorated windows to be made one pixel taller than they should be.
	5. Moved click to focus code in HandleButtonPress() to
	   the very start of the routine, since it would lock up
           the WM when pressing button 2 in a window otherwise.
	6. Swapped order of UngrabEm and XUnmapWIndow in PopDownMenu()
	   so that focus is not lost when using keyboard shortcut menus
	   <alt-F2>, for example, in a window.
	7. Added a DefaultIcon enable by adding a line
	   Icon "" my-favorite-bitmap-or-pixmap.
	8. Bottom and Right sides of shaped titled windows were
           colored with the border shadow color. Fixed it.
	9. Added user selectable title bar button decoration shapes.
       10. Added an AnyModifier modifier type, and an AnyButton button type.
       11. With RandomPlacement, we didn't GrabServer before adding a new
	   window so it was possible to get an decoration with no
           window. Fixed this. Also made GrabEm() fail after 1 second,
	   and provided appropriate handling for all routines that
           call it. Thus if we need to grab the pointer, and fail after
           1 second, then we give up.
       12. Added a WaitForButtonsUp() routine which hangs around until all
           mouse buttons are up, then double checks on window focus
	   (for point-to-focus mode). This is called on termination of
           any menu for function execution.
       13. Added a WindowList function like TwmWindows. Required some
	   menu-drawing upgrades.
       14. Added a SuppressIcons to use in conjunction with the WindowList
           for people who like icon-managers.
       15. Gave Maximize some optional arguments to control which directions
           are maximized.
       16. Utilize the WindowList mods to menus to provide 2-column
           menu entries (For shortcut labelling). This also provides for
	   left adjusted menus.
       17. Made the restart do a conventional restart if the restart
           into another program failed.      
       18. Added a CursorMove function to aid in mouseless use.
       19. Changed icon windows to two part windows with the label window
           seperate from the bitmap window. This improves appearance of
           icons when the label size does not match the bitmap size. Also
           label window width is now equal to bitmap window width unless the 
	   icon has the input focus. This should improve auto-placement.
       20. Added some input focus queue code for click to focus mode.
       21. Move button grabs in click-to-focus mode to the frame because
	   otherwise frame-maker crashes sometimes.
       22. Fixed a problem of a failed attempt to bind Alt+button2
           to resize in a window.
       23. Modified use of tolower() in configure.c to be compatible
	   with some BSD versions.
       24. Cleaned up the shaped window handling a little, because
	   xlogo -shape came out wrong.
       25. Added the Function built-in.	Removed the raise-on-click
           behaviour for move and resize builtins too.
       26. Changed zombie handling code to a simple
	   signal(SIGCHLD,SIG_IGN). Seems to work. Old method
	   caused problems for HP-UX.
       27. Added AutoRaise with user selectable delay.

Bugs:
Should re-parent undecorated windows because of the button/key grabbing
problems

****************************************************************************

From 0.95 to 0.96
	1. Changed #ifdef SYSV to #ifdef POSIX for ReapChildren
	2. Divided the NoTitle option into separate 
	   NoTitle and NoBorder options. This eliminated
	   a lot of the #ifdef SHAPE sections and cleaned up
	   code a little.
	3. Took another whack at getting windows to stay put
	   through the re-start command. This time, I tried doing
           it by measuring window placement before re-parenting
	   and after, to get the delta	
	4. Took a patch from davem@extro.ucc.su.OZ.AU to
	   make color XPM icons into shaped icons if
	   both SHAPE and COLOR are specified in the makefile.
	   Diffs were pretty much limited to icons.c.
	5. Allowed icon windows to take input focus so that
           keyboard key binds would work in icon windows. Involved
	   minor changes in events.c and borders.c
	6. Attempted to switch from using if(tmp_win->title_w)
	   and if(tmp_win->title_height) to using just
           if(tmp_win->flags & TITLE). Required for splitting
	   the NoTitle option into NoTitle and NoBorder.
	7. Fixed a small bug with icon AutoPlacement, reported long
	   ago but just identified. AutoPlacement wanted five pixels
	   space on all sides of the icon EVEN IF IT WAS ON THE NEXT
	   PAGE. Oops. Should be fixed.
	8. Replaced usleep() call with a subroutine that should be
	   OK for more systems, using select(). Thanks to krumnow@sap-ag.de
	9. Fixed a problem with fvwm reporting stray mouse-button releases
	   to applications. This was caused by de-iconifying on a
           button press in the icon window. If the window appears under
           the icon, it receives the release event. Caused xmeter to croak.
       10. Fixed a problem where you could move a window over a page
	   boundary, release the mouse button, move the mouse really
	   fast, and the window would show up in the wrong place.
	   Change was limited to move.c. Added an extra XQueryPointer()
	   call.
       11. Move the ExececuteFunction() call from menus.c to functions.c
	   where it really belonged. Along the way, caused the pointer to
           warp back to its pre-menu popup location when a resize operation
           is invoker. The move operation has always worked this way.
       12. Fixed an error in parsing Key bindings for Restart and
	   Exec functions.
       13. Re-wrote the pager so that you could move windows using it,
	   and could select the focus in click-to-focus mode.
       14. Added a Maximize function.
       15. Added a user-selectable number of title-bar buttons.
       16. When trying to grab the pointer for whatever reason,
	   added a 1 msec delay between events, and give up after
           1 second. If some other window has a grab on the pointer,
	   we don't want to lock up the whole system just
	   because we want the pointer.

0.96 Known Unresolved bugs:
1. Keyboard keys can't be bound to actions in the window decorations.

2. Fvwm crashes occasionally? One report, involving Ftptool 4.5,
   could not be re-created by me.

