1999-08-05  Dominik Vogt  <domivogt@bvstp038.bbn.hp.com>

	* libs/Makefile.am: ColorSets.h -> Colorset.h

	* fvwm/events.c (HandleButtonRelease): 
	* fvwm/session.c (getUniqueStateFilename):
	(LoadGlobalState):
	removed unused variables

1999-08-01  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/borders.c (RedrawBorder): fixed window title drawing

	* fvwm/move_resize.c (moveLoop): fixed a bug that cause windows to jump
	around when moved against a page boundary

	* fvwm/add_window.c (AddWindow):
	* fvwm/move_resize.c (resize_window):
	(DoResize):
	(Maximize):
	* fvwm/events.c (HandlePropertyNotify):
	(HandleConfigureRequest): use new signature of ConstrainSize

	* fvwm/move_resize.c (resize_window): fixed resizing from title
	buttons
	(ConstrainSize): removed roundUp parameter. Windows can no longer be
	resized off the screen

	* fvwm/builtins.c (move_sticky_window_to_same_page):
	(MaximizeHeight):
	(MaximizeWidth):
	(Maximize): moved functions to move_resize.c

	* fvwm/fvwm2.1 (DeiconifyAndRearrange): Corrected hint to work on
	current page

	* fvwm/fvwm.h (rectangle): width and height are signed integers again.
	unsigned caused too many bugs. Fixes 'CurrentPage' condition

	* fvwm/module_interface.c (HandleModuleInput): Fixed menus from TaskBar
	buttons

	* fvwm/bindings.c (activate_binding):
	* fvwm/icons.c (CreateIconWindow):
	* fvwm/add_window.c (AddWindow):
	* fvwm/events.c (HandleKeyPress):
	A hack to make root key bindings work with SloppyFocus

	* fvwm/ConfigFvwmDefaults: changed 'iconify -1' to 'iconify off'

	* fvwm/focus.c (WarpOn): fixed several bugs in this function

	* fvwm/move_resize.c (DoSnapAttract):
	fixed SnapAttraction bug (not snapping when x/y position < 0)
	reindented code
	some speedup, removed redundant code

1999-07-28  Hippo

	* libs/Colorset.{c,h}: New function CreateBackgroundPixmap() creates a
	pixmap from a colrset suitable for using in XSetTile() XSetFillStyle().

1999-07-23  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/functions.c (expand):
	* fvwm/fvwm2.1:
	* NEWS:
	Applied patch by Neil Bird - new function variables $c, $r, $n.

1999-07-23  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/builtins.c:
	* fvwm/functions.c:
	* fvwm/functions.h:
	* fvwm/misc.h:
	* fvwm/session.c:
	* fvwm/session.h:
	* fvwm/fvwm2.1:
	* NEWS:
	Initially implemented new commands QuitSession, SaveSession,
	SaveQuitSession. They work for gnome-session, but not for xsm.
	Another way to implement them (which works for xsm) is sending
	SIGTERM and SIGUSR1 to a SM pid specified in $SESSION_MANAGER.

	* fvwm/session.c (set_sm_properties):
	XSM_BUGGY_DISCARD_COMMAND now extended by run-time xsm detection
	(currently using $SESSION_MANAGER_NAME environment, set by user).
	Fixed bug - added discardCommand declaration and initialization.
	(LoadGlobalState, LoadWindowStates, saveStateFile):
	Renamed SESSION_STATE to REAL_STATE_FILENAME. There are still
	problems with it specific to gnome-session.
	Some rearranging in the functions.

1999-07-20  Hippo

	* fvwm/builtins.c: Fixed color leak with FvwmTheme.
	* fvwm/fvwm.c: ignore errors with XFreeColors.
	* fvwm/modconf.c: Colorsets sent out with module config.
	* libs/Colorset.c: Fixed color leaks.
	* modules/FvwmIdent/*: New config option *FvwmIdentColorset

1999-07-16  Hippo

	* configure.in: New module FvwmTheme.
	* libs/Colorset.{h,c}: New lib functions for Colorset handling.
	* fvwm/add_window.c: added backing_store = NotUseful hint to the
	  client parent (not the border though that may be worth doing).
	* fvwm/builtins.c: removed DefaultBackground command.
	* fvwm/colors.c: moved AllocGradient and CreateGradientPixmap to libs/
	* fvwm/functions.{c,h}: removed DefaultBackground command.
	* fvwm/{fvwm.c, screen.h}: removed DefaultBackground structure.
	* fvwm/fvwm2.1: removed DefaultBackground command.
	* libs/Graphics.c: moved SetWindowBackground to libs/Colorset.c,
	  Added AllocGradient() & CreateGradientPixmap().
	* modules/*/Makefile.am added -lm to LADADD to satisfy linker.
	* modules/FvwmTheme: new module
	* fvwm/builtins.c: DefaultColors affects Colorset[0]
	* fvwm/functions.c: New command Colorset
	* fvwm/module_interface.c: new function BroadcastColorset

1999-07-11  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/borders.c (RedrawBorder): Prevent NeverFocus windows from being
	hilighted

1999-07-09  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/borders.c (RedrawBorder): fixed bug: title bar inherited tiled
	background pixmap from borderstyle

	* fvwm/move_resize.c (moveLoop): removed debug fprintf

1999-07-13  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/session.c (LoadWindowStates): Replaced all sscanf "%4000s"
	with "[^\n]". This caused all windows with spaces in names not match.

Sun Jul 11 11:16:15 1999  DanEspen  <dje@blue>

	* NEWS: Describe the default iconbox.

	* fvwm/fvwm2.1 (iconbox): Describe the default iconbox.

	* fvwm/icons.c: Create a global icon box that covers the screen.
	This is used whenever the "style xxx" iconboxes run out of room
	or if you never defined an iconbox at all.
	This should fix the icons piling up at 0,0 problem.

1999-07-10  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c:
	* fvwm/session.c:
	Temporary fvwm state files now have .fs- prefix (hence .fs-restart),
	since .fvwm is already a common prefix for persistent fvwm configs.
	Added a header to the fs file saying that the file must not be deleted.
	* fvwm/fvwm.c (StartupStuff): remove a state file only on Restaring

	* fvwm/session.c (saveStateFile, setRealStateFilename): new functions
	* fvwm/session.c: Some code rearrangement using new functions.
	The purpose is localization (reducing passing FILE * between functions;
	free() in the same function as malloc() etc.).

	* fvwm/fvwm2.1:
	* fvwm/fvwm.c (Done):
	* session.c (RestartInSession, saveStateFile):
	Fixed --dont-preserve-state. Creates an empty state file, hence can
	be used under SM too (got X hang); and can now be mixed with other
	Restart parameters, but must be first.

1999-07-09  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Module.c (positive_read):
	(ReadFvwmPacket):
	* fvwm/bindings.c:
	* fvwm/stack.c (RaiseOrLowerWindow):
	* fvwm/module_interface.c:
	(make_new_vpacket):
	(BroadcastNewPacket):
	(SendNewPacket):
	* fvwm/session.c (MatchWinToSM):
	* fvwm/add_window.c (AddWindow):
	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/builtins.c (Maximize):
	(MaximizeHeight):
	(MaximizeWidth):
	* fvwm/move_resize.c (ConstrainSize):
	(moveLoop):
	* fvwm/style.c (ProcessNewStyle):
	* fvwm/fvwm.h (struct):
	* fvwm/fvwm.c (InstallSignals):
	(Done):
	* fvwm/menus.c (menuShortcuts): --pedantic fixes

	* fvwm/move_resize.c (InteractiveMove): Tried to make starting a move
	bullet proof; but you never know...

	* fvwm/functions.c (CheckActionType):
	* fvwm/functions.c (execute_complex_function): fixed some quirks with
	button bindings

	* sample.fvwmrc/Makefile.am: added a win95 like config file

	* fvwm/stack.c (RaiseOrLowerWindow):
	* fvwm/fvwm.c (Done): remove unused variables

	* fvwm/window_flags.h (DO_LOWER_TRANSIENT):
	* fvwm/style.h (SDO_LOWER_TRANSIENT):
	* fvwm/stack.c (RaiseOrLowerWindow):
	(LowerWindow):
	(RaiseWindow):
	(must_move_transients):
	* fvwm/fvwm.h (common_flags_type): Improved transient raising/lowering
	and introduced LowerTransient/DontLowerTransient styles

	* fvwm/style.c (ProcessNewStyle):
	(merge_styles):
	* fvwm/add_window.c (AddWindow):
	* fvwm/move_resize.c (ConstrainSize):
	* fvwm/fvwm.c (InitVariables):
	* fvwm/fvwm.h (window_style):
	* fvwm/style.h (SGET_MAX_WINDOW_WIDTH):
	* fvwm/screen.h (ScreenInfo):
	* fvwm/builtins.c (SetMaxWindowSize):
	* fvwm/functions.h:
	* fvwm/functions.c (func_config): removed MaxWindowSize command and
	introduced a style with the same syntax

1999-07-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/virtual.c (HandlePaging): fixed edge scrolling with the mouse

	* fvwm/fvwm.h:
	* fvwm/builtins.c (do_recapture):
	* fvwm/fvwm.c: removed the 'blackout' code completely

	* fvwm/move_resize.c (move_window_doit): send synthetic
	ConfigureNotify events to client while moving without resizing

	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/borders.c (SetupFrame): Cleaned up ConfigureRequest handling.
	Fixed bug causing some ddd windows to not redraw properly. Send
	synthetic configure notify events for shaded windows too (required
	by ICCCM).

1999-07-08  Hippo

	* fvwm/stack.c: fixed RaiseLower of partially offscreen windows

1999-07-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/session.c (my_modulo): removed 'buggy' function
	(MatchWinToSM): fixed restart placement of sticky windows partially
	off screen

	* fvwm/builtins.c (MaximizeHeight):
	(MaximizeWidth): use fixed version of truncate_to_multiple

	* fvwm/misc.c (truncate_to_multiple): fixed off-by-one bug

	* fvwm/fvwm.c (Done): added '--dont-preserve-state' option to allow
	restarting a fresh fvwm2 without having to specify the call options

	* fvwm/events.c (HandleMapRequestKeepRaised): fixed another problem
	with recapture/iconidief emacs frames. Emacs sends two MapRequest
	events. The second iconifies the emacs frame again without removing
	the fvwm frame.

1999-07-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c: menu menu styles VerticalItemSpacing and
	VerticalTitleSpacing

	* fvwm/builtins.c (MaximizeWidth):
	(MaximizeHeight): maximize grow didn't work with sticky icons
	fixed maximize grow on other pages than the current one
	handle sticky windows properly

1999-07-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/functions.c:
	* fvwm/fvwm.c: include module_interface.h

	* fvwm/misc.h:
	* fvwm/module_interface.h: moved function declarations to
	module_interface.h

	* fvwm/module_interface.c (KillModuleByName): now static

	* fvwm/builtins.c (module_zapper): function moved to module_interface.c

	* fvwm/defaults.h:
	* fvwm/virtual.c (HandlePaging): Do not page while the mouse is moving
	along one of the sides.

1999-07-07  Hippo

	* fvwm/menus.c: paint_menu(): fixed an expose bug

1999-07-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (DEFAULT_ITEM_FORMAT): fixed side picture

1999-07-04  Dominik Vogt  <dominik_vogt@gmx.de>

	* configure.in: changed version to 2.3.6

	* fvwm/functions.c (execute_complex_function): -Wall fix

	* fvwm/misc.c (Destroy):
	(StashEventTime): Removed FocusOnNextTimeStamp (no longer used)

	* fvwm/misc.c (Destroy):
	* fvwm/events.c (HandleUnmapNotify): fixed focus setting

	* fvwm/gnome.c (GNOME_GetStyle): Fixed desk handling in GNOME apps.

1999-07-03  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.h:
	* fvwm/events.c (HandleUnmapNotify):
	* fvwm/misc.c (Destroy):
	(HandleHardFocus): removed HandleHardFocus function; calls replaced by
	SetFocus. Fixes hang with Gnome menu bars.

1999-07-03  Mikhael Goikhman  <migo@homemail.com>

	* libs/Strings.h:
	* libs/Strings.c (CatString3):
	* fvwm/functions.h:
	* fvwm/functions.c (FindFunction, NewFvwmFunction):
	Fixed char * to be const char *, there are more places to do the same.

	* fvwm/fvwm.h:
	* fvwm/fvwm.c ({get|set}InitFunctionName): new functions
	* fvwm/fvwm/session.c (SessionInit): use setInitFunctionName
	* fvwm/fvwm.c (StartupStuff, Done): use getInitFunctionName
	* sample.fvwmrc/system.fvwm2rc:
	* fvwm/ConfigFvwmSetup:
	* fvwm/fvwm2.1:
	* NEWS:
	New special functions Session{Init|Restart|Exit}Function are executed
	instead of {Init|Restart|Exit}Function when running under a SM.
	Also mentioned FormFvwmRootCursor. in NEWS and fvwm/ConfigFvwmSetup.

1999-07-02  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Don't look for a C++ compiler; we don't	need one
	anymore and it causes lots of configure problems.

1997-07-01  Hippo

	* {fvwm,libs}/Makefile.am: Reordered .c file for faster parallel makes.
	* libs/ModGraph.c: merged with Picture.c.
	* libs/Picture.c: Rewrote InitPictureCmap(), removed SavePictureCMap
	  Added GetColor().
	* {fvwm/modules}/* Fixes due to the above, removed lots of GetColor()s.

1999-07-01  Paul D. Smith  <psmith@gnu.org>

	* libs/fvwmlib.h (Background):  Change Bool type to unsigned for
	bitfields.

	* fvwm/screen.h (ScreenInfo): Change Bool type to unsigned for
	bitfields.

1999-07-01  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/module_interface.c:
	* fvwm/events.c (HandleVisibilityNotify):
	(HandleButtonPress):

	* fvwm/builtins.c (CreateConditionMask):
	* fvwm/fvwm.h:
	* fvwm/window_flags.h:
	rewrote VISIBLE flag and added RAISED flag again. Now they do what they
	sound like (close enhancement request #21)

	* fvwm/stack.c (CanBeRaised):
	(raiselower_func):
	* fvwm/events.c (HandleButtonPress): removed function CanBeRaised to
	improve raising of windows with transients.

	* fvwm/stack.c (RaiseWindow): improved raising of windows with
	transients
	(CanBeRaised): always raise windows with transients and the
	RaiseTransient style

1999-06-30  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (SetRCDefaults):
	* fvwm/ConfigFvwmDefaults: moved style default to ConfigFvwmDefaults

	* fvwm/stack.c (new_layer):
	(RaiseWindow):
	* fvwm/fvwm.h (style_flags):
	* fvwm/style.c (ProcessNewStyle): new styles RaiseTransient (default)
	and DontRaiseTransient, avoids problem described in bug #290

	* fvwm/move_resize.c (resize_window): use RESIZE cursor, implemented
	'c' size unit (client defined steps)

	* fvwm/functions.c (execute_complex_function):
	* fvwm/functions.h (cfunc_action_type): implemented 'H'old trigger for
	complex functions

	* fvwm/move_resize.c (ConstrainSize):
	* fvwm/add_window.c (GetWindowSizeHints): handle MaxWindowSize in
	ConstrainSize. Use the border width to calculate the actual size.

1999-06-29  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Module.c (InitGetConfigLine): use alloca instead of safemalloc

	* fvwm/misc.c (HandleHardFocus): disabled HandleHardFocus to see if
	this causes any problems.

1999-06-28  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleUnmapNotify): removed some copy-and-past code
	trash

1999-06-27  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (WindowShade): update the border when shading a
	window

	* fvwm/move_resize.c (resize_window): fixed resizing of shaded windows
	(shade didn't move).

1999-06-28  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (ApplyDefaultFontAndColors): fixed font size

1999-06-28  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/session.c (my_module): fixed
	(MatchWinToSM): When evaluating x and y coordinates for sticky windows
	add old_bw before evaluating my_module and then substract it.

1999-06-27 Olivier Chapuis <olivier.chapuis@free.fr>

	* fvwm/fvwm2.1: Corrected misprints

1999-06-27  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Parse.c: some clean up, added comments
	(GetFileName): convenience function to simplify module code.

	* fvwm/fvwm2.1 (ButtonState): new command

	* fvwm/borders.c (cmd_button_state): new command to control former
	configure options 'activedown-button' and 'inactive-button'

	* libs/Parse.c (GetNextTokenIndex):
	(GetModuleResource):
	(GetSuffixedIntegerArguments):
	(GetOnePercentArgument):
	(GetRectangleArguments):
	use PeekToken instead of GetNextToken
	(ParseToggleArgument): a litte performance enhancement
	(NukeToken): removed function

	* fvwm/functions.c (func_config):
	* fvwm/functions.h:
	new function ButtonState

	* fvwm/cursor.c (CursorStyle):
	(SafeDefineCursor): moved from builtins.c to cursor.c

	* fvwm/virtual.c:
	* fvwm/placement.c:
	* fvwm/move_resize.c:
	* fvwm/icons.c:
	* fvwm/focus.c:
	* fvwm/events.c:
	* fvwm/builtins.c:
	* fvwm/borders.c:
	* fvwm/add_window.c:
	include borders.h

	* fvwm/borders.h: new file

	* libs/Module.c: include safemalloc.h

	* fvwm/windowlist.c:
	* fvwm/virtual.c:
	* fvwm/style.c:
	* fvwm/stack.c:
	* fvwm/repeat.c:
	* fvwm/read.c:
	* fvwm/placement.c:
	* fvwm/move_resize.c:
	* fvwm/module_interface.c:
	* fvwm/misc.c:
	* fvwm/modconf.c:
	* fvwm/menus.c:
	* fvwm/icons.c:
	* fvwm/icccm2.c:
	* fvwm/fvwm.c:
	* fvwm/functions.c:
	* fvwm/events.c:
	* fvwm/decorations.c:
	* fvwm/colormaps.c:
	* fvwm/colors.c:
	* fvwm/builtins.c:
	* fvwm/borders.c:
	removed inclusion of parse.h

	* fvwm/parse.h:
	* fvwm/functions.h: moved all code from parse.h to functions.h,
	removed file parse.h

1999-06-26  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/*.h: include stack.h and gnome.h

	* fvwm/builtins.c (SetSnapAttraction):
	(SetSnapGrid): Snap... called without arguments returns to default
	behaviour.

	* fvwm/defaults.h:
	* fvwm/fvwm.c (InitVariables): more definitions taken from defaults.h

	* acconfig.h:
	* configure.in (FVWM_CONFIGDIR): removed the following configure
	options (i.e. they are always on):
	borderstyle, extended-titlestyle, gradient-buttons, mini-icons,
	multistyle, pixmap-buttons, usedecor, vector-buttons, inactive-button,
	activedown-button

	* fvwm/Makefile.am (fvwm2_SOURCES): added gnome.h

	* fvwm/stack.c (SetDefaultLayers): Don't malloc, PeekToken is enough

	* fvwm/windowlist.c:
	* fvwm/placement.c:
	* fvwm/gnome.c:
	* fvwm/gnome.h:
	* fvwm/defaults.h:
	* fvwm/fvwm.c (InitVariables):
	* fvwm/builtins.c (SetDefaultLayers):
	(change_layer):
	* fvwm/add_window.c (AddWindow):
	* fvwm/events.c (HandleConfigureRequest):
	Moved all layer code to stack.c. Always use this module to manipulate
 	window layers.
	Moved gnome prototypes to gnome.h (new file).
	Moved default layer definitions to defaults.h

	* fvwm/gnome.c (GNOME_SetDeskCount):
	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/misc.h:
	* fvwm/builtins.c (raise_function):
	(lower_function):
	(raiselower_func):
	* fvwm/add_window.c (AddWindow):
	* fvwm/stack.c (remove_window_from_stack_ring):
	(add_window_to_stack_ring_after):
	(RaiseWindow):
	(LowerWindow):
	(ResyncFvwmStackRing):
	Moved all stacking order related code to stack.[ch]. The stacking ring
	shouldn't be modified outside this module.

	* fvwm/fvwm2.1: documented new cursors

	* fvwm/functions.c (DeferExecution): Don't use the select cursor when
	only waiting for a button release
	(execute_complex_function): improved double click handling (my X server
	seems to swallow some rapid button presses, so trigger the double
	click when releasing a button after the first click too).

	* fvwm/cursor.c (default_cursors): use crosshair instead of queastion
	arrow (looks rather ugly). Crosshair is used by xwininfo and xwd for
	the same purpose.

	* fvwm/functions.c (execute_complex_function): Don't change the cursor
	during function execution.

	* fvwm/misc.c (GrabEm): Enhanded GrabEm so you can grab without
	changing the cursor.

	* fvwm/misc.c:
	* fvwm/menus.c:
	* fvwm/icons.c:
	* fvwm/add_window.c:
	* fvwm/virtual.c:
	* fvwm/placement.c:
	* fvwm/focus.c:
	* fvwm/builtins.c:
	* fvwm/screen.h:
	* fvwm/functions.c:
	* fvwm/fvwm.c:
	* fvwm/cursor.h: created new files cursor.[ch] for cursor definitions.
	Changed select cursor to XC_question_arrow, introduced RESIZE cursor
	set to XC_sizing, moved cursor initialisation to cursor.c, made code a
	bit smaller.

1999-06-26  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c (parseCommandArgs): use isspace()
	* fvwm/placement.c (PlaceWindow): minor spacing

	* fvwm/session.h:
	* fvwm/session.c (RestartInSession): added flag, which enables
	to call this function unconditionally (needed for saving .fvwm_restart
	in all Restart cases).
	* fvwm/fvwm.c (Done): fixed Restart command with only spaces

1999-06-25  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (GetWindowSizeHints): print the
	cause of brokenness and the broken size hints.

1999-06-25  Chris Rankin  <rankinc@zipworld.com.au>

    * modules/FvwmTaskBar.c: New signal handling (fvwmsignal.o)
                             ShutMeDown() is now an exit-procedure
    * modules/ButtonArray.c: Fixed linked-list problem in RemoveButton()
    * modules/Mallocs.c:     Fixed implementation of saferealloc()
    * modules/Mallocs.h:     Removed duplicate declaration of safemalloc()
                             (Added "libs/safemalloc.h" to affected .c files)

1999-06-25  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Module.c (InitGetConfigLine): allocate buffer instead of using
	a fixed size.

	* fvwm/misc.c (Destroy): don't try to free a NULL icon pixmap mask

	* fvwm/stack.c:
	* fvwm/session.c:
	* fvwm/placement.c:
	* fvwm/move_resize.c:
	* fvwm/icons.c:
	* fvwm/gnome.c:
	* fvwm/fvwm.c:
	* fvwm/focus.c:
	* fvwm/events.c:
	* fvwm/builtins.c: include virtual.h

1999-06-24  Hippo

	* fvwm/modconf.c, libs/ModGraph.c: removed Gcontext sharing stuff

1999-06-24  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1 (IconBox): added a hint how to get auto arranging icons

	* fvwm/events.c (HandleMapRequestKeepRaised): fixed bug causing windows
	to always start iconic in conjunction with RecaptureWindow

	* fvwm/move_resize.c (move_window):
	* fvwm/module_interface.c (HandleModuleInput): removed stray fprintfs

	* configure.in: changed version to 2.3.5

	* fvwm/fvwm2.1 (Stroke): corrected instructions on unbinding default
	menus

1999-06-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.c:
	* fvwm/builtins.c (truncate_to_multiple): moved to misc.c

	* fvwm/icons.c (DeIconify): de-iconify on the current page if icon is
	visible

	* fvwm/module_interface.c (HandleModuleInput): Set position of faked
	button press to location of icon if window is iconified. Fixes bug
	when moving icons out of the pager.

	* fvwm/virtual.c:
	* fvwm/functions.c: include virtual.h

	* fvwm/Makefile.am:
	* fvwm/virtual.h:
	* fvwm/misc.h: moved declarations for virtual.c into new file

	* fvwm/virtual.c (HandlePaging):
	* fvwm/move_resize.c (resize_window):
	(moveLoop):
	* fvwm/events.c (HandleEnterNotify): fixed a bug in HandlePaging that
	caused pages to flip too fast

	* fvwm/move_resize.c (AnimatedMoveAnyWindow): added forgotten
	call to StashEventTime

	* fvwm/virtual.c (HandlePaging): fixed internal logic bug (paging done
	too fast).
	(HandlePaging): fixed bug when event time is zero

11999-06-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (Done): fixed -Wall warnings
	* libs/envvar.c (getFirstEnv): removed unused variables

1999-06-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/placement.c (PlaceWindow): added warning when SkipMapping,
	ActivePlacement and StartsOn... are used together

	* fvwm/virtual.c (MoveViewport):
	* fvwm/icons.c (AutoPlaceIcon):
	* fvwm/events.c (HandleConfigureRequest): same modification for more
	Broadcasts as in the previous patch by Matthias.

1999-06-22  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/move_resize.c (move_window_doit): broadcast the
	icon_p_width, not the icon_w_width to avoid growing icons in
	the pager.

1999-06-22  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/move_resize.c (moveLoop): fixed moving icons (didn't communicate
	to modules correctly).
	(moveLoop): fixed SnapGrid with FvwmPager
	(moveLoop): fixed bug that caused windows to jump around

	* fvwm/events.c (HandleConfigureRequest): fixed bug in ConfigureNotify
	handler: modules couldn't reconfigure maximized windows

	* fvwm/menus.c (DEFAULT_ITEM_FORMAT): Removed the gap between side pic
	and menu entry.

1999-06-21  Mikhael Goikhman  <migo@homemail.com>

	* libs/envvar.h:
	* libs/envvar.c (getFirstEnv): new public function
	(getEnv): added parameter
	(envExpand, envDupExpand): removed dirty hack using 'save'

	* fvwm/fvwm2.1 (Restart):
	* fvwm/fvwm.c (parseCommandArgs): added expanding of ${VAR} and ~.

1999-06-21  Dan Espen  <dane@mk.bellcore.com>

	* AUTHORS: A little update to my entry, moved 2 entries into
	correct alphabetic sequence.

1999-06-20  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c, fvwm/session.c, fvwm/fvwm2.1:
	recovered "-restore" option

	* fvwm/fvwm.c (StartupStuff): restore file is removed after usage.

	* fvwm/session.c (LoadWindowStates): fixed reading [WM_COMMAND]
	(SaveWindowStates): fixed writing [RES_NAME] and [RES_CLASS]

1999-06-20  Chris Rankin  <rankinc@zipworld.com.au>

	* modules/FvwmPager/FvwmPager.c: Changed signal handling to use
	the fvwmsignal modules.

1999-06-19  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c (main):
	(StartupStuff): Grab the pointer during startup with cursor XC_watch.

1999-06-19  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c (getBasename): removed
	(Done): Improved Restart logic - three forms (no special cases)
	include 'Restart', 'Restart wm params', 'Restart --pass-args wm'.
	(StartupStuff): Deleting .fvwm_restart after usage (currently
	renaming it to .fvwm_restart.last).
	* fvwm/fvwm2.1: updated documentation for Restart

1999-06-18  Tim Cutts  <tim.cutts@incyte.com>

	* libs/System.c (getostype): Code was assuming that buf had been
	initialised to nulls.  Under Solaris 2.5.1/gcc, this is not the
	case and OSTYPE in FvwmM4 was being set to garbage and SunOS stuck
	on the end.  Set the initial byte of buf to \0 to fix this.  There
	may be other bugs of this type elsewhere.

1999-06-18  Mikhael Goikhman  <migo@homemail.com>

	* sample.fvwmrc/new-features:
	* sample.fvwmrc/system.fvwm2rc:
	* sample.fvwmrc/system.fvwm2rc-sample-1:
	* sample.fvwmrc/system.fvwm2rc-sample-2:
	Replaced "Restart fvwm2" with "Restart" and "Restart fvwm" with
	"Restart fvwm -s" anywhere.

	* fvwm/fvwm.c (Done, getBasename):
	Some code clean-up.

	* fvwm/fvwm.c:
	* fvwm/session.c:
	Removed all references to "-restore".

1999-06-18  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (SetRCDefaults): added FvwmConsole to builtin menu

	* fvwm/menus.c (GetMenuOptions): fixed 'rectangle' menu position
	argument

1999-06-18  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c (main):
	(InitVariables): calling LoadWindowStates, LoadGlobalState only
	on Restarting.

1999-06-17  Dominik Vogt  <domivogt@bvstp038.bbn.hp.com>

	* fvwm/builtins.c (ReadTitleButton): fixed compile error if MINI_ICONS
	is defined but not PIXMAP_BUTTONS

	* fvwm/borders.c (RedrawBorder): fixed compile error if BORDERSTYLE
	is not compiled in

1999-06-17  Dominik Vogt  <domimik.vogt@gmx.de>

	* fvwm/fvwm.c (Done): applied another restart patch by Mikhael

1999-06-10  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.h, fvwm/fvwm.c, fvwm/placement.c:
	restored all removed code with _XA_WM_DESKTOP,
	restored SaveDesktopState(),
	implemented yet better logic for Restart command (Done),
	no options added on a native Restart (-s, -restore) anymore,
	completely removed -restore fvwm command argument.

1999-06-16  Dominik Vogt  <dominik_vogt@gmx.de>

	* utils/BuildXLockMenu.in: fixed bug: item titles were filled with
	spaces to up to 9 bytes, screwed up titles with right justified text

1999-06-15  Dan Espen  <dane@mk.bellcore.com>

	* NEWS:
	* fvwm/fvwm2.1 (BUILT IN KEY AND MOUSE BINDINGS): Describe the Help,
	F1 and Meta-Tab builtin bindings.

1999-06-13  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/fvwmlib.h:
	* libs/Bindings.c (GrabAllWindowKeysAndButtons): small fix for strokes
	support.
	Simplified STROKES patch (less #ifdefs)

1999-06-14  Dominik Vogt  <domivotdomivogt@bvstp038.bbn.hp.com>

	* fvwm/menus.c (pop_menu_up):
	(pop_menu_down): don't ungrab the pointer during dynamic actions

1999-06-14  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.c (GetMoveArguments): handle MoveToPage without arguments
	as described in the man page (patch by Chetan Patil)

1999-06-12  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (paint_item):
	(draw_underline):
	(paint_item):
	(scanForHotkeys):
	(AddToMenu):
	(GetMenuStyleIndex): cleaned up strange hotkey code, renamed the
	MenuItem members so you can guess from their name what they do,
	fixed automatic hotkeys to play nicely with numbers as hotkeys,
	rewrote draw_underline to do something comprehensible, removed
	member 'chhotkey' from MenuItem struct (was used only once),
	AutomaticHotkeys can be switched on/off even after the menus have
	been defined.
	(menuShortcuts): fixed character handling with is... macros.
	(pop_menu_up): fixed bug that caused v/HGradient menus to always
	hilight the first item when invoked with a key stroke.

	* utils/fvwm_make_directory_menu.sh: improved performance dramatically
	by letting sed do all the work

	* fvwm/menus.c:
	* fvwm/menus.h: renamed 'AutomaticHotkey' to 'AutomaticHotkeys'
	                                                            ^^^

1999-06-10  Michael Han  <mikehan@best.com>

	* fvwm/menus.c (AddToMenu, GetMenuStyleIndex, NewMenuStyle):
	added AutomaticHotkey handling
	* fvwm/menus.h: Added a "feel" flag for automatic_hotkey and
	macros to handle the flag
	* fvwm/fvwm2.1: documentation for AutomaticHotkey MenuStyle

1999-06-11  Bob Woodside  <proteus@pcnet.com>

	* fvwm/borders.c (SetupFrame): Reinstated the ConfigureNotify, so
	apps know where their windows are after they're moved by the window
	manager.

1999-06-10  Hippo

	* fvwm/{{colors,fvwm,icons}.c,screen.h}: clean up of icon rendering:
	removed Bool usingDefaultVisual & GC IconPixmapGC,
	client supplied icon bitmaps are always drawn in correct colors,
	client supplied icon pixmaps have no relief when fvwm is using a
	non-default visual.

1999-06-10  Chris Rankin  <rankinc@zipworld.com.au>

	* modules/Fvwm{Icon{Man,Box},WinList}: Modified signal handling
	to use fvwmsignal.

1999-06-09  Bob Woodside  <proteus@pcnet.com>

	* fvwm/fvwm.c: Fixed the problem of windows wandering after a
	Restart from a page other than 0,0, followed by a Recapture.
	* fvwm/placement.c: Corrected my overzealous attempt to keep windows
	from switching desktops on Restart/Recapture, which broke a couple
	of the StartsOnPage options.

1999-06-09  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c: increased item height by one pixel

1999-06-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c: Rewrote menu code so that MakeMenu is only called when
	menus are mapped. This should save quite some time when building
	dynamic menus. This used to call MakeMenu once for every new item.

	* fvwm/menus.c (MakeMenus): function no longer needed.

	* fvwm/fvwm.c (StartupStuff): no need to call MakeMenus any more

	* fvwm/windowlist.c (do_windowList): no need to call MakeMenu any more

	* libs/Bindings.c:
	* fvwm/fvwm.c: Applied update to strokes patch

1999-06-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c: Implemented a 'MissingSubmenuFunc' to allow better
	dynamic configurability for dynamic menus. This makes it possible to
	implement a file browser creating submenus on the fly.

	* fvwm/menus.c (size_menu_horizontally): fixed bug in placement of
	 '>' submenu triangle with long titles

1999-06-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (mr_popup_for_mi): use PeekToken instead of GetNextToken

	* fvwm/move_resize.c (DoSnapAttract): fixed 'shaking windows' when
	using SnapGrid bug

	* fvwm/menus.c (pop_menu_down_and_repaint_parent):
	(copy_menu_root):
	fixed flickering gradient root menus that popped up themself

1999-06-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (paint_item): Fixed previous patch.

	* fvwm/menus.c (paint_item):
	gradient menus may have a hilit background too

1999-06-06  Mikhael Goikhman  <migo@homemail.com>

	* fvwm/fvwm.c (Done, parseCommandArgs):
	Implemented and used function parseCommandArgs(), accept shell-like
	syntax in the Restart command.

	* fvwm/fvwm.c (Done, getBasename):
	Implemented and used function getBasename(). If fvwm argv[0] is
	[path1/]the_executable, the two forms "Restart [path2/]the_executable"
	and "Restart" work as a native restart (using session or -restore -s).
	Any other form of the Restart command processed as a foreign restart
	(with command parsing). The argument list is limited to 30.

Sun Jun  6 21:12:39 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Module.c:
	* libs/Module.h: new function ParseModuleArgs.

	* libs/Strings.c:
	* libs/Strings.h: new function StrHasPrefix.

	* fvwm/repeat.c: include libs/Parse.h.

	* libs/Picture.c:
	* libs/Picture.h:
	* libs/System.c:
	* libs/fvwmlib.h:
	* fvwm/fvwm.h:
	* fvwm/virtual.c: tidying up.

1999-06-05  Ke Huang <kh6@cec.wustl.edu>

	* acconfig.h: added HAVE_STROKE

	* configure.in: added check for libstroke

	* fvwm/Makefile.am: added stroke_LIBS and stroke_CFLAGS

	* fvwm/bindings.c: added stroke_binding, and ifdefs for ParseBinding()

	* fvwm/bindings.h: added prototypes for strokes

	* fvwm/events.c: added HandleMotionNotify and HandleButtonRelease

	* fvwm/events.h: added prototypes

	* fvwm/functions.c: added stroke command

	* fvwm/fvwm.c: added MotionMasks for X.

	* fvwm/parse.h: added F_STROKE

	* libs/Bindings.c: new prototypes for AddBinding, RemoveBinding,
 	and CheckBinding

	* libs/fvwmlib.h: new prototypes, and new defines for BindingType
 	and Binding struct.

1999-06-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (get_xy_from_position_hints): fixed a bug in position
	hints for root menus
	(get_selectable_item_index): fixed bug in cursor key menu navigation

1999-06-05  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (size_menu_horizontally): removed 'fix' in placement of
	%r and %c columns (titles not drawn properly)

	* configure.in: changed version to 2.3.4

	* fvwm/menus.c: Made position hints refering to menus play nicely with
	SubmenusLeft.
	Added an additional mini icon to the right of the item.
	(scanForPixmap): remove UGLY_WHEN_PIXMAPS_MISSING code
	(size_menu_horizontally): fixed bug in placement of %r and %c columns

	* fvwm/menus.c (pop_menu_up et al.): the side on which sub menus pop up
	reverses once one menu hit the left or right border
	(MenuInteraction): fixed key press warping: don't warp if the key press
	has no meaning (broken in earlier patches).

	* fvwm/borders.c (SetupFrame): -Wall fix

1999-06-04  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (do_menu):
	(get_prefered_popup_position):
	(MenuInteraction):

	* fvwm/menus.c (GetOneMenuPositionArgument): fixed off-by-one bug in
	position hint calculations.
	(MenuInteraction): fixed coredump when up/down is pressed when the
	pointer is not on a menu
	(menuShortcuts): made up/down key press handling more intuitive when
	not on a menu (hopefully)
	(do_menus_overlap): fixed calculations with negative value of
	PopupOffsetAdd.
	(size_menu_horizontally): use '%|' instead of '%[' and '%]' in the
	item format string

	* fvwm/fvwm.c (CreateCursors): changed default menu cursor to
	XC_top_left_arrow.

	* fvwm/menus.c (paint_menu): removed fix for drawing the selected item.
	(paint_item): suppress border redrawing when this was already done by
	paint_menu()
	(paint_menu): centralised drawing or menu border; speeds expose events
	when only the border was obscured.
	(item_middle_y_offset): fixed bug: offset didn't take the relief
	thickness into account

	* fvwm/menus.c: made menu items two pixels shorter

	* fvwm/menus.c (paint_menu): fix for drawing the selected item.

	* fvwm/menus.c: major rewrite to allow a lot more freedom in menu
	layouts. See documentation of MenuStyle options BorderWidth,
	SubmenusLeft, Hilight3DThickness and ItemFormat. This fixes the
	left vs right alignment problem in menu items.

	* fvwm/modconf.c (SendDataToModule): -Wall fix
	* fvwm/events.c (DispatchEvent): -Wall fix
	(HandleUnmapNotify): -Wall fix

1999-06-03  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.c (ButtonPosition): moved function from menus.c to misc.c

1999-06-01  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (FreeMenuItem):
	(merge_continuation_menus):

1999-06-03  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/events.c (HandleConfigureRequest): send the synthetic
	ConfigureNotify here whenever the client may not receive a real
	ConfigureNotify on its toplevel window (as the ICCCM demands).
	As a hack to support buggy tk, duplicate the ConfigureNotify on
	the frame window.

	* fvwm/borders.c (SetupFrame): ifdef out the code for sending
	synthetic ConfigureNotify events. This should only be done in
	response to ConfigureRequests, thus it is better done in
	HandleConfigureRequest. This was old twm heritage. The sendEvent
	parameter is now defunct.

1999-06-02  Hippo

	* fvwm/colors.c: new gradient styles for the DefaultBackground
	command: S = concentric squares, C = concentric circles, R = radar &
	Y = Yin Yang (without the dots, I am not that manic).

1999-06-02  Matthias Clasen  <clasen@pong.mathematik.uni-freiburg.de>

	* fvwm/session.c (LoadGlobalState): Make restarting return to
	the old desk/page.

1999-05-31  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (main): applied fixed restart patch by Mikhael Goikhman

1999-05-30  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (SelectMenuItem): fixed another x error message

	* fvwm/fvwm.c (main): applied restart patch by Mikhael Goikhman

	* fvwm/menus.c (SelectMenuItem): Fixed X error message 54/4/14: No
	longer try to delete a stored item twice.
	(MenuInteraction): Do not unselect a popup menu item when we leave the
	menu and the submenu stays up.
	(MenuInteraction): Fixed bug that caused a submenu to pop up when
	leaving a menu into an item of its parent that pops up the parent
	itself.
	(MenuInteraction): Only raise the parent menu if it is obscured when
	moving back with the keyboard.
	(NewMenuStyle): fixed reversed 'HoldSubmenus' default for fvwm/mwm/win
	menus.

1999-05-29  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.h (MenuRootStatic): moved temp_flags to dflags of
	MenuRootDynamic. Multiple copies of a menu now get their V/HGradient
	drawn.

	* fvwm/menus.c (MenuInteraction): Harmonized function internal flags
	with GSFR style flags.

	* fvwm/windowlist.c (do_windowList):
	* fvwm/menus.c (do_menu):
	(menu_func):
	* fvwm/menus.h (MenuParameters):
	Added flag 'is_already_mapped' to be used in do_menu() to fix
	unnecessary menu duplication with mouse movement.

	* fvwm/builtins.c (ReadButtonFace):
	* fvwm/colors.c (ParseGradient):
	* fvwm/menus.c (ReadMenuFace):
	* fvwm/defaults.h: Macro MAX_GRADIENT_SEGMENTS controls how many
	colours may be allocated for a single gradient. Increased this from
	128 to 1000. The menu code uses an array for this and wastes 4k. I hope
	this will soon be changed when the gradient code is moved into the lib.

Sat May 29 13:54:21 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Module.h: replaced HEADER_SIZE and the like with two macro
	sets FvwmPacket*Size and FvwmPacket*Size_byte.

	* libs/Module.c:
	* fvwm/stack.c:
	* fvwm/module_interface.c: rewrite with new packet size macros.

Sat May 29 13:35:11 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Module.c (GetConfigLine): rewrote to use new ReadFvwmPacket
 	function.

	* libs/Module.c (ReadFvwmPacket): rewrite function to eliminate
	callback to DeadPipe() upon end-of-file or error.  The caller must
	now check the return value.  Returns an FvwmPacket pointer.

	* libs/Module.h: changed fvwm_packet_t to FvwmPacket.

1999-05-28  Bob Woodside  <proteus@pcnet.com>

	* fvwm/virtual.c (changeDesks): Removed testing code.

1999-05-28  Bob Woodside  <proteus@pcnet.com>

	* fvwm/add_window.c (AddWindow): Preserve the desk setting when re-
        using an FvwmWindow struct, to keep Recapture from losing track of
        which desk a window is on.

        * fvwm/fvwm.c (CaptureAllWindows): Restored the old XFindContext check
        of each window, and removed the attempt to follow the FvwmWindow chain
        (which gets modified with each call to CaptureOneWindow). This fixes
        a random failure to set styles and desk correctly during a Recapture.

        * fvwm/placement.c (PlaceWindow): Bypass all the "which desk to start
        on" logic during initial Capture or Recapture, so the saved desk will
        be used.

1999-05-28  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (setShadeAnim): rewrote and fixed buggy parsing

	* fvwm/screen.h (ScreenInfo):
	* fvwm/fvwm.c (InitVariables): moved static global shade_anim_steps to
	screen structure.

	* fvwm/builtins.c (SetOpaque): invalid argument returns to default
	(setShadeAnim): fixed memory leak

	* fvwm/builtins.c (SetOpaque):
	* fvwm/fvwm.c (InitVariables):
	* fvwm/defaults.h (DEFAULT_OPAQUE_MOVE_SIZE): use new constant

	* fvwm/builtins.c (SetXORPixmap): omit pixmap name to return to default
	(SetXOR): invalid parameter returns to default

	* fvwm/fvwm.c (InitVariables):

	* fvwm/defaults.h: moved MAX_WINDOW_WIDTH and MAX_WINDOW_HEIGHT to
	defaults.h and renamed them to DEFAULT_...

	* fvwm/add_window.c (GetWindowSizeHints):
	* fvwm/builtins.c(SetMaxWindowSize):
	* fvwm/screen.h (ScreenInfo):
	* fvwm/parse.h (enum):
	* fvwm/functions.c (func_config):
	implemented MaxWindowSize command.

1999-05-25  Ben Mansell  <ben.mansell@deathsdoor.com>

	* fvwm/misc.h:
	* fvwm/borders.c (SetBorder): Moved the border redrawing code to a
	new function, RedrawBorder, which is called by SetBorder. SetBorder
	still contains a call to SetTitleBar, whilst RedrawBorder will not
	call this function.
	* fvwm/events.c (HandleExpose): Changed the SetBorder call into
	RedrawBorder. This prevents unnecessary title bar redraws.

Wed May 26 19:45:08 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/colors.c (PI): might be defined in system headers like
 	<math.h>.

	* libs/Parse.h (XCmpToken): prototype this function, but add cast
	to the bsearch() call in FindToken macro.  This avoids the warning
	"passing arg 5 of `bsearch' from incompatible pointer type".

	* libs/Makefile.am (libfvwm_a_SOURCES): add wild.h, safemalloc.h,
 	fvwmsignal.h, Grab.h, and ClientMsg.h.

	* fvwm/Makefile.am (fvwm2_SOURCES): add colormaps.h

	* fvwm/windowlist.c (winCompare): make static.

	* fvwm/stack.c (intersect, overlap_box, overlap): make static.

	* fvwm/session.c (SaveGlobalState, GetWindowRole, GetClientID,
 	SaveWindowStates, matchWin): make static.

	* fvwm/session.c (MyIoErrorHandler): make a prototype.

	* fvwm/session.c: include session.h.

	* fvwm/read.c: include read.h.

	* fvwm/module_interface.c (SendNewPacket, BroadcastNewPacket,
 	SendMiniIcon): make static.

	* fvwm/modconf.c (make_look_packet): make prototype and declare
	static.

	* fvwm/misc.c (ComputeActualPosition): commented out unused
 	function.

	* fvwm/menus.c (PaintSidePic, FreeMenuItem, scanForHotkeys,
 	scanForPixmap): make static.

	* fvwm/fvwm.c (InternUsefulAtoms, InitVariables): make static.

	* fvwm/colormaps.c: include colormaps.h.
	* fvwm/colormaps.h: new file of prototypes.

	* fvwm/builtins.c: make CreateFlagString, FreeConditionMask,
 	DefaultConditionMask, CreateConditionMask, MatchesConditionMask,
 	and Circulate static functions.

	* fvwm/screen.h: prototype AddToDecor.

1999-05-26  Chris Rankin  <rankinc@zipworld.com.au>

	* libs/fvwmsignal.c: added <sys/select.h> header.

	* fvwm/events.c: removed <sys/select.h>, <signal.h> header.

	* modules/FvwmButtons/FvwmButtons.c: Replaced select() with
 	fvwmSelect() in FvwmButtons, altered signal installation and fixed
 	some invalid C prototypes.

1999-05-26  Matthias Clasen  <clasen@pong.mathematik.uni-freiburg.de>

	* fvwm/session.c (LoadGlobalState):
	(MatchWinToSM): restore only the "dynamic" state if we are
	restarting. Otherwise, Restarting becomes useless for rereading
	a changed rc file. By "dynamic" state I mean: geometry, desk,
	layer and maximizedness/shadedness/iconification. This fixes
	the second part of bug #315.

1999-05-25  Matthias Clasen  <clasen@pong.mathematik.uni-freiburg.de>

	* fvwm/borders.c (SetBorder): remove unused variable `w'.

1995-05-24  Bob Woodside <proteus@pcnet.com>

	* fvwm/functions.c:
	* fvwm/misc.h:
	* fvwm/virtual.c: New GoToDeskAndPage command to replace the Pager's
	old "GoToDesk 0 10000" hack. Most of changeDesks is removed to 2 new
	functions, UnmapDesk and MapDesk.

Mon May 24 20:13:34 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* utils/Makefile.am (fvwmbug): fix build rule that had the
	filename before the '-e' options of 'sed'.

Mon May 24 17:45:34 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/wild.c: include wild.h.

	* libs/safemalloc.c: include safemalloc.h.

	* libs/fvwmlib.h: include ClientMsg.h, Grab.h, and safemalloc.h.

	* libs/Parse.c (SkipSpaces,CopyToken): make static.
	* libs/Parse.c (CheckNTokens): comment out unused function.

	* libs/Grab.c: include Grab.h.

	* libs/Bindings.c (GrabWindowButton): make static.

	* libs/wild.h:
	* libs/safemalloc.h:
	* libs/Grab.h:
	* libs/ClientMsg.h: new files.

1999-05-24  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c (Done): call RestartInSession if command is
	empty or contains "fvwm". Remove unnecessary "if (command)"
	statements, since Done is never called as Done (1, NULL).
	That wouldn't work anyway, since Done uses strstr on command
	without checking for NULL. If exec of command fails, try
	g_argv[0] with the newly constructed my_argv before reverting
	to g_argv (makes Restart without argument work again).

1999-05-24  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/functions.c (expand): Applied patch from Brad to fix
	expansion of NULL args.

Sun May 23 16:49:12 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* utils/Makefile.am (fvwmbug): generate fvwmbug from fvwmbug.sh
	* configure.in: generate utils/fvwmbug.sh from utils/fvwmbug.sh.in.

	* utils/fvwmbug.sh.in: new file.
	* utils/fvwmbug.1: new file.

1999-05-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/module_interface.c (DeadPipe): backed out DeadPipe signal
	handler

Sat May 22 17:40:57 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/menus.c (PopDownMenu): removed unused variable `f'.

	* fvwm/fvwm.c (CaptureOneWindow): removed unused variable `data'.

	* libs/Bindings.c (GrabWindowKey): removed unused variable
 	`counter'.

1999-05-22  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/screen.h (ButtonState):
	* fvwm/builtins.c (button_states): new button states ToggledActiveUp,
	ToggledActiveDown, ToggledInactive.
	* fvwm/borders.c (get_button_state): new argument Bool toggled.
	(SetBorder):
	(SetTitleBar): calculate toggled and feed it to get_button_state.
	* NEWS:
	* fvwm/fvwm2.1: explain new toggled button states.

	* NEWS:
	* fvwm/fvwm2.1:
	* fvwm/screen.h:
	* fvwm/borders.c (DrawButton):
	* fvwm/builtins.c (ButtonStyle): add MWMDecorStick as a button
	style flag to support toggle buttons for the Stick function.

	* fvwm/borders.c (SetBorder):
	* fvwm/builtins.c (ChangeDecor): Make SetBorder with force > 1
	mean: do a *full* redraw, including backgrounds. Use this to
	fix ChangeDecor.

	* fvwm/builtins.c (CreateConditionMask):
	* NEWS:
	* fvwm/fvwm2.1: Add [!]Shaded to the supported conditions.

1999-05-21  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm2.1: replace one occurance of MWMDecorMax by
	MWMDecorShade.

1999-05-22  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (NewMenuStyle): new options HoldSubmenus and
	DeleteSubmenus

	* fvwm/builtins.c (ReadButtonFace): removed stray fprintf

	* fvwm/menus.c: more work on multiple menu instances and tear-off menus

	* menus.c: use ExecuteFunctionSaveTmpWin

	* fvwm/functions.c (ExecuteFunctionSaveTmpWin): wrapper around
	ExecuteFunction that restores Tmp_win

	* fvwm/menus.c (MakeMenu):
	(MakeMenuWindow):
 	Split off dynamic part of MakeMenu and moved it to new function.

	* fvwm/menus.c (MenuInteraction):
	Backed out ret_event argument. We can safely continue to use the global
	Event. Caused a bug when executing functions from window menus.

	* fvwm/events.c (HandleEvents):
	* fvwm/functions.c (DeferExecution):
	* fvwm/move_resize.c (resize_window):
	(moveLoop):
	* fvwm/builtins.c (wait_func):
	* fvwm/menus.c (MenuInteraction):
	* fvwm/events.c (DispatchEvent):
	Added a parameter to DispatchEvent that allows to preserve the current
	Tmp_win when calling. Fixes a bug in menus.

	* fvwm/functions.c (DeferExecution): Fixed a bug that caused function
	to work on a random window.

1999--5-21  Hippo

	* libs/Graphics.c: CreateStretch*Pixmap: small adjustments
	* fvmw/colors.c: New function ParseGradient used for turning a string
	into something suitable for AllocNonLinerGradient()
	* fvwm/colors.c: New function CreateGradientPixmap understands H, V & D
	gradients
	* fvwm/builtins.c: SetDefaultBackground() understands gradients

Mon May 17 21:38:18 1999  DanEspen  <dje@blue>

	* libs/Module.c (GetConfigLine): New function "InitGetConfigLine"
	so module only gets config lines it wants.

	* fvwm/modconf.c (SendDataToModule): If matching active, only send
	matching config lines.

1999-05-20  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/icons.c (CreateIconWindow): remove some code which
	prevented the creation of offscreen icons. This should't be
	a problem, since AutoPlaceIcon takes care of this later. But
	it enables Restart to put icons in the proper place.

	* fvwm/icons.c (Iconify):
	(CreateIconWindow):
	* fvwm/events.c (HandleMapRequestKeepRaised):
	(HandlePropertyNotify):
	remove some #ifdef SESSION's, since the session stuff is now
	also used for restarting.

	* fvwm/builtins.c (ReadButtonFace): Initialize vc->line_style to 0
	before reading a line pattern.

1999-05-20  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (DestroyMenu):
	(NewMenuRoot): changes to handle multiple instances of the same menu
	(CopyMenuRoot): new function to create a copy of a menu

	* fvwm/menus.c:
	* fvwm/menus.h:
	* fvwm/windowlist.c:
	split members of MenuRoot into a dynamic part (MenuRootDynamic) and a
	static part (MenuRootStatic). The static members can safely be shared
	between multiple instances of the same menu while the dynamic members
	have to be created for each instance
	introduced MR_... macros to access MenuRoot members

1999-05-19  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/screen.h (ButtonFace): reduce memory consumption by
	moving the vector member into the union and making it more compact.
	The old vector_coords always used 61 ints. The new vector_coords
	use 10 ints for the most common case of buttons with a pattern of
	4 lines. Considering that I counted up to 33 ButtonFace structs
	per FvwmDecor, this should sum up to a memory reduction of
	approx. 6k / FvwmDecor.

	* fvwm/fvwm.c (LoadDefaultLeftButton):
	(LoadDefaultRightButton):
	(ResetAllButtons): adapt to new vector_coords.

	* fvwm/builtins.c (FreeButtonFace): free the dynamically allocated
	memory in vector_coords.
	* fvwm/builtins.c (ReadButtonFace): allocate memory for
	vector_coords dynamically, allow up to 32 points in vector
	patterns, since we use a long to hold the line_style flags.

	* fvwm/borders.c (DrawButton):
	(DrawLinePattern): adapt to new vector_coords.

	* fvwm/fvwm2.1: document the limit of 32 points / pattern.

1999-05-18  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c: remove SaveDesktopState, remove all references
	to _XA_WM_DESKTOP, set the Restarting flag based on restore_filename.
	(Done): don't move to viewport 0,0 if restarting.

	* fvwm/placement.c (PlaceWindow):
	* fvwm/fvwm.h: remove _XA_WM_DESKTOP

1999-05-19  Hippo

	* fvwm/{fvwm,read}.c: Fixed startup delays due to having modules
	started by reading a file.  The only modules that are waited for are
	those specified on the command line.

1999-05-19  Dominik Vogt  <dominik_vogt@gmx.de>

	* configure.in: changed version to 2.3.3

	* fvwm/menus.h: more preparations for tear-off menus

	* fvwm/menus.c (MenuInteraction): fixed coredump with double key press

1999-05-18  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Parse.h (MAX_TOKEN_LENGTH): increased MAX_TOKEN_LENGTH from 255
	to 1023. Was not big enough for ImagePath!

	* fvwm/modconf.c (SendDataToModule): send the MoveThreshold value to
	modules

1999-05-18  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.h (common_flags_type): new member has_depressable_border.

	* fvwm/window_flags.h (HAS_DEPRESSABLE_BORDER): accessor macro.

	* fvwm/style.c (ProcessNewStyle): new styles
	DepressableBorder/FirmBorder to set has_depressable_border.

	* fvwm/borders.c (SetBorder): remove undocumented dependency of
	border depressability on has_mwm_buttons. Use
	has_depressable_border instead.

	* NEWS:
	* fvwm/fvwm2.1: document DepressableBorder/FirmBorder.

Tue May 18 12:44:11 1999  Steve ROBBINS  <stever@bic.mni.mcgill.ca>

	* acinclude.m4: AC_FUNC_SELECT may fail on certain AIX machines;
	bugfix from Lars Hecking.

1999-05-18  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c: menus.c should be reentrant now; the MenuRoot struct
	itself still needs some work, but not today

	* fvwm/menus.c: removed extern reference to Tmp_win
	removed extern reference to Context
	removed static variables dkp_...
	made position hint code reentrant
	removed extern reference to ButtonWindow
	made fWarpPointerToTitle code reentrant
	removed extern reference to Event

	* fvwm/misc.h:
	* fvwm/misc.c (check_if_fvwm_window_exists): function to make sure that
	the given FvwmWindow structure is still valid

1999-05-17  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/move_resize.c:
	* fvwm/events.c: dont use external menuFromFrameOrWindowOrTitlebar
	anymore

	* fvwm/menus.h:
	* fvwm/menus.c: renamed the flags, removed 'allflags' from unions and
	restructured MenuRoot structure.
	Fixed '^<colour>^' in menu titles, removed some nearly unused macros.

1999-05-17  Matthias Clasen  <clasen@pong.mathematik.uni-freiburg.de>

	* fvwm/icons.c (AutoPlaceIcon): don't move window unless it is
	sticky.

	* fvwm/builtins.c (Maximize): remove (harmless) bug: applying
	IsRectangleOnThisPage to orig_g is never correct, since the
	orig_g values are desk-relative, not page-relative.

1999-05-17 Hippo

	* removed libs/ModGraph.h
	* libs/ModGraph.c: new structure Background: contains useful stuff
	* libs/Graphics.c: new functions CreateStretch{X,Y,}Pixmap()
	* fvwm/{{lots.c},screen.h} use Background struct.
	* modules/Fvwm{Ident,Scroll,Buttons}: use Background Struct

Sun May 16 10:22:00 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/events.c (My_XNextEvent): update select function call, and
 	fd_width type for new AC_FUNC_SELECT macro.

	* configure.in: switch from AC_FUNC_SELECT_ARGTYPES to AC_FUNC_SELECT.

	* acconfig.h: insert preprocessor symbols for AC_FUNC_SELECT macro.

	* acinclude.m4: insert AC_FUNC_SELECT macro.

1999-05-15  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (AddToMenu): removed and rewrote some macros; menu item
	drawing may have new bugs now

	* fvwm/menus.c (AddToMenu):
	* fvwm/menus.h (MenuItem): removed unused member item_num

	* fvwm/menus.c (SetMenuItemSelected):
	(paint_menu_item):
	(AddToMenu):
	* fvwm/menus.h (MenuItem): removed the dynamic member 'state'; all
	other parts of this struct don't change while the menu is up

	* fvwm/menus.c (MenuInteraction): use Scr.MoveThreshold in menus too
	(MakeMenu): fixed WindowList title

	* fvwm/fvwm.c (InitVariables): initialise default move threshold

	* fvwm/defaults.h: #define for default move threshold

1999-05-14  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (SetMoveThreshold): added a safety check

	* fvwm/screen.h (ScreenInfo):
	* fvwm/parse.h (enum):
	* fvwm/misc.h:
	* fvwm/functions.c (func_config):
	* fvwm/builtins.c (SetMoveThreshold):
	applied MoveThreshold patch by Andrew Morton

	* fvwm/icons.c (AutoPlaceIcon): Force icon on desktop even if center of
	window is off the desk's borders

1999-05-13  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c (CaptureOneWindow): set PPosOverride in
	CaptureOneWindow, to avoid jumping windows with RecaptureWindow

	* fvwm/builtins.c (Maximize): Call SetBorder when maximizing,
	otherwise doing "Maximize Tall" from a module may forget
	to update the maximize button.

1999-05-13 Hippo

	* fvwm/{lots} New command "DefaultBackground":
	understands TiledPixmap <pixmap>. With no args uses DefaultColors.
	Used by some modules.

1999-05-13  Dan Espen  <dane@mk.bellcore.com>

	* INSTALL.fvwm (Configuration File): Clear up distinction between
	$sysconfdir and $sysconfdir/fvwm.

1999-05-12  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/menus.c (do_menu): set *ret_paction to NULL after
	freeing it. This fixes coredumps from do_windowList (bugs
	#332 and #339).

1999-05-12  Dan Espen  <dane@mk.bellcore.com>

	* INSTALL.fvwm (Configuration File): Some clarification on config files
	that are installed.  $sysconfdir is ${prefix}/etc/fvwm.

	* fvwm/fvwm2.1 (INITIALIZATION): Correct typo and facts about
	startup.

1999-05-12  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/builtins.c (Maximize): make windows go back to their
	original location upon unmaximization again.

1999-05-11  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.h (style_flags): new member icon_override.

	* fvwm/style.h (SICON_OVERRIDE): macro to access icon_override.

	* fvwm/style.c (ProcessNewStyle): new style option
	IconOverride/NoActiveIconOverride/NoIconOverride sets
	icon_override.

	* fvwm/add_window.c (AddWindow): change logic for determining
	the icon. It uses the icon_override style flag now.

	* NEWS:
	* fvwm/fvwm2.1: document IconOverride/NoIconOverride/
	NoActiveIconOverride. This fixes bug #333.

1999-05-10  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (paint_menu_item): take sidepic into account for right
	justified items
	(MiWarpPointerToItem): fixed warping to first item after multiple
	titles or separators
	(MakeMenu): titles count for complete item width, not just the left
	column

1999-05-10  Matthias Clasen  <clasen@pong.mathematik.uni-freiburg.de>

	* fvwm/session.c (SaveWindowStates): save orig_g.[xy] - old_bw
	instead of orig_g.[xy] - the old_bw is added again in AddWindow.
	This fixes bug #334.

Sun May  9 02:43:02 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* utils/Makefile.am: don't install fvwm_make_browse_menu.sh until
 	we have some consensus on _where_ to put it.

Sat May  8 14:29:10 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/icons.c (Iconify): removed unused variable `dummy'.

1999-05-07  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/move_resize.c (ConstrainSize): make sure to stay within
	min and max.

	* fvwm/add_window.c (GetWindowSizeHints):
	fix the fix to silently accept min width zero,
	reject any negative values in aspect ratios, scale the aspect
	ratios to be <= 65536 to avoid overflows in ConstrainSize.
	(gcd): removed.

1999-05-07  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* fvwm/windowlist.c (do_windowList): fix call to do_menu.

Fri May  7 13:30:06 1999  DanEspen  <dje@blue>

	* utils/xpmroot.1: .TH line fixup.

	* fvwm/fvwm2.1: .TH line fixup.

	* AUTHORS: Added details for Albrech Kadlec.

1999-05-07  Hippo

	* fvwm.icons.c: support for client supplied icon pixmaps with
	fvwm running in a non-default visual

1999-05-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (do_menu): fixed memory leak
	(menu_func): miExecuteAction -> ret_action

Fri May  7 00:43:44 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* utils/Makefile.am (BuildXLockMenu.1): build and distribute manpage.
	You will need 'pod2man' (from perl 5) to build the manpage, so don't
	edit BuildXLockMenu.in unless you have perl 5.

Thu May  6 23:14:11 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Module.h: add fvwm_packet_t type.

1999-05-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleMapRequestKeepRaised):
	(HandleMapNotify): only grab focus for transients when their top window
	is focused

	* fvwm/events.c (HandleMapRequestKeepRaised): another focus fix

	* fvwm/misc.c (Destroy): focus returns to 'parent' of transient windows

	* fvwm/menus.c (MenuInteraction):
	(do_menu):
	(MenuInteraction): fixed destroying in dynamicpopdownaction; fixed a
	bug with 'selectinplace' and multiple recursive submenus with position
	hints (saves some CPU).

	* fvwm/windowlist.c (do_windowList):

	* fvwm/menus.c (FPopupMenu): fixed calling interactive functions in
	dynamic menus

	* fvwm/menus.c (PopDownMenu):
	(FPopupMenu): fixed dynamic 'popup' menus

	* fvwm/functions.c (ExecuteFunction):

	* fvwm/menus.c (FPopupMenu):
	(do_menu):
	(MenuInteraction): fixed position hints with dynamic menus

	* fvwm/menus.c (paint_menu_item):
	(MakeMenu):
	* fvwm/menus.h (MenuRoot): fixed right justification for menu items

1999-05-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (paint_menu_item): hilight items without a left text too
	(MakeMenu): right menu item text does not draw into submenu triangles
	any more

	* fvwm/menus.c (FPopupMenu): dynamic menus don't need an item initially

	* utils/Makefile.am: make BuildXLockMenu executable

	* configure.in (xpm_problem): removed FvwmAudio Makefile

	* fvwm/menus.c (DestroyMenu): fixed 'recreate'
	(DestroyMenu): fixed memory leak when destroying dynamic menus

	* utils/BuildXLockMenu: applied documentation patch

	* fvwm/windowlist.c (do_windowList):

	* fvwm/menus.c (NewMenuRoot): use memset to initialise menu

	* fvwm/add_window.c (GetWindowSizeHints): accept a min width/height
	without complaining
	(GetWindowSizeHints): some more information in case of illegal
	aspect ratio

1999-05-05  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleLeaveNotify):
	(HandleEnterNotify): removed debugging code

	* fvwm/builtins.c (Maximize): fixed unmaximizing on current page

	* fvwm/focus.c (DoSetFocus):
	* fvwm/icons.c (AutoPlaceIcon):
	* fvwm/builtins.c (Maximize):
	* fvwm/events.c (HandlePropertyNotify):
	(HandleMapRequestKeepRaised):
	(HandleMapNotify):
	use IsRectangleOnThisPage

	* fvwm/misc.h:
	* fvwm/misc.c (IsRectangleOnThisPage): generalised version of
	IsWindowOnThisPage.

	* fvwm/windowlist.c:
	* fvwm/stack.c:
	* fvwm/session.c:
	* fvwm/placement.c:
	* fvwm/move_resize.c:
	* fvwm/module_interface.c:
	* fvwm/misc.c:
	* fvwm/menus.c:
	* fvwm/focus.c:
	* fvwm/icons.c:
	* fvwm/events.c:
	* fvwm/decorations.c:
	* fvwm/builtins.c:
	* fvwm/borders.c:
	* fvwm/add_window.c:
	use new rectangle struct

	* fvwm/fvwm.h (struct rectangle): new type 'rectangle' for use with
	window structure, use this for 'orig', 'frame' and 'title' geometry

	* fvwm/stack.c: added GPL notice

	* fvwm/builtins.c (MaximizeWidth):
	(MaximizeHeight): now static
	(Maximize): fixed maximizing with window not fully on current page

1999-05-05  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/icons.c (Iconify): remove unnecessary EnterNotify event
	squashing.

	* fvwm/events.c (HandleEnterNotify): improve the icon title
	raising fix with a better understanding of what goes on:
	We get an EnterNotify with mode == NotifyUnGrab when fvwm releases
	the grab held during iconification. Now we only react to
	EnterNotify events with mode == NotifyNormal.

	* fvwm/add_window.c (GetWindowSizeHints): issue a warning
	if broken hints are encountered. Reset PBaseSize if base > min,
	to avoid problems with size - base becoming <= 0 in the aspect
	ratio calculations. Normalize the aspect ratios.
	(gcd): Euclid.

1999-05-05  Dominik Vogt  <dominik_vogt@gmx.de>

	* utils/BuildXLockMenu: applied patch by Mikhael Goikhman

	* fvwm/move_resize.c (moveLoop): fixed move/page fix

1999-05-04  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/placement.c (GetGravityOffsets): remove unnecessary
	check for PWinGravity. We make sure the value is valid in
	GetWindowSizeHints.

	* fvwm/module_interface.c (CONFIGARGS):
	* fvwm/module_interface.c (OLDCONFIGARGS):
	* fvwm/module_interface.c (CONFIGARGSNEW):
	* fvwm/module.c (CONFIGARGS):
	* fvwm/module.c (OLDCONFIGARGS):
	* fvwm/module.c (CONFIGARGSNEW): remove unnecessary checks
	for PBaseSize and PResizeInc from these macros. We make sure
	the values are valid in GetWindowSizeHints.

	* fvwm/move_resize.c (ConstrainSize): remove the override_size
	flag handling here, since it is now done in GetWindowSizeHints.
	Be more ICCCM 2 compliant by applying the aspect ratio to
	size - base_size if the base_size is explicitly given.

	* fvwm/add_window.c (GetWindowSizeHints): completely rewritten.
	It now modifies the hints in the following way: ensure that
	1 <= inc, 0 <= base, 1 <= min <= max. It uses the follwing
	defaults: 1 for inc, min or 0 for base, base or 1 for min,
	MAX_WINDOW for max, NorthWest for gravity. PAspect is unset
	if the aspect ratios are broken. Apart from that, the flags are
	not changed. The override_size style is now handled here as well.

1999-05-04  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1 (XORpixmap): comment how to turn XORpixmap off

	* fvwm/move_resize.c: removed debugging code

	* fvwm/builtins.c (SetXORPixmap): access of freed pointer fixed

	* fvwm/move_resize.c (moveLoop): fixed move/page bug when the button
	was released while the windows were being unmapped

	* fvwm/icons.c (AutoPlaceIcon): fixed icon palcement (Bug #319)
	(Iconify): fixed icon title raising bug

	* fvwm/events.c (HandleMapNotify): fixed focus policy (mouse focus)

	* fvwm/Makefile.am (fvwm2_SOURCES):
	* libs/vpacket.h:
	* fvwm/fvwm.h:
	* fvwm/window_flags.h: renamed gsfr.h

	* fvwm/add_window.c (AddWindow): fixed xterm w/ active icon

	* fvwm/events.c (HandlePropertyNotify): use IsWindowOnThisPage funtion

Sun May  2 09:39:37 1999  DanEspen  <dje@blue>

	* fvwm/ConfigFvwmDefaults: Alt-tab binding is now builtin.

Sat May  1 10:43:55 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/Makefile.am (fvwm2_SOURCES):
	* libs/Makefile.am (libfvwm_a_SOURCES):
	* fvwm/vpacket.h: moved to libs/vpacket.h, since this file is
	used only by modules.

	* libs/*: include Module.h rather than fvwm/module.h.
	* fvwm/*: include module_interface.h rather than module.h.

	* fvwm/Makefile.am (fvwm2_SOURCES):
	* fvwm/module.[ch]: renamed to module_interface.[ch], to avoid
 	confusion with libs/Module.[ch].

	* libs/Makefile.am (libfvwm_a_SOURCES):
	* libs/Module.h: new file.  Everything a module needs to know in
 	order to talk to FVWM.

Sat May  1 01:42:02 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/session.c (LoadGlobalState): fix scanf argument.  Removed
	unused variables.

1999-04-29  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/session.h:
	* fvwm/session.c (set_sm_properties):
	(save_session_state): new functions split off from save_yourself2.
	(RestartInSession): new function used to restart fvwm under SM.

	* fvwm/fvwm.c (Done): rework how restarting is done under SM. The
	new scheme should not leak files and should not introduce
	unwanted checkpoints.

	We do the following now:

	1) Change the current state in .fvwm_restart
           and add a pointer to the previous session save file
	   to .fvwm_restart.
	2) Change the SmRestartCommand and SmDiscardCommand
	   to refer to .fvwm_restart and change the SmRestartStyleHint
           to Immediately.
        3) Exit, the SM starts us again, restoring the current state
           from .fvwm_restart
        4) The new fvwm finds the pointer to the session save file
	   and changes the SM properties back to their previous values.

1999-04-29  Hippo

	* libs/ModGraph.{h,c}: new function (Graphics *)CreateGraphics(void);
	* libs/Picture.{h,c}: new function (void)SavePictureCMap.
	* fvwm/builtins.c: use XFlushGC before sending look to modules,
	removed subliminal advertisment
	* libs/ModGraph.{h,c}: changed DEFGRAPHSTR for FvwmButtons

1999-04-28  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/session.c (callback_save_yourself2): set the
	_GSM_Priority property used by the Gnome session manager.
	Use SmLISTofARRAY8 for SmDiscardCommand as the protocol demands
	on POSIX systems, but leave the old code using SmARRAY8 in as a
	hack for buggy xsm. Define XSM_BUGGY_DISCARD_COMMAND to use it.
	(SaveWindowStates): save res_name under [RES_NAME], not res_class.

	* fvwm/stack.c (LowerWindow):
	(RaiseWindow):
	* fvwm/screen.h (ScreenInfo): remove LastWindowRaised.

	* fvwm/stack.h:
	* fvwm/stack.c (CanBeRaised): new function to determine if
	a window can be raised any further.

	* fvwm/events.c (HandleButtonPress):
	* fvwm/builtins.c (raiselower_func): use CanBeRaised instead
	of LastWindowRaised to determine if a window should be raised.

1999-04-28  Hippo

	* libs/ModGraph.{h,c}: SetWindowBackground takes width/height of window

1999-04-28  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/module.c:
	* fvwm/move_resize.c:
	* fvwm/misc.c:
	* fvwm/menus.c:
	* fvwm/functions.c:
	* fvwm/fvwm.c:
	* fvwm/builtins.c: use events.h

	* fvwm/misc.h: moved prototypes to events.h
	* fvwm/events.h: new file

	* fvwm/misc.c (Keyboard_shortcuts): moved function from move_resize.c
	to misc.c

	* fvwm/builtins.c:
	* fvwm/add_window.c:
	* fvwm/functions.c:
	* fvwm/virtual.c:
	* fvwm/placement.c:
	* fvwm/events.c: include move_resize.h

	* fvwm/move_resize.c (InteractiveMove):
	* fvwm/move_resize.c (AnimatedMoveAnyWindow):
	* fvwm/move_resize.c (DisplayPosition):
	* fvwm/move_resize.c (DisplaySize): now static

	* fvwm/misc.h: moved all move/resize related prototypes to
	move_resize.h

	* fvwm/Makefile.am (fvwm2_SOURCES): add new files, remove old ones
	* fvwm/move_resize.h: new file for move_resize prototypes
	* fvwm/move_resize.c: merged move.c and resize.c into this file
	(resize_window): another try at resize-jump-to-border area

	* fvwm/misc.h: removed 'extern' from prototypes

	* fvwm/menus.c (menu_func): some work on repeat command for menus

	* fvwm/menus.c (MenuInteraction): removed #define MICRO_S_FOR_10MS
	(PaintEntry): function renamed to paint_menu_item

	* fvwm/move.c (AnimatedMoveAnyWindow): check for NULL pointer tmp_win
	(AnimatedMoveAnyWindow): speed up for short distances
	(AnimatedMoveAnyWindow): animated move can be aborted with a key or
	button press

	* fvwm/placement.c (PlaceAgain_func): fixed coredump

	* fvwm/placement.c (PlaceAgain_func):
	* fvwm/builtins.c (PlaceAgain_func): moved function to placement.c

	* fvwm/fvwm2.1: Removed previous patch (duplicate)

	* libs/Bindings.c (GrabWindowKey):
	(GrabWindowButton): don't grab buttons and keys multiple times

1999-04-28  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* acinclude.m4: add AM_PATH_GDK_IMLIB from imlib.m4.

	* configure.in: use AM_PATH_GDK_IMLIB to check for gdk-imlib.

	* acconfig.h: new define IMLIB to indicate the presence
	of gdk-imlib (for FvwmGtk).

1999-04-27  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1: Added hint at IgnoreModifiers default.

1999-04-27  Hippo

	* libs/ModGraph.{h,c}: Added GPL copyright, added SetWindowBackground()

Mon Apr 26 13:02:25 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/read.h: new file.
	* fvwm/read.c: split up ReadSubFunc() into smaller bits, removing
	a lot of hair.  Created two new public interfaces,
	run_command_stream() and run_command_file().

	* fvwm/fvwm.c (main): use run_command_file to read initialization
	file.

1999-04-26  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm.h: Make prototype for SigDone and Restart agree with
	functions in fvwm.c.

Mon Apr 26 09:45:19 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/ModGraph.c (ParseGraphics): change to void function, as
	none of the return statements return anything.  Remove unused
	variable `junk'.  Include stdio.h for sscanf() prototype.

	* libs/ModGraph.h: protect against multiple inclusion, correct
 	return type of ParseGraphics.

1999-04-26  Hippo

	* libs/ModGraph.{h,c}: new functions InitGraphics/ParseGraphics for
	modules to use to make sense of the Default_graphics config message
	* fvwm/modconf.c: uses ModGraph.h

Mon Apr 26 02:17:28 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: add check for getpwuid.

	* fvwm/module.c (executeModule): skip malloc & free by using
	CatString3.

	* libs/Strings.c (CatString3): dynamically allocate the buffer.
	Reformatted some code.

	* libs/envvar.h:
	* libs/Strings.h:
	* libs/Parse.h: new files.

	* libs/fvwmlib.h: include new headers; remove relevant prototypes.

	* libs/Parse.c (GetModuleResource): fix memory leak.

	* fvwm/read.c (ReadSubFunc):
	* fvwm/fvwm.c:
	* fvwm/fvwm.h: user_home_ptr -> user_home_dir.

	* fvwm/fvwm.c (main): removed unused `output_file' variable.  Try
 	a bit harder (use getpwuid) to find user_home_dir.

	* fvwm/fvwm.c (Done): save state into user_home_dir.

1999-04-25  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (AddWindow): update not only the _WIN_STATE,
	but also _WIN_WORKSPACE and _WIN_LAYER.

1999-04-24  Bob Woodside  <proteus@pcnet.com>
	* fvwm/Makefile.am: added stack.c & stack.h.

1999-04-24  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/virtual.c (changeDesks): update number of workspaces,
	since it may have changed.
	(do_move_window_to_desk): update number of workspaces,
	since it may have changed. Also update the workspace of the window.

	* fvwm/gnome.c (GNOME_GetStyle): new function to initialize
	a window_style struct from GNOME hints.
	(GNOME_SetDeskCount): find the maximal populated desk, then
	use to set the number of workspaces to a reasonable value.

	* fvwm/style.c (lookup_style): call GNOME_GetStyle to
	initialize the window_style.
	* fvwm/add_window.c (AddWindow): initialize do_shade,
	do_max to 0. Don't call GNOME_GetHints before unconditionally
	overwriting the flags. Instead rely on lookup_styles to take
	GNOME hints into account.
	* fvwm/session.c (MatchWinToSM): don't modify do_shade,
	do_max unless a match was found.


	* fvwm/builtins.c (stick_function):
	(WindowShade): update gnome hints.

	* fvwm/fvwm.h (common_flags_type): new flag is_fixed.
	* fvwm/gsfr.h: and corresponding macros.
	* fvwm/style.c (ProcessNewStyle): new style option
	VariablePosition/FixedPosition to set the new flag.
	* fvwm/gnome.c (GNOME_GetHintState):
	(GNOME_SetHints): also use the is_fixed flag.
	* fvwm/move.c (AnimatedMoveAnyWindow):
	(move_window_doit): refuse to move unless is_fixed is set.
	* fvwm/fvwm2.1:
	* NEWS: document the new style options.


	* fvwm/stack.c:
	* fvwm/stack.h: new files.
	* fvwm/events.c: move HandleUnusualStackmodes, its helper
	functions and ResyncFvwmStackRing to stack.c, include stack.h.
	* fvwm/misc.c: move RaiseWindow and LowerWindow to stack.c
	and BroadcastRestack to module.c.
	* fvwm/misc.h: remove RaiseWindow and LowerWindow.
	* fvwm/builtins.c: move new_layer to stack.c, include stack.h.
	* fvwm/add_window.c:
	* fvwm/focus.c:
	* fvwm/gnome.c:
	* fvwm/icons.c: include stack.h.

Fri Apr 23 17:32:45 1999  DanEspen  <dje@blue>

	* libs/Bindings.c (AddBinding): Only add one entry to the binding
	table when a key generates the exact same information with more than
	one modifier.

Fri Apr 23 14:26:26 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* NEWS: note that FVWM_CONFIGDIR is now $sysconfdir/fvwm.

Fri Apr 23 12:29:19 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/virtual.c:
	* fvwm/misc.c:
	* fvwm/events.c: include focus.h for prototypes.

	* fvwm/focus.c: include bindings.h for prototypes.

	* fvwm/events.c (HandleUnusualStackmodes): non-void functions must
 	actually return a value.

	* fvwm/focus.h (IsLastFocusSetByMouse): add prototype.  Also added
 	some missing documentation for other prototypes.

	* fvwm/module.c (BroadcastNewPacket):
	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/builtins.c (new_layer): removed unused variable.

1999-04-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1: fixed manpage bug (half a line lost)

	* fvwm/functions.c (ComplexFunction):
	(execute_complex_function):
	(ExecuteFunction): renamed ComplexFunction2 to execute_complex_function
	Don't expand the command line twice when calliing a complex function
	without the 'Function' builtin.

	* libs/Parse.c (DoPeekToken): fixed parsing empty tokens

1999-04-22  Dominik Vogt  <dominik_vogt@gmx.de>

	* configure.in: changed version to 2.3.2

1999-04-22  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/gnome.c (GNOME_SetLayer): new function for updating
	the layer hint.

1999-04-21  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/virtual.c (changeDesks): call GNOME_SetCurrentDesk.

	* fvwm/misc.h:
	* fvwm/builtins.c (new_layer): new function split off from
	change_layer to do the actual change.

	* fvwm/gnome.c (GNOME_ProcessClientMessage):
	implement the _WIN_LAYER client message with the new_layer
	function. Use the XA_ defines instead of strings.

1999-04-21  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleUnusualStackmodes): commented out two DBUG
	macros with too many arguments

1999-04-20  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/icons.c (CreateIconWindow): use GrabAllWindowKeysAndButtons

	* libs/fvwmlib.h:
	* libs/Bindings.c (GrabAllWindowKeysAndButtons):
	New convenience function (a bit faster if everything has to be grabbed)

1999-04-21  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/events.c (HandleConfigureRequest): rewrite the
	part dealing with stack_mode. Treat stack_modes != Above, Below by
	calling  HandleUnusualStackmodes. The X protocol semantics of the
	various stack_modes is more or less preserved with the exception
	that raising/lowering are restricted to stay within the layer.

	(HandleUnusualStackmodes): new function implementing TopIf,
	BottomIf and Opposite restacking.
	(intersect):
	(overlap_box):
	(overlap): auxiliary routines for occlusion detection in
	HandleUnusualStackmodes.

	* fvwm/fvwm.h (common_flags_type): new flag ignore_restack.
	* fvwm/gsfr.h (IGNORE_RESTACK): new macro to access it.
	* fvwm/style.c (ProcessNewStyle): set/reset ignore_restack
	with the new style options AllowRestack/IgnoreRestack.

	* fvwm/events.c (HandleConfigureRequest): ignore stack_mode
	if ingnore_restack is set.

	* NEWS:
	* fvwm/fvwm2.1: document AllowRestack/IgnoreRestack.

1999-04-21  Hippo

	* libs/Picture.{c,h},fvwm/{add_window,fvwm,icons,menus}.c: Partly
 	fixed -visual Truecolor with different depths, Client supplied
 	icon pixmaps look ugly and XorPixmap has no effect.

1999-04-20  Bob Woodside  <proteus@pcnet.com>

	* fvwm/AUTHORS: Who-to-blame entry for module GSFR.

1999-04-20  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/icons.c (DeIconify):
	* fvwm/focus.c (FocusOn):
	(flip_focus_func):
	(focus_func):
	(SetFocus):
	(DoSetFocus): Focus and FlipFocus commands take 'NoWarp' as parameter
	to prevent warping to the desk/page the window is on

1999-04-19  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/icons.c (AutoPlaceIcon):
	Use IsWindowOnThisPage. This fixes the problem that the icon may be on
	a different page even if you iconified something on the current page

	* fvwm/misc.h:
	* fvwm/builtins.c (Maximize):
	* fvwm/focus.c (SetFocus):
	* fvwm/misc.c (IsWindowOnThisPage):
	Implement and use service function IsWindowOnThisPage()

	* fvwm/events.c (HandleFocusIn):
	* fvwm/focus.c (IsLastFocusSetByMouse):
	replaced global variable lastFocusType by function
	IsLastFocusSetByMouse

	* fvwm/misc.h:
	* fvwm/builtins.c (flip_focus_func):
	(focus_func):
	(FocusOn):
	(warp_func):
	(WarpOn):
	moved focus related code and prototypes to focus.[ch]

	* fvwm/functions.c (ExecuteFunction): fixed coredump in SILENT

1999-04-18  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (FocusOn):
	* fvwm/events.c (HandleEnterNotify): use HAS_MOUSE_FOCUS and
	HAS_SLOPPY_FOCUS instead of !HAS_CLICK_FOCUS and !HAS_NEVER_FOCUS

1999-04-19  Bob Woodside  <proteus@pcnet.com>

	* fvwm/Makefile.am: Added vpacket.h.

1999-04-19  Hippo

	* fvwm/module.c,modconf.c Replaced M_NEW_LOOK packet with config line:
	Default_graphics

1999-04-19  Bob Woodside  <proteus@pcnet.com>

	* fvwm/module.c: New-style variable packet building logic for GSFR -
	used for the M_ADD_WINDOW/M_CONFIGURE_WINDOW packets.
	* fvwm/module.h: Ibid.

1999-04-19  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/icons.c (CreateIconWindow):
	(DrawIconWindow):
	* fvwm/misc.c (LowerWindow):
	(RaiseWindow): make sure icon windows are always restacked
	below their frame.

1999-04-18  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.h (window_flags): new flags is_icon_entered
	for tracking enter and leave events on iconified windows.
	* fvwm/gsfr.h (IS_ICON_ENTERED):
	(SET_ICON_ENTERED):
	(SETM_ICONIFIED_BY_PARENT): new macros to set is_icon_entered.
	* fvwm/icons.c (DrawIconWindow): change the logic of
	DrawIconWindow to show the full icon title and raise it iff
	the pointer is over the icon.
	* fvwm/events.c (HandleEnterNotify):
	(HandleLeaveNotify): maintain is_icon_entered and redraw the icon.
	* NEWS: mention the new icon behaviour.

1999-04-18  Bob Woodside  <proteus@pcnet.com>

	* fvwm/vpacket.h: new file - this should contain structure descriptions
	for any new-style module packets (post-GSFR) using the new, variable-
	length argument packet sending logic. Initially it only contains the new
	M_CONFIGURE_WINDOW/M_ADD_WINDOW packet.

	* fvwm/virtual.c: changeDesks: fixed segfault caused by use of a NULL
	FocusWin pointer.

1999-04-18  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (Done): removed debugging code

	* fvwm/builtins.c (MatchesConditionMask):
	* fvwm/fvwm.h:
	* fvwm/gsfr.h:
	renamed gsfr_flag_mask to flag_mask

	* fvwm/session.c:
	* fvwm/module.c:
	* fvwm/fvwm.h:
	* fvwm/gsfr.h:
	* fvwm/builtins.c (MatchesConditionMask):
	* fvwm/add_window.c (AddWindow):
	renamed gsfr_flags to flags

	* fvwm/windowlist.c:
	* fvwm/windows.c:
 	renamed file windows.c to windowlist.c

1999-04-18  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/icons.c (DrawIconWindow): implement CDE-like raising
	of the titles of focused icons.

1999-04-17  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/screen.h (ScreenInfo): new member for go struct:
	RaiseHackNeeded.

	* fvwm/fvwm.c (InitVariables): initialize Scr.go.RaiseHackNeeded
	based on the ServerVendor string.

	* fvwm/misc.c (RaiseWindow): use the hack for raising over
	NT windows if Scr.go.RaiseHackNeeded is set.

	* fvwm/builtins.c (SetGlobalOptions): allow to set
	Scr.go.RaiseHackNeeded with the global options
	RaiseOverNativeWindows/IgnoreNativeWindows.

	* fvwm/fvwm2.1: Document the new global options
	RaiseOverNativeWindows/IgnoreNativeWindows.

	* fvwm/fvwm.c:
	* fvwm/builtins.c:
	* fvwm/events.c:
	* fvwm/screen.h: remove NON_VIRTUAL.

	* fvwm/virtual.c (HandlePaging): ensure that HandlePaging
	doesn't return false unless it really did change the viewport,
	ie called MoveViewPort with nonzero delta_x, delta_y. The
	previous logic could also return true if the pointer stayed
	long enough on a pan frame where paging is not possible.

Sat Apr 17 13:55:41 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/module.c (SETOLDFLAGS): fixed several dozen "statements
 	with no effect".

	* fvwm/functions.c (ExecuteFunction): removed unused variable, add
 	parentheses in `if' condition

1999-04-17  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/resize.c (resize_window): fixed resize-loosing-grip bug

	* fvwm/functions.c (func_config):
	* fvwm/functions.h (FunctionItem):
	(struct functions):
 	added FUNC_DONT_REPEAT flag to functions structure, changed Bool
	f_needs_window/func_needs_window to unsigned char flags

	* fvwm/parse.h (enum): added F_UNDEFINED define needed by repeat
	function

1999-04-17  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/screen.h (TOP_EDGE):
	(RIGHT_EDGE):
	(BOTTOM_EDGE):
	(LEFT_EDGE): separate cursor types for the pan frames.

	* fvwm/fvwm.c (CreateCursors): initialize the _EDGE cursors
	to be the same as the non-_EDGE ones.

	* fvwm/virtual.c (initPanFrames): use the _EDGE cursors.

	* fvwm/builtins.c (CursorStyle): allow to change the _EDGE cursors.

	* fvwm/fvwm2.1:
	* NEWS: document the new cursors.

1999-04-16  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm2.1: expanded the introductory remarks on layers,
	documented StaysOnBottom, more detailed explanation of the
	override behaviour of Icon.

	* fvwm/windows.c (do_windowList):
	* fvwm/style.c (ProcessNewStyle):
	* fvwm/fvwm.c:
	* fvwm/screen.h (ScreenInfo): renamed OnTopLayer -->
	TopLayer, StaysPutLayer --> DefaultLayer, new variable
	BottomLayer.

	* fvwm/builtins.c (SetDefaultLayers): set all three
	layer variables in the Scr struct.

	* fvwm/style.c (ProcessNewStyle): added style option
	StaysOnBottom.

1999-04-16  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (menuShortcuts): Page up and page down work like
	shift-up and shift-down in menus, i.e. they jump to the start or end of
	the menu
	(menuShortcuts): fixed up/down when pressed with the pointer outside
	the menu

	* fvwm/repeat.c (set_repeat_data): removed fprintfs

	* fvwm/functions.c (DeferExecution): allow to abot DeferExecution with
	Escape key
	(ComplexFunction2): fixed use_depth
	(func_comp): removed temporary variables to speed things up a bit
	(FindBuiltinFunction): added check for " +" which is fell through the
	check for "+". This should save quite a bit of time with configs that
	indent the '+' command with a space.
	(FindBuiltinFunction): removed calculation of func_config table size
	this is a constant that can be determined at compile time. No need to
	store it in a static.
	(FindBuiltinFunction):
	(func_config): changed function table entries to lower case. Since most
	letters in config files are lower case anyway this saves some CPU
	cycles.
	(DeferExecution): ungrab cursor too when pressing escape

	* fvwm/repeat.c (update_last_string): function replaced with new
	function set_repeat_data

1999-04-15  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/ConfigFvwmSetup:
	* fvwm/ConfigFvwmDefaults:
	removed unnecessary duoble quotes

1999-04-16  Hippo

	* fvwm/module.{h,c}: Removed M_NEW_LOOK, will be a text config line
	* fvwm/module.h: Fixed macro MAX_MESSAGE to allow 32 message types
	* fvwm/module.h: renamed M_ADD_WINDOW to M_OLD_ADD_WINDOW, renamed
	M_CONFIGURE_WINDOW to M_OLD_CONFIGURE_WINDOW.
	* fvwm/module.h: added new messages M_ADD_WINDOW & M_CONFIGURE_WINDOW.
	* fvwm/module.c: (SendConfig/BroadcastConfig) send out old and new
	versions of packets to allow old modules to get the right flags.

Thu Apr 15 10:50:17 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/virtual.c (scroll): removed unused variable.

	* fvwm/add_window.c (GetWindowSizeHints): add parentheses to fix
 	&& vs. || precedence problems.

1999-04-15  Hippo

	* docs/FAQ: added stuff about start-up delays
	* fvwm/fvwm.c,modules.c: Changed startup processing to only count
	command line modules.

1999-04-15  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/add_window.c: fix for broken size hints

	* fvwm/style.c (ProcessNewStyle):
	* fvwm/fvwm.h:
	* fvwm/resize.c (ConstrainSize):
	* fvwm/style.h:
	* fvwm/gsfr.h:
	implemented (No)ResizeHintOverride style as a hack to make broken
	applications happy

	* fvwm/events.c (HandleButtonPress): clicktofocusclickraises raises
	neverfocus windows too

1999-04-14  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1:
	* fvwm/focus.c (SetFocus):
	* fvwm/events.c (HandleMapRequestKeepRaised):
	(HandleMapNotify):
	(HandleUnmapNotify):
	(HandleButtonPress):
	* fvwm/virtual.c (changeDesks):
	* fvwm/builtins.c (FocusOn):
	* fvwm/style.c (ProcessNewStyle):
	* fvwm/gsfr.h (HAS_NEVER_FOCUS):
	* fvwm/fvwm.h (FOCUS_NEVER):
	Implemented NeverFocus style

	* fvwm/repeat.c (update_last_string): fixed memory leak

	* fvwm/functions.c (ExecuteFunction): fixed memory leak

	* fvwm/builtins.c (ReadButtonFace): fixed buffer overflow in scanf

	* fvwm/fvwm.c (main): moved call to getenv into if statement to make
	insure++ happy

	* fvwm/windows.c (do_windowList): fixed format of sprintfs: expected
	long but got unsigned long

	* fvwm/virtual.c (scroll): fixed parsing of less than 2 parameters that
	caused an UMR.

	* fvwm/session.c (SaveWindowStates): fixed illegal parameter to fprintf
	(int expected but got unsigned char).

	* fvwm/placement.c (PlaceWindow): removed superfluous ';'

	* fvwm/misc.c (BroadcastRestack): reindented empty loop body for
	clarity

	* fvwm/menus.c (MenuInteraction): reindented empty loop body for
	clarity
	(destroy_menu): removed unused variable 'rest'

	* fvwm/icccm2.c (SetupICCCM2): fixed sign of printf string

	* fvwm/misc.h:
	* fvwm/misc.c (ReapChildren): made function from macro

	* fvwm/builtins.c (FocusOn): removed unused variables x and y
	(FocusOn): removed obsolete code
	(add_item_to_decor): reindented empty loop body for clarity

	* fvwm/misc.h:
	* fvwm/misc.c (NewFontAndColor): made function from macro

	* fvwm/borders.c (get_button_state):
	(change_window_color): made functions from macros

	* libs/Module.c (SendText): int len -> unsigned int len

1999-04-14  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/misc.h:
	* fvwm/parse.h:
	* fvwm/builtins.c (SetDefaultIcon):
	* fvwm/functions.c (func_config): Add DefaultIcon command.

	* fvwm/style.c (ProcessNewStyle): Change Icon style option
	to reset icon_name, if used without argument. Remove hack
	for  Style * Icon foo; issue a warning about this.

1999-04-13  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/events.c (HandlePropertyNotify): Make sure disabling
	an active icon restores the default icon.

Tue Apr 13 23:13:24 1999  DanEspen  <dje@blue>

	* fvwm/fvwm.c (main): Read command just $HOME or $FVWM_USERHOME.

	* fvwm/read.c (ReadSubFunc): Read command just $HOME or $FVWM_USERHOME.

	* fvwm/fvwm2.1 (sub-menu): Read command just $HOME or $FVWM_USERHOME.

1999-04-13  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm2.1 (Examples): fix description of IconFill default
	direction.

1999-04-13  Hippo

	* fvwm/fvwm{.c,2.1}: implemented -visual and -visualId options.
	* fvwm/builtins.c: Colorlimit ignored on static colormaps.

1999-04-12  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/style.c (ProcessNewStyle): has_icon: set not only the
	mask, but also the flag itself. Icons reappear.

	* fvwm/events.c (HandlePropertyNotify): Replace was_urgent
	variable by old_wmhints_flags. Make sure that clients can
	reset their hints to `no icon' (toggling `Enable Active Icon'
	in xterm works now).

1999-04-12  Hippo

	* fvwm/fvwm.{h,c}: removed unused Scr.CornerWidth
	* fvwm/module.{h,c}: New functions SendLook(module) & BroadcastLook()
	* fvwm/builtins.c: BroadcastLook() from Xor{Value,Pixmap} and
	Default{Colors,Font}.

1999-04-12  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (SetRCDefaults): removed unnecessary quoting of stlye *

	* fvwm/style.c (ProcessNewStyle): fixed minor parsing bug (no error
	messages created)

	* fvwm/NEWS:
	* fvwm/fvwm2.1:
	* fvwm/fvwm.c (SetRCDefaults):
	* fvwm/events.c (HandleMapRequestKeepRaised):
	(HandleMapNotify):
	(HandleUnmapNotify):
	* fvwm/style.c (ProcessNewStyle):
	* fvwm/style.h (SDO_GRAB_FOCUS_TRANSIENT):
	* fvwm/fvwm.h:
	* fvwm/gsfr.h (DO_GRAB_FOCUS):
	Implemented new style 'GrabFocusTransient'

	* fvwm/fvwm.h: removed old flag defines

1999-04-11  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/events.c (HandleUnmapNotify): Replace one return path
	with an else, to make sure the GNOME hook at the end is executed
	for both return paths.
	Call CoerceEnterNotifyOnCurrentWindow if the window being unmapped
	has the focus and uses GrabFocus.

Sun Apr 11 09:43:09 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in (FVWM_CONFIGDIR): set to ${sysconfdir}/fvwm,
	as multiple config files are now installed.

1999-04-11  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/add_window.c (AddWindow): initialise tmp_win when malloc'd

	* fvwm/style.c: fixed IconFill style

1999-04-11  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (AddWindow): Make sure tmp_win->icon_name
	gets initialized before being used.

Sat Apr 10 12:15:23 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/session.c (LoadWindowStates): corrected `unsigned int
	format, different type arg (arg 3)' error in loading flags.

1999-04-10  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/gsfr.h (SET_FOCUS_MODE):
	(SETM_FOCUS_MODE): don't use !! for non-booleans.

	* fvwm/session.c (LoadWindowStates):
	(SaveWindowStates): fix loading and saving of window flags.

1999-04-09  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Parse.c (GetNextSimpleOption):
	(GetNextFullOption): replaced GetNextOption with these two functions
	the latter one returns multiple tokens up to the next ',' while the
	first one only reads a single token

	* fvwm/gnome.c (GNOME_SetDeskNames): removed unused variable i

	* fvwm/style.c:
	(ProcessNewStyle): Rewrote parsing to get rid of those horrible macros.
	This saves 3696 bytes in the executable (gcc, i686). Macros with more
	than a single command should be forbidden!!!

	* fvwm/fvwm.h:
	* fvwm/misc.h:
	* fvwm/builtins.c:
	* fvwm/icons.c:
	* fvwm/icons.h:
	moved icon related code and definitions to icons.[ch]

	* fvwm/events.c:
	* fvwm/virtual.c:
	* fvwm/icons.c (AutoPlace): renamed to AutoPlaceIcon

	* fvwm/icons.h: new file

	* libs/**.[ch]:
	* fvwm/**.[ch]:
	added GPL copyright notice

	* fvwm/style.c (add_style_to_list): some speedup when using many
	styles

	* fvwm/add_window.c (AddWindow): replaced calloc with safemalloc

	* fvwm/style.c: reformatted comments

	* fvwm/gsfr.h (SET_ICON_OURS):
	* fvwm/style.c (ProcessNewStyle):
	fixed missing icons

	* fvwm/decorations.c (SelectDecor): fixed MWM_FUNCCTIONS (maximize and
	minimize)

	* fvwm/fvwm.h (style_flags):
	* fvwm/style.c (ProcessNewStyle):
	(merge_styles):
	* fvwm/style.h (SUSE_NO_PPOSITION): removed unused flags use_layer

	* fvwm/add_window.c (AddWindow): use macros from style.h

	* fvwm/style.c (ProcessNewStyle):
	(merge_styles):
	* fvwm/style.h:
	* fvwm/fvwm.h (style_flags): removed unused flag
	use_start_raised_lowered

	* fvwm/placement.c (PlaceWindow):
	* fvwm/fvwm.h:
	* fvwm/gsfr.h (DO_NOT_SHOW_ON_MAP):
	logic of show_on_map was reversed

	* fvwm/style.c (ProcessNewStyle): removed duplicate code

Thu Apr  8 23:45:05 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/Makefile.am (fvwm2_SOURCES): include gnome.c
	unconditionally, otherwise it doesn't make it to the distribution;
	it is suitably ifdef'd for compiling without GNOME enabled.

	* fvwm/session.c (LoadWindowStates): fixed a scanf reading
	unsigned int into a char*.

	* fvwm/session.c (SaveWindowStates): removed unused parameter to
	fprintf().

	* fvwm/style.c (cmp_masked_flags): add parentheses around
	comparison in operand of &

1999-04-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* libs/Bindings.c:
	* fvwm/bindings.c (ParseBinding):
	function moved back to fvwm directory

	* fvwm/builtins.c (change_layer): modified the syntax of the 'Layer'
	command. 'Layer 0 -1' should no longer be used. Use 'Layer default' or
	simply 'Layer' instead.

	* fvwm/gnome.c:
	* fvwm/virtual.c:
	* fvwm/session.c:
	* fvwm/resize.c:
	* fvwm/placement.c:
	* fvwm/move.c:
	* fvwm/module.c:
	* fvwm/misc.c:
	* fvwm/menus.c:
	* fvwm/icons.c:
	* fvwm/fvwm.c:
	* fvwm/focus.c:
	* fvwm/events.c:
	* fvwm/decorations.c:
	* fvwm/builtins.c:
	* fvwm/borders.c:
	* fvwm/add_window.c:
	* fvwm/style.h:
	* fvwm/style.c:
	main GSFR work done

	* fvwm/misc.h:
	* fvwm/style.h:
	* fvwm/fvwm.h: activated GSFR defines

	* ------ begin of great-style-flag-rewrite ------

	* fvwm/style.c: reversed weird logic of off_flags meaning 'flag has
	been turned on'

	* fvwm/repeat.h:
	* fvwm/repeat.c:
	* fvwm/gsfr.h:
	* libs/XResource.c:
	* libs/Bindings.c:
	* fvwm/functions.h:
	* fvwm/bindings.h:
	* fvwm/style.h:
	* fvwm/bindings.c:
	* COPYING: changed to GPL

1999-04-08  Hippo

	* fvwm/add_window.c: code cleanup, removed most events from ->parent
	* fvwm/fvwm.c: sticky_grey_pixmap initialised for mono screens

1999-04-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/functions.c:
	* fvwm/builtins.c: include style.h

	* fvwm/fvwm.c (InitVariables): removed initialisation of TheList

	* fvwm/style.c:
	* fvwm/screen.h (ScreenInfo): moved TheList to style.c (not a global
	any longer)

	* fvwm/Makefile.am (fvwm2_SOURCES): added style.h

	* fvwm/style.h (name_list_struct):
	* fvwm/style.c (LookInList):
	(merge_styles):
	moved stuff from add_window.c/misc.h to style.[ch] where it belongs.

	* fvwm/styles.h: new file

	* fvwm/functions.c (expand): fixed parsing of empty arguments

1999-04-07  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* acconfig.h:
	* INSTALL.fvwm: Finish the removal of the NO_SAVEUNDERS and
	WINDOWSHADE configure options.

1999-04-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/functions.c (expand): some clean up

	* fvwm/Makefile.am (fvwm2_SOURCES): added gsfr.h

	* configure.in: changed version to 2.3.1

	* fvwm/repeat.h:
	* fvwm/repeat.c:
	* fvwm/functions.c:
	* fvwm/functions.h:
	moved all code for Repeat command to repeat.c and repeat.h

	* fvwm/Makefile.am (fvwm2_SOURCES): added bindings.h, repeat.c,
	repeat.h

1999-04-06  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (CaptureAllWindows):
	(CaptureOneWindow):
	fixed coredump

	* fvwm/icons.c:
	* fvwm/functions.c:
	* fvwm/focus.c:
	* fvwm/events.c:
	* fvwm/bindings.c:
	* fvwm/add_window.c:
	use bindings.h

	* fvwm/misc.h: moved prototypes for bindings.c to bindings.h
	* fvwm/bindings.h: new file

	* fvwm/fvwm2.1 (RecaptureWindow):
	* fvwm/misc.h:
	* fvwm/parse.h:
	* fvwm/functions.c (func_config):
	* fvwm/builtins.c (do_recapture):
	(Recapture):
	(RecaptureWindow):
	made 'window' option of recapture a new command 'RecaptureWindow' for
	sake of consistency with RefreshWindow

	* fvwm/functions.c (expand): some speedup

	* fvwm/functions.h:
	* fvwm/functions.c (ComplexFunction2):
	(ComplexFunction2):
	made functions static

	* fvwm/misc.h:
	* fvwm/screen.h:
	moved typedef of last_added_item_type to misc.h

	* fvwm/windows.c (do_windowList):
	* fvwm/read.c (ReadSubFunc):
	(ReadFile):
	(PipeRead):
	* fvwm/module.c (HandleModuleInput):
	* fvwm/menus.c (menu_func):
	(do_menu):
	* fvwm/fvwm.c (main):
	(StartupStuff):
	(SetRCDefaults):
	(Done):
	* fvwm/functions.c (repeat_function):
	(ComplexFunction2):
	* fvwm/events.c (HandleKeyPress):
	(HandlePropertyNotify):
	(HandleClientMessage):
	(HandleButtonPress):
	* fvwm/builtins.c (AddToDecor):
	(DestroyDecor):
	(PrevFunc):
	(NextFunc):
	(NoneFunc):
	(CurrentFunc):
	(AllFunc):
	(DirectionFunc):
	(PickFunc):
	(WindowIdFunc):
	use new parameter to ExecuteFunction
	* fvwm/functions.c (ExecuteFunction):
	additional input parameter: expand_cmd (suppress expanding '$...' on
	the command line).

	* fvwm/functions.h:
	* fvwm/misc.h:
	moved function prototypes for functions.c into functions.h

	* fvwm/functions.h: removed ONE_AND_A_HALF_CLICKS (unused)

1999-04-05  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/{colormaps.c,events.c,fvwm.c,gnome.c,icccm2.c,misc.c,misc.h,module.c,module.h,session.c,virtual.c}:
	Misc function prototype fixes to make MIPSpro cc -fullwarn happy.

1999-04-05  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/borders.c: #endif FOO -> #endif /* FOO */
	* fvwm/screen.h, fvwm/misc.h: Moved the last_added_item_type from
	screen.h to misc.h since that's where it's mostly used, and because
	misc.h is included in most .c files, but screen.h is not.
	* fvwm/menus.h: Changed 2 bitfields to use unsigned instead of unsigned
	char, now it compiles with xlc (AIX).

1999-04-05  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.h: moved prototype of set_last_added_item out of GNOME
	define

	* fvwm/builtins.c (destroy_fvwmfunc): fixed bug: '=' -> '=='

	* fvwm/menus.h: added prototypes for add_another_menu_item and
	SetMenuCursor

	* fvwm/fvwm.c (CaptureAllWindows): removed unused variable

1999-04-04  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (stick_function): fixed 'Stick'

1999-04-05  Tomas Ogren  <stric@ing.umu.se>

	* libs/fvwmlib.h: Be gone evil // comments in c-code

Sun Apr  4 10:53:17 1999  DanEspen  <dje@blue>

	* fvwm/FormFvwmHelp.in: New form, creates users starting configuration.

	* fvwm/fvwm2.1 (read): Explain new read logic, and config file
	creation.

	* fvwm/module.c (executeModule): Export FVWM_USERHOME to modules.

	* fvwm/read.c (ReadSubFunc): New logic to read either from $HOME, using
	a leading dot, or the users config dir without the dot, or the config
	dir without the dot.

	* fvwm/fvwm.h: New extern, user_home_ptr.

	* fvwm/fvwm.c (SetRCDefaults): Add "read <configdir>ConfigFvwmDefaults"
	to builtin command table.  If "FVWM_USERHOME" not already exported,
	FVWM_USERHOME is ".fvwm/" or "." depending on existence.
	Export environment variable "FVWM_USERHOME" to modules only.

	* fvwm/ConfigFvwmDefaults: Fvwm2 builtins in addition to the table
	built in to fvwm.c.

	* fvwm/ConfigFvwmSetup: Skeleton of a new users configuration.

	* fvwm/Makefile.am (config_DATA): Added FvwmDefaults (additions
	to the builtin table, FvwmSetup (based on system.fvwm2rc).

1999-04-04  Dominik Vogt  <dominik_vogt@gmx.de>

	* ------ end of my changes to move all menu code to menus.c  ------

	* fvwm/menus.h (MenuGlobals): strunct merged into MenuInfo

	* fvwm/fvwm.c (InitVariables): use new MenuInfo struct

	* fvwm/menus.h: moved menu specific stuff from ScreenInfo struct to new
	MenuInfo struct

	* fvwm/screen.h:
	* fvwm/virtual.c:
	* fvwm/style.c:
	* fvwm/read.c:
	* fvwm/placement.c:
	* fvwm/move.c:
	* fvwm/module.c:
	* fvwm/modconf.c:
	* fvwm/icccm2.c:
	* fvwm/fvwm.c:
	* fvwm/events.c:
	* fvwm/focus.c:
	* fvwm/decorations.c:
	* fvwm/colors.c:
	removed '#include "menus.h"'

	* fvwm/misc.h (F_CMD_ARGS): moved macro to fvwm.h so that misc.h does
	not have to be included

	* fvwm/misc.c (GetOneMenuPositionArgument):
	(GetMenuOptions): moved to menus.c

	* fvwm/misc.h: moved all menu related stuff to menus.h

	* fvwm/builtins.c (add_another_item): use new function
	add_another_menu_item

	* fvwm/menus.c (add_another_menu_item): new function

	* fvwm/misc.h:
	* fvwm/misc.c (set_last_added_item): new function

	* fvwm/fvwm.c (InitVariables):
	* fvwm/screen.h (ScreenInfo):

	* fvwm/menus.c (SetMenuCursor): (new function)

	* fvwm/builtins.c (CursorStyle):
	* fvwm/builtins.c (ApplyDefaultFontAndColors):
	moved menu functionality to menus.c

	* fvwm/builtins.c (ChangeMenuStyle):
	(SetMenuStyle):
	(OldMenuStyle):
	(NewMenuStyle):
	(GetMenuStyleIndex):
	(UpdateMenuStyle):
	(DestroyMenuStyle):
	(FreeMenuStyle):
	(FindMenuStyle):
	(menu_func):
	(popup_func):
	(staysup_func):
	(ReadMenuFace):
	(FreeMenuFace):
	(destroy_menu):
	(add_item_to_menu):
	moved to menus.c

	* ------ begin of my changes to move all menu code to menus.c  ------

	* fvwm/builtins.c (Recapture): "window" option allows to recapture a
	single window

	* fvwm/fvwm.c (CaptureAllWindows):
	(CaptureOneWindow): Moved code to recapture a single window into
	separate function

	* fvwm/resize.c (resize_window): enlarged warp area in windows to 1/7
	of windows's size

	* vms/config.h:
	* configure.in:
	* fvwm/menus.c (MakeMenu): removed SAVEUNDERS option

	* vms/config.h:
	* configure.in: removed windowshade option

	* fvwm/session.c: reindented file

	* fvwm/session.c:
	* fvwm/resize.c (resize_window):
	(ConstrainSize):
	* fvwm/move.c (AnimatedMoveAnyWindow):
	(moveLoop):
	* fvwm/misc.h:
	* fvwm/gnome.c (GNOME_GetHintState):
	(GNOME_SetHints):
	* fvwm/fvwm.h:
	* fvwm/functions.c (func_config):
	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/builtins.c:
	(Maximize):
	(WindowShade):
	(setShadeAnim):
	* fvwm/add_window.c (AddWindow):
	* fvwm/borders.c (SetBorder):
	(SetupFrame):
	removed ifdefs for WINDOWSHADE

1999-04-03  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (main): moved DBUG message to correct place

	* fvwm/fvwm2.1 (Desk): renamed command to 'GotoDesk'. Old name is still
	supported.

	* fvwm/misc.h: add new functions, sorted virtual.c entries

	* fvwm/builtins.c (stick_function): use do_move_window_to_desk to fix
	'Stick' function with desk numbers (bug #274)

	* fvwm/virtual.c (do_move_window_to_desk):
	(move_window_to_desk): move some code to do_... function

	* fvwm/functions.c (func_config): GotoDesk is a synonym for Desk

	* fvwm/parse.h:
	* fvwm/functions.c (func_config):
	* fvwm/virtual.c (changeWindowsDesk): renamed obsolete function to new
	command name 'move_window_to_desk'

Sun Apr  4 11:07:53 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* utils/xselection.c (paste_primary): removed unused variable.

Sun Apr  4 04:04:06 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/Makefile.am (fvwm2_SOURCES): add `session.h'
	* fvwm/session.h: new file for exports from session.c.
	* fvwm/fvwm.c: include session.h.

1999-04-04  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c (Done): use the session management functions
	to save state to $HOME/.fvwm_restart and add
	"-restore $HOME/.fvwm_restart" to the command exec'd for
	'Restart fvwm2'.

	* fvwm/session.c: reorganized a bit to put only the functions
	in #ifdef SESSION ... #endif which actually depend on SMlib.h.
	(SaveWindowStates): Save window id.
	(LoadWindowStates): Store saved window id in Match struct.
	(matchWin): If Restarting is true, match by window id.

	* fvwm/fvwm.c:
	* fvwm/fvwm.h:
	* fvwm/add_window.c:
	* fvwm/misc.h: Remove #ifdef SESSION ... #endif protection
	around calls to functions which are now compiled unconditionally.

	* NEWS:
	* fvwm/fvwm2.1: document the new Restart functionality.

Sat Apr  3 14:12:26 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Parse.c (SkipNTokens): removed unused variable.

	* fvwm/functions.c: removed unused variables.

	* fvwm/menus.c: removed unused variables, initialized variable
	`newItem'.

Sat Apr  3 02:06:01 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Parse.c (XCmpToken): add function from ModParse.c

	* libs/fvwmlib.h: add macro FindToken from ModParse.h

	* libs/Makefile.am (libfvwm_a_SOURCES): removed ModParse.c and
	ModParse.h.

	* libs/Parse.c (GetNextOption): treat comma as a `delimiter',
	rather than a `space'.

1999-04-02  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandlePropertyNotify): merged duplicate if statement

	* fvwm/icons.c (DrawIconWindow): closed unterminated comment

	* fvwm/add_window.c (AddWindow): temporary fix for sides/corners

1999-04-01  Andrew T. Veliath  <andrewtv@usa.net>

	* fvwm/functions.c (func_config): Make GNOMEButton uppercase.

1999-04-02  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* configure.in:
	* acconfig.h:
	* fvwm/misc.c (RaiseWindow): Remove EXCEED_HACK, always compile
	the hack.

1999-04-01  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/resize.c (resize_window): experimental patch: warp pointer to
	the sides/corners when pressed near the edge (within 20 pixels)

	* fvwm/events.c (HandleButtonPress): clicktofocusdoesntpassclick works
	with no-input windows now

	* fvwm/builtins.c (Maximize): consider desk number when checking if
	window is on current page

1999-04-01  Andrew T. Veliath  <andrewtv@usa.net>

	* fvwm/builtins.c (SetDeskSize): Call GNOME_SetAreaCount.

	* fvwm/misc.h: Add proto for GNOME_SetAreaCount.

	* fvwm/Makefile.am (GNOME): If GNOME hints disabled, avoid
	compilation of gnome.c.

	* configure.in: Turn --enable-gnome into an smr_SWITCH macro and
	use an AM_CONDITIONAL.

1999-04-01  Hippo

	* fvwm/*: #define PICK_TRUECOLOR and fvwm will use a truecolor visual
	rather than the default.

Wed Mar 31 20:32:27 1999  Steve ROBBINS  <stever@bottom.bic.mni.mcgill.ca (Steve ROBBINS)>

	* fvwm/menus.c (menuShortcuts): removed C++-style comment.

	* acconfig.h (alloca stuff): moved to @BOTTOM@ section, because it
	depends on the definition of HAVE_ALLOCA_H.  Also removed the
	ifndef _GNUC_; nobody knows why we can't include <alloca.h> when
	compiling with gcc.  On the contrary, this file provides a
	prototype for alloca() which is a good thing.

1999-04-01  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/move.c (moveLoop): Fixed typo: window_being_moved ->
	window_being_moved_opaque

1999-04-01  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleButtonPress): any modifier works with
	ClickToFocus

	* fvwm/menus.c (menuShortcuts): fixed coredump in multiple hotkeys and
	fixed problem with exactly two identical hotkeys where one was the
	first or last item of the menu

1999-03-31  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1 (ButtonStyle): documented MWMDecorShade

	* fvwm/decorations.c (SelectDecor):
	* fvwm/borders.c (DrawButton):
	* fvwm/screen.h: added a MWMDecorShade button style (looks like max but
	is shown when the mwm hints would show a minimize button)

	* fvwm/builtins.c (Maximize): Unmaximizing a window on the current page
	always maps the window on the current page.
	(ButtonStyle):

	* fvwm/virtual.c (MoveViewport):
	* fvwm/fvwm.h (FvwmWindow):
	* fvwm/move.c (moveLoop): fixed window moving with the outline over
	page borders.

1999-03-31  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.h:
	* fvwm/icccm2.c (SetupICCCM2): add parameter replace_wm.
	Don't replace running wm unless replace_wm is nonzero.

	* fvwm/fvwm.c (main): call SetupICCCM2 with a boolean parameter
	which is set if the command line argument "-replace" is given.

	* fvwm/fvwm.c (usage): add -replace, -clientId and -restore.

	* NEWS:
	* fvwm/fvwm2.1 (ICCCM COMPLIANCE):
	* fvwm/fvwm2.1 (OPTIONS): document -replace and possible problems.

	* fvwm/move.c (moveLoop): only set window_being_moved for
	opaque moves, since setting it for rubberband moves makes
	the window behave like a sticky window.

	* fvwm/virtual.c (MoveViewport): fix a typo: there was a

1999-03-31  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.h:
	* fvwm/decorations.c (check_allowed_function):
	(check_allowed_function2): removed

	* fvwm/builtins.c (Maximize):
	(iconify_function):
	(destroy_function):
	(delete_function):
	(close_function): use check_if_function_allowed

	* fvwm/decorations.c (check_if_function_allowed): modified function to
	make it independent of menu code

	* fvwm/menus.c (PaintEntry): fixed hilighting greyed out items

	* libs/Bindings.c (ParseBinding): fixed uninitialised memory reads

	* fvwm/functions.c (update_last_string): fixed freeing unallocated
	memory

1999-03-31  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/Makefile.am (fvwm2_SOURCES): gnome.c listed twice.

1999-03-30  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/functions.c: sorted functions

	* fvwm/parse.h:
	* fvwm/functions.c (func_config):
	(repeat_function): new 'Repeat' function

	* fvwm/builtins.c (Maximize):
	* libs/Parse.c (PeekToken): changed PeekToken function to return token
	and set new string pointer via parameters
	(SkipNTokens):
	(CheckNTokens):

	* fvwm/functions.c (DeferExecution):
	(ExecuteFunction): added some debugging code to force a coredump if
	tmp_win is accessed in functions that don't use DeferExecution (which
	is illegal: if they need a window they have to make sure they got one).
	(expand): added 'noexpand' command prefix

	* fvwm/functions.c (DeferExecution): Check *tmp_win for non-NULL
	instead of tmp_win. Caused a coredump.

Tue Mar 30 20:54:15 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/menus.c (menuShortcuts): bugfix `if ( countHotkey = 1 )'
	--> `if ( countHotkey == 1 )'.

	* fvwm/fvwm.c (main): exit after processing -version option.  Make
	`vizinfo' conditional on PICK_TRUECOLOR.
	* fvwm/fvwm.c (usage): call exit().

1999-03-31  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/virtual.c (MoveViewport): fix a typo: there was a
	reference to t left in the t1-part of the double loop. This
	caused strange behaviour when moving across page boundaries.

1999-03-30  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/gnome.c: Missing file from the Gnome patch...
	* fvwm/Makefile.am: Added gnome.c

1999-03-30  Dominik Vogt  <dominik_vogt@gmx.de>

	**/*: applied Gnome patch by Jay Painter

1999-02-07 Michael Han <mikehan@best.com>

	* fvwm/menus.c (menuShortcuts): Changed the hotkey handler from a flat
	once-over the menu to a "smarter" search that locates the next match
	and distinguishes between unique and non-unique hotkeys, doing a
	MENU_NEWITEM selection for non-uniques and retaining existing behavior
	for unique hotkeys.
	(AddToMenu): Commented out checks to prevent binding of duplicate
	hotkeys for what I think are obvious reasons.
	(FHotKeyUsedBefore): Noted that this function is now

1999-03-30  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (AddToMenu):
	(MakeMenu):
	(menuShortcuts): applied multiple menu hotkey patch by Mike Han

	* libs/Bindings.c (ParseBinding): removed UMR

1999-03-30  Hippo

	* fvwm/*: First attempt at getting fvwm to use non-default visual,
	#define PICK_TRUECOLOR to turn it on.

1999-03-29  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/misc.c (RaiseWindow):
	(LowerWindow): Fix oversight in raising/lowering icons:
	icon_pixmap_w wasn't treated.

1999-03-29  Hippo

	* fvwm/{builtins,colors,fvwm,icccm2,menus}.c: All GC's are now created
	from Scr.NoFocusWin which could have a non-default Visual is somebody
	coded a -visual option.  ICCCM2 stuff uses NoFocusWin rather than
	creating another hidden window.

1999-03-29  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm.c (SetRCDefaults): changed back to MouseFocus as default

Mon Mar 29 01:02:40 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm2.1: removed duplicated IconPath, fixed missing italic
	face.

Sun Mar 28 22:09:12 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Parse.c (NukeToken): removed errant semicolon.

	* fvwm/module.h: prototyped PositiveWrite.

	* fvwm/fvwm.c: added `unused' attribute to sccsid to quiet gcc
	-Wall.

	* fvwm/virtual.c (get_page_arguments):
	* fvwm/builtins.c (Maximize):
	* fvwm/borders.c (SetBorder):
	* fvwm/bindings.c (ignore_modifiers):
	* libs/Bindings.c (GrabWindowButton): removed unused variables.

	* libs/fvwmlib.h: add prototype for GrabAllWindowButtons.

	* libs/Bindings.c (find_context): rewrote since variable `tmp1'
	was used uninitialized.

Sun Mar 28 17:56:27 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Picture.c: removed $Id from comment; avoids unnecessary
	rebuilds after a cvs commit.

Sun Mar 28 15:42:30 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Strings.c (stripcpy): add 'const' qualifier to 'char*'
	argument type.

	* fvwm/builtins.c (imagePath_function, iconPath_function,
	pixmapPath_function, setModulePath): change to new setPath().

	* libs/Picture.c (SetImagePath): use new setPath() internally.

	* libs/fvwmlib.h:
	* libs/System.c (setPath): new function. Sets a colon-separated
	path variable, e.g. ImagePath and ModulePath.  Expands environment
	variables, and expands + to be the previous value of the path.

	* fvwm/fvwm2.1: rewrote ImagePath and ModulePath entries to
	document the '+' expansion.

Sun Mar 28 11:44:29 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/Makefile.am (AM_CFLAGS): move '-D' flags for FVWM_MODLEDIR
	and FVWM_LIBDIR to this variable and removed the special build
	rules for builtins.c, fvwm.c, and read.c; the special rules
	prevented automake's dependency-tracking from working

	* acconfig.h (FVWMRC): moved filename suffix symbol FVWMRC here.

1999-03-28  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1: Removed obsolete doublequotes from many examples

	* libs/Parse.c (CopyToken): fixed quoting with backslashes

	* fvwm/module.c (executeModule): fixed coredump (empty action and
	REMOVE_EXECUTABLE_EXTENSION defined)

	* fvwm/fvwm2.1 (GrabFocus): documented syntax change

	* fvwm/style.c (ProcessNewStyle): ClickToFocus implies GrabFocus,
	MouseFocus and SloppyFocus imply GrabFocusOff

	* fvwm/fvwm2.1 (Mouse): syntax update ('l' allowed as a modifier).

	* fvwm/bindings.c (ignore_modifiers): use ParseModifiers from library

	* libs/Bindings.c (win_contexts): allow function key names in 'Key'
	command to be lower case.
	(key_modifiers): caps-lock is now an allowed modifier

	* fvwm/bindings.c (mouse_binding):
	(key_binding):
	(activate_binding): Key and mouse bindings are activated immediately
	now. No need for racapture anymore.

	* fvwm/icons.c (GrabIconButtons):
	* fvwm/add_window.c (GrabButtons): remove terribly redundant code
	(GrabButtons): moved functionality into library

	* fvwm/fvwm2.1 (Examples): added a warning about performance downgrade

	* fvwm/bindings.c (key_binding): grab new keys immediately, don't wait
	for next recapture.

	* libs/Bindings.c (GrabWindowKey):
	(GrabAllWindowKeys): new functions to handle bindings

	* fvwm/icons.c (GrabIconKeys):
	* fvwm/add_window.c (GrabKeys): functionality moved into library

1999-03-27  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleButtonPress): fixed bug in title button drawing

	* --- end of changes to move binding code into fvwmlib ---

	* fvwm/functions.c (func_config): use key_func/mouse_func instead of
	Parse...Entry

	* fvwm/icons.c (GrabIconButtons):
	(GrabIconKeys):
	* fvwm/events.c (HandleButtonPress):
	(HandleKeyPress):
	* fvwm/add_window.c (GrabKeys):
	(GrabButtons): use new Bindings module in fvwmlib

	* libs/fvwmlib.h:
	* fvwm/menus.h (Binding): moved typedef to fvwmlib.h

	* libs/fvwmlib.h:
	* fvwm/fvwm.h: move context macros into fvwmlib

	* libs/Makefile.am: added Bindings.c

	* libs/Bindings.c: new file

	* --- begin of changes to move binding code into fvwmlib ---

1999-03-27  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/move.c (moveLoop): don't send synthetic
	ConfigureNotify containing wrong size information when
	moving icons. This caused xterms to think they're 48x48
	after moving their icon and deiconfying them.

1999-03-26  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* fvwm/builtins.c (SetXOR): added missing semicolon.

1999-03-26  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/misc.c (RaiseWindow): add a hack to raise *all* windows
	while keeping their stacking order; I hope this helps with
	Exceed and native windows. Someone with access to an Exceed
	X Server has to replace the XFree vendor id by the Exceed
	vendor id - I don't know it.

	* configure.in (EXCEED_HACK): New flag to protect the above hack.
	It defaults to `off'.
	* acconfig.h: dito

1999-03-25  Hippo

	* fvwm/screen.h: moved 6 globalopts ints into Scr.go bitfield

1999-03-23  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleButtonPress): fixed border drawing and button
	drawing

1999-03-24  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/resize.c (resize_window):
	* fvwm/builtins.c (Maximize):
	* fvwm/add_window.c (AddWindow):
	* fvwm/session.c (SaveWindowStates):
	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/borders.c (SetBorder): Change orig_x/orig_y to absolute coords.

	* fvwm/builtins.c (Maximize): Unmaximize to the same
	absolute position as before (unless we're sticky).

	* fvwm/events.c (HandleMapRequest): While in startup,
	handle map request by just mapping the window, decorations
	are added later.

1999-03-22  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.h:
	* fvwm/fvwm.h: fixed order of window flags

1999-03-24  Bob Woodside <proteus@pcnet.com>

	* fvwm/add_window.c: Reuse FvwmWindow structure on Recapture.
	* fvwm/events.c: Ibid.
	* fvwm/fvwm.c: Ibid.
	* fvwm/fvwm.h: Ibid.
	* fvwm/misc.c: Ibid.
	* fvwm/misc.h: Ibid.

1999-03-23  Dan Espen  <dane@mk.bellcore.com>

	* libs/Parse.c (GetSuffixedIntegerArguments): Correctly initialize
	"suffixes" variable to correct a UMR detected by Purify.
	(DoPeekToken): Made tmptok static since its address is being
	returned.  This is probably not the right way to fix this.
	(GetSuffixedIntegerArguments): Remove extra code from suffixlist
	change.

1999-03-23  Tomas Ogren  <stric@ing.umu.se>

	* libs/Parse.c (GetIntegerArguments): When chaining functions, please
	remember to pass along the return-value all the way out..

1999-03-22  Matthias Clasen <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (LookInList): Initialize layer to
	Scr.StaysPutLayer. This means that windows without any
	layer-setting style option (StaysOnTop/StaysPut/Layer) are put in
	the same layer as those with explicit StaysPut.

1999-03-22  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.c (GetMenuOptions): another try to fix the UMR

	* libs/Parse.c (GetSuffixedIntegerArguments): fixed UMR

	* fvwm/builtins.c (Maximize):
	(MaximizeHeight):
	(MaximizeWidth): applied patch for maximize (maximize until another
	window is hit).
	(Maximize): changed syntax: use 'grow' instead of '-1'

	* libs/fvwmlib.h:
	* libs/Parse.c (CmpToken): duplicate function removed (same as
	MatchToken)
	(DoGetNextToken): rewritten to use new DoPeekToken, SkipSpaces and
	CopyToken
	(MatchToken): use new DoPeekToken fuction
	(CopyToken): new function - use with care
	(SkipSpaces): new function
	(DoPeekToken): new function replaces PeekToken
	(SkipNTokens): use new PeekToken function
	(CheckNTokens): new function to check if there are N more tokens.

	* fvwm/menus.c (do_menu): fixed bug that caused menus to believe they
	were doubleclicked from title buttons

	* fvwm/fvwm2.1: adapted iconify examples to new syntax

	* fvwm/bindings.c (CheckBinding): return True if a binding was executed
	* fvwm/events.c (HandleKeyPress): fixed bindings (key/mouse events not
	eaten up when a binding matches)
	(HandleButtonPress): fixed title bar button drawing but may break
	something else

1999-03-21  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.c (GetMenuOptions): tried to fix UMR in GetMenuOptions

1999-03-22  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm2.1 (Example): Colorlimit cutoff point now 21 bits.

	* fvwm/builtins.c (SetColorLimit): Adjusted colorlimit cutoff point
	to 21 bits.

1999-03-21  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/builtins.c (SetBorderStyle): fixed coredump with whitespace
	behind an opening parenthesis
	(ReadTitleButton): dito

	* sample.fvwmrc/new-features: removed illegal option 'Solid' from
	BorderStyle examples.

	* fvwm/bindings.c (CheckBinding): fixed bindings to mouse button '0'

	* fvwm/virtual.c (scroll): applied Scroll command fix by Keith Pomakis.
	(get_page_arguments): fixed bug in new syntax

	* fvwm/fvwm2.1:
	* fvwm/events.c (HandleMapRequestKeepRaised):
	* fvwm/style.c (ProcessNewStyle):
	* fvwm/fvwm.h (FvwmWindow):
	* fvwm/add_window.c (AddWindow): implemented GrabFocus/GrabFocusOff
	style (default is GrabFocus Off)..

	* fvwm/fvwm2.1 (IgnoreModifiers): documented new command
	(WindowShade): updated new toggling syntax

	* fvwm/parse.h:
	* fvwm/functions.c (func_config): new command IgnoreModifiers (based on
	patch by Benoit TRIQUET <benoit@adsl-216-100-248-201.dsl.pacbell.net>)

	* fvwm/focus.c (SetFocus):
	* fvwm/add_window.c (GrabButtons):
	(GrabKeys): use MaskUsedModifiers and GetUnusedModifiers instead of
	global mods_used and LockMask

	* fvwm/bindings.c (GetUnusedModifiers):
	(MaskUsedModifiers):
	(CheckBinding): new function for binding handling

	* fvwm/events.c (HandleKeyPress):
	(HandleButtonPress): moved binding checking code to bindings.c

	* fvwm/builtins.c (stick_function): fixed bug in Stick function (could
	only turn sticky off)

	* fvwm/fvwm2.1 (GotoPage):
	* fvwm/fvwm2.1 (MoveToPage): documented new syntax

	* libs/Parse.c (GetSuffixedIntegerArguments): added function for
	parsing integer arguments with suffixes

	* fvwm/fvwm2.1 (Examples): documented new options for MoveToPage and
	GotoPage

1999-03-20  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/move.c (move_window_doit):
	* fvwm/virtual.c (get_page_arguments):
	(goto_page_func):
	* fvwm/misc.h: implemented a 'previous page' option for GotoPage and
	MoveToPage functions (original patch by Nagi Aboulenein). Negative page
	numbers refer to the lowest or rightmost page. The suffix 'p' indicates
	relative movement.

	* fvwm/menus.c (DrawTrianglePattern): applied menu triangle patch for
	low resolutions by Adam Rice <wysiwyg@glympton.airtime.co.uk>

Sun Mar 21 10:29:40 1999  DanEspen  <dje@blue>

	* NEWS: Updates on form pasting, ImagePath adding, ColorLimit.

	* libs/Picture.c (SetImagePath): Add to the existing image path.

	* fvwm/fvwm2.1 (ImagePath): Indicate that ImagePath adds to the front
	of the image path.  Document that there is a builtin image path.

1999-03-21  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/builtins.c: Maximize can now expand until hitting some other
	window (with the arg(s) -1). Ideas taken from enlightenment.
	* fvwm/builtins.c: Fixed various compiler warnings.

1999-03-21  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/builtins.c: Fixed various compiler warnings.

Sat Mar 20 15:22:02 1999  DanEspen  <dje@blue>

	* fvwm/builtins.c (SetColorLimit): Ignore ColorLimit if display
	depth exceeds 8 bits.

	* fvwm/fvwm2.1 (Example): Describe new behavior, colorlimit does
	nothing on display depths greater than 8, else new default is 255.

	* fvwm/fvwm.c (InitVariables): If screen depth is 8 bits or less,
	automatically colorlimit.

	* fvwm/fvwm2.1 (id): remove FvwmTalk

	* configure.in (xpm_problem): remove FvwmTalk

1999-03-20  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/move.c (moveLoop):
	* fvwm/virtual.c (MoveViewport): fixed a bug that caused a window
	that was being moved to flicker back to its original position when it
	was moved over the screen edge e.g. with EdgeScroll 10 10

	* fvwm/events.c (HandleEnterNotify):
	* fvwm/resize.c (resize_window):
	* fvwm/move.c (moveLoop): changes for new version of HandlePaging

	* fvwm/virtual.c (HandlePaging): rewrote HandlePaging to return
	immediately so resize or move can continue when the pointer is on the
	border

1999-03-16  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1: documented inability to bind something to the corners
	of a naked transient

	* fvwm/events.c (HandleButtonPress): fixed bug: naked transients can't
	have functions bound to the frame with MouseFocusClickRaises.

	* INSTALL.fvwm:
	* configure.in: sorted options

1999-03-19  Andrew T. Veliath  <andrewtv@usa.net>

	* fvwm/builtins.c
	(add_item_to_menu),
	(add_item_to_func),
	(add_item_to_decor): Fix state changes to keep `+' happy.
	(SetButtonFlag): Reindent and make more readable.

1999-03-19  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/fvwm2.1: Fixed some *roff tyops

1999-03-18  Paul D. Smith  <psmith@gnu.org>

	* libs/Module.c (SendText): Rewrite to work on RISC architectures
	where you can't dereference non-aligned pointers as ints.

	* configure.in: Use AC_FUNC_ALLOCA to test for alloca() support.
	* acconfig.h: Add boilerplate to initialize alloca() properly for
	different systems.
	* libs/Makefile.am (libfvwm_a_LIBADD): Add alloca.o to the libfvwm
	library if necessary.
	* fvwm/events.c (DispatchEvent): If we're using the C version of
	alloca, call alloca(0) to clean up.

18 Mar 1999  Hippo

	* fvwm/{fvwm2.1,builtins.c} WindowShadeAnimate takes a'p' suffix to
	mean pixels for the step size.
	* fvwm/{screen.h,{builtins,fvwm,session}.c} New GlobalOpt:
	WindowShadeShrinks (with default WindowShadeScrolls) for oclock
	* fvwm/{fvwm{2.1,.h},builtins.c} Patch from Neil Bird to add conditions
	to the WindowId command.

1999-03-17  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/builtins.c (CursorStyle):
	* fvwm/fvwm2.1:
	* NEWS: enhance CursorStyle to allow specification of cursor
	colors and creating cursors from pixmaps.

1999-03-17  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/add_window.c fvwm/borders.c fvwm/builtins.c fvwm/events.c
	fvwm/icons.c fvwm/misc.h fvwm/move.c fvwm/resize.c fvwm/virtual.c:
	Added one argument to SetupFrame, which is only used when shading to
	avoid windows with size -2 etc..

Wed Mar 17 06:42:10 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* INSTALL.fvwm: add a note about include directories for optional
	libraries.

1999-03-17  Bob Woodside <proteus@pcnet.com>

	* docs/fvwm.lsm: corrected a couple of typos that prevented the LSM
	from accepting the entry.

Wed Mar 17 00:09:32 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/modconf.c (SendDataToModule): fixed stupid off-by-one error
	that caused a stack smash.

1999-03-17  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/module.c (KillModule): remove spurious debug message.

1999-03-16  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/misc.h (name_list_struct): add starts_lowered and
	has_starts_lowered to tmpflags bitfield.
	* fvwm/add_window.c (AddWindow):
	* fvwm/style.c (ProcessNewStyle): implement
	StartsLowered/StartRaised style flags.
	* NEWS:
	* fvwm/fvwm2.1: document StartsLowered/StartsRaised.

	* fvwm/icccm2.c (HandleSelectionClear): remove spurious fvwm_msg.

	* fvwm/misc.h (name_list_struct): add flag has_layer in a new
	tmpflags bitfield.
	* fvwm/style.c (ProcessNewStyle): set has_layer.
	* fvwm/add_window.c (merge_styles): use has_layer.

1999-03-16  Tomas Ogren  <stric@ing.umu.se>

	* modules/FvwmGtk/Makefile.am: Added GTK_CFLAGS and friends, the
	values we got from autoconf...

16th Mar 1999  Hippo

	* fvwm/builtins.c,functions.c,misc.h,parse.h: applied Replace
	patch from Trent Piepho <xyzzy@u.washington.edu> first posted in
	Nov 1996. Changed the name to PlaceAgain to avoid confusion.

Mon Mar 15 22:17:04 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm.c (SetRCDefaults): add "Exec xterm" to builtin menu.
	Very handy for the times that you f*@# up an install by forgetting
	to install a config file.

1999-03-15  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* libs/Module.c (SendText): Send packets atomically in order
	to avoid fvwm accidentially killing a module after reading the
	first word of the packet too fast.

	* acinclude.m4: include gtk.m4 in order to make rebuilding
	on gtk-less hosts less error-prone.

1999-03-13  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/module.c (SendStrToModule): Make sure fvwm doesn't hold
	any grabs while sending strings to modules. This is necessary for
	implementing menus in modules.

1999-03-14  Dominik Vogt  <dominik_vogt@gmx.de>

	* utils/fvwmrc_convert: applied MenuStyle patch

	* fvwm/events.c (HandleButtonPress): fixed ClickToFocus

Sat Mar 13 15:12:37 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: add entry for modules/FvwmCommand/scripts/Makefile.

Sat Mar 13 11:04:48 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: added check for perl. Re-ordered to put tests for
	optional libraries near the beginning, so we can fail early if
	desired library is not found.

	* acinclude.m4 (smr_ARG_WITHINCLUDES): removed `unset', as it is
	said to be unportable.

1999-03-13  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* vms/*: updates from Fabien.

1999-03-12  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* fvwm/borders.c (SetBorder): removed text following #endif, as it
	violates the ANSI C standard (or so claims SGI cc).

1999-03-12  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/menus.c (DoMenusOverlap): fixed menu animation bug

1999-03-11  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/events.c (HandleButtonPress): fixed bug with <shift> being
	treated differently than the other modifiers when using ClickToFocus.

1999-03-11  Hippo

	* fvwm/borders.c (SetBorder): rewritten the frame drawing code to
	restore FvwmBorder style look.  Resize handles are now InputOnly
	windows and all border drawing happens in FvwmWindow->frame. Less code
	and makes "BorderStyle DGradient" feasible.
	* libs/Graphics.c: fixed memory leak

Fri Mar 12 08:51:09 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Graphics.c (RelieveWindowGC): replaced dynamic array size
	with explicit malloc() call.
	* fvwm/menus.c (menuShortcuts): removed cast on lvalue.
	Both problems noted by Fabien Villard.

1999-03-11  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/functions.h: removed ONE_AND_A_HALF_CLICKS
	* fvwm/functions.c (ComplexFunction2): applied fix for click vs.
	doubleclick distinction by Dan D Niles, removed ONE_AND_A_HALF_CLICKS

	* fvwm/fvwm.c (Done): print system error message if Restart fails

	* fvwm/fvwm2.1 (Restart): updated syntax

	* fvwm/fvwm.c (Done): Suppress error message when Restart is used
	without arguments, just restart fvwm

	* utils/fvwmrc_convert: patches by Julian Gilbey

	* fvwm/menus.c (menuShortcuts): applied patch: convert menu shortcuts
	to lowercase before comparing with hotkey

	* fvwm/fvwm2.1 (viewport): added hint about newline quoting

1999-03-10  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1 (Popup): clarification on recursive menus

	* fvwm/menus.c (MenuInteraction): fixed PopupAsSubmenu option;
	definitely should test my code before committing

	* fvwm/fvwm2.1: updated manpage for below options

	* fvwm/builtins.c (NewMenuStyle): added 'PopupAsRoot' and
	'PopupAsSubmenu' options to MenuStyle

	* fvwm/menus.h: added MenuStyle flag PostPopupAsRoot

	* fvwm/functions.c (ComplexFunction2): fixed positional parameters in
	functions.

1999-03-10 Hippo

	* fvwm/events.c (DispatchEvent) clears the rubber band outline
	before processing the event.

Wed Mar 10 10:52:31 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* vms/*: files specific to the VMS port, courtesy of Fabien Villard.

	* fvwm/module.c (executeModule): put ifdef around exit() if child
	fails to exec the module binary.  Apparently VMS doesn't actually
	spawn a child process unless the exec() call succeeds.  Calling
	exit after fork() returns 0 will exit the parent!  Search for
	executables ending with EXECUTABLE_EXTENSION, and optionally
	remove the extension before exec().

	* fvwm/fvwm.c (main): put ifdef around setting close-on-exec for
	the X11 file descriptor.  DecWindows returns an event flag instead
	of a file descriptor in the fd field of the Display structure.

	* acconfig.h: add preprocessor symbols HAVE_X11_FD,
	FORK_CREATES_CHILD, EXECUTABLE_EXTENSION, and
	REMOVE_EXECUTABLE_EXTENSION to support the above.  All are set to
	suitable values for unix semantics.

Tue Mar  9 22:14:25 1999  Steve ROBBINS  <stever@osric.bic.mni.mcgill.ca>

	* extras: removed.  Copied former 'extra' modules FvwmCommand,
	FvwmConsole, FvwmDebug, FvwmScript, FvwmTaskBar, and FvwmWharf to
	the modules directory.  Removed the other extra modules FvwmConfig
	(author's documentation says it is "braindead" and he "discourages
	its use"), FvwmGoodStuff (obsoleted by FvwmButtons), FvwmPipe
	(similar functionality is obtained using FvwmCommand), fvwmperl
	and fvwmpython.

	* extras/ChangeLog: added to end of modules/ChangeLog.

Tue Mar  9 18:00:22 1999  Steve ROBBINS  <stever@osric.bic.mni.mcgill.ca>

	* configure.in (readline): check for readline/history.h, rather
	than readline/readline.h.  Some packages install the latter, but
	not the former, but both are required if FVWM is to use readline.
	Also tell user why we are checking for readline twice.

1999-03-09  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/misc.h:
	* fvwm/menus.c (FindPopup):
	* fvwm/functions.c (ComplexFunction2):
	(FindFunction):
	Removed harmful GetNextToken from FindPopup and FindFunction. This is
	done before these functions are called now. (Bug found by Julian
	Gilbey).

	* utils/fvwmrc_convert: applied patch by Julian Gilbey

	* fvwm/fvwm2.1 (AddToFunc): description of below patch

	* fvwm/functions.c (expand): Added special variables $x and $y for
	complex functions.  These expand to the x and y coordinates of
	the viewport. (Patch by Will French  <wfrench@interport.net>)

	* fvwm/functions.c (IsClick): first click in function does not time out
	(ComplexFunction2): Do not assume 'Move' operation if the button has
	not been released within Scr.ClickTime. Just wait for the ButtonRelease
	before making the decision.

1999-03-08  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/read.c (ReadFile): use F_CMD_ARGS

1999-03-08  Hippo

	* libs/Graphics.c New function RelieveWindowGC() - draws relief lines
	of arbitrary thickness around a rectangle.

1999-03-07  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/resize.c, fvwm/move.c, fvwm/virtual.c: Removed some extra ;'s
	which belongs in a prototype, not the actual function declaration.
	* fvwm/virtual.c (changeWindowsDesk): s/t/tmp_win/ .. since that's
	what the function gets as argument.

1999-03-07  Dominik Vogt  <dominik_vogt@gmx.de>

	* fvwm/fvwm2.1 (sub-menu): added description of 'Silent' function

	* fvwm/functions.c (ExecuteFunction):
	(DeferExecution): implemented silent_functions flags

	* fvwm/builtins.c (SetHiColor):
	(SetEdgeScroll):
	(LoadWindowFont):
	(ApplyDefaultFontAndColors):
	(LoadIconFont):
	* fvwm/virtual.c (checkPanFrames):
	(HandlePaging):
	* fvwm/session.c (SaveGlobalState):
	(LoadGlobalState):
	* fvwm/resize.c (resize_window):
	* fvwm/placement.c (PlaceWindow):
	* fvwm/fvwm.c (InitVariables):
	(CaptureAllWindows):
	* fvwm/menus.c (MakeMenu):
	use new Scr.flags structure

	* fvwm/screen.h (ScreenInfo): introduced flags structure and
	silent_functions flag. Removed old unsigned long flags.

	* fvwm/misc.h (struct functions): moved struct to functions.h

	* fvwm/functions.c (func_config): added 'Silent' command.

	* fvwm/virtual.c (setEdgeThickness):
	(scroll):
	(changeWindowsDesk):
	(goto_page_func):
	* fvwm/resize.c (resize_window):
	* fvwm/move.c (move_window_doit):
	(move_window):
	(animated_move_window):
	(move_window_to_page):
	* fvwm/functions.c (func_config):
	changed argument list to use F_CMD_ARGS

	* fvwm/functions.c (DeferExecution): moved function from builtins.c
	to functions.c

	* fvwm/screen.h: removed ApplyWindowFont

	* fvwm/misc.h: removed ApplyIconFont

	* fvwm/builtins.c: Replaced argument list for builtins with macro
	F_CMD_ARGS (makes it easier to change this in the future).

	* fvwm/builtins.c (SafeDefineCursor): now static
	(FindMenuStyle): dito
	(ApplyIconFont): dito
	(ApplyWindowFont): dito

	* fvwm/move.c (InteractiveMove): fixed interactive move that was broken
	since fix for module input.

	* fvwm/menus.c (MakeMenu): fixed typo

	* ------ end of my changes to split functions and menus ------

	* fvwm/builtins.c (add_item_to_menu):
	* fvwm/misc.h:
	* fvwm/windows.c (do_windowList):
	* fvwm/menus.c (MakeMenu):
 	(NewMenuRoot): removed parameter to distinguish between menus and
	functions (NewMenuRoot).

	* fvwm/menus.c:
	* fvwm/menus.h (MenuRoot): moved some flags into flags structure

	* fvwm/menus.c (DestroyMenu): fixed coredump with menus destroying
	themself

	* fvwm/misc.h: added NewFvwmFunction

	* fvwm/menus.h (MenuItem):
	* fvwm/menus.c (AddToMenu): removed unused flag 'func_needs_window'

	* fvwm/functions.c (find_func_type): return parameters optional

	* fvwm/builtins.c (add_another_item): updated for AddToFunction

	* fvwm/misc.h: added DestroyFunction

	* fvwm/builtins.c (destroy_fvwmfunc): new function

	* fvwm/parse.h: added F_DESTROY_FUNCTION

	* fvwm/builtins.c (add_item_to_func): use AddToFunction now instead of
	AddToMenu
	(add_item_to_menu): added last_func static global (like last_menu)
	(destroy_menu): fixed coredump:
	  AddToMenu foo
	   + "bar" Nop
	  DestroyMenu foo
	   + "foobar" Nop

	* fvwm/Makefile.am: removed complex.c, added functions.h

	* fvwm/functions.c (DestroyFunction): new function
	(NewFvwmFunction): new function

	* fvwm/misc.h: added FindFunction

	* fvwm/fvwm.c (StartupStuff):
	(Done): FindPopup -> FindFunction

	* fvwm/functions.c (FindFunction): analogon to FindPopup

	* fvwm/builtins.c (FindPopup): moved function to menus.c

	* fvwm/functions.c (expand): now static

	* fvwm/misc.h: removed function expand

	* fvwm/functions.c (IsClick): now static

	* fvwm/fvwm.c (InitVariables): initialise Scr.functions

	* fvwm/screen.h (ScreenInfo): added member 'FvwmFunction *functions'

	* fvwm/menus.h: moved function specific code into
 	functions.c/functios.h

	* fvwm/functions.h: new file

	* fvwm/complex.c: merged file with functions.c

	* fvwm/functions.c (ExecuteFunction):
	* fvwm/complex.c (ComplexFunction):
	* fvwm/misc.h:
	removed global variable 'desperate' by introducing a wrapper around
	ComplexFunction that copes with an additional argument

	* ------ beginning of my changes to split functions and menus ------

1999-03-07  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/functions.c (func_config): changed function names to uppercase
	(FindBuiltinFunction):
	(func_comp): functions are converted to uppercase before comparing them
	to the table entries

1999-03-06  Dominik Vogt  <dominik_vogt@hp.com>

	* libs/Module.c (GetConfigLine):
	(SetMessageMask):
	* fvwm/functions.c (func_config):
	Rerenamed builtin functions
	  Send_ConfigInfo <- SendConfigInfo
	  Send_WindowList <- SendWindowList
	  set_mask        <- SetMask

1999-03-07  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (merge_styles): fix Layer option handling.

	* fvwm/misc.c (BroadcastRestack): Reworked to send just one
	variable-size packet containing all windows. This is necessary
	to make the pager work properly. It seems ok to send packets
	larger than MAX_BODY_SIZE, since M_WINDOWNAME has to potential
	to do so too.

1999-03-06  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/fvwm2.1: Reformatted 2 paragraphs.. 'tr in the beginning of a
	line starts rot13-mode or something in nroff..

1999-03-05  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/builtins.c (WindowShade): Removed a little check for MAXIMIZED
	windows which broke the shade/maximize "cooperation".

1999-03-05  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* utils/xselection.c: new utility for using the X Selection
	as commands to fvwm.
	* utils/Makefile.am (bin_PROGRAMS): add xselection.

	* fvwm/session.c (SaveGlobalState):
	(LoadGlobalState):
	(GetClientID):
	(SaveWindowStates):
	(matchWin):
	(SessionInit):
	* fvwm/icccm2.c (SetupICCCM2): fix -Wall trivia. Change
        some fvwm_msg(DBG...) to DBUG(...)

	* fvwm/events.c (XUrgencyHint): define it if it isn't already.

	* configure.in: Add a check for SM.

	* fvwm/misc.c (RaiseWindow): fix bugs with raising windows
	with transients.

	* fvwm/module.h (M_RESTACK): new packet type.
	* fvwm/misc.c (BroadcastRestack): new function sending
	information about stacking order changes.
	(RaiseWindow): use BroadcastRestack.
	(LowerWindow): use BroadcastRestack.

	* fvwm/events.c (HandleConfigureRequest): use BroadcastRestack.

1999-03-05  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm.h (FvwmWindow): some preparations for GSFR

	* fvwm/fvwm2.1: marked IconPath and PixmapPath as obsolete and added a
	hint to the ImagePath command

	* libs/Module.c (GetConfigLine):
	(SetMessageMask):
	* fvwm/functions.c (func_config):
	Renamed builtin functions
	  Send_ConfigInfo -> SendConfigInfo
	  Send_WindowList -> SendWindowList
	  set_mask        -> SetMask

1999-03-05  Johan Bengtsson  <johanb@DoCS.UU.SE>

	* libs/System.c (searchPath): Fixed a potential off by two error.
	When space was allocated for the file name, a directory separator
	and the null termination was not taken into account. This was only
	triggered when the path only contained one directory.

Thu Mar  4 19:18:26 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm2.1 (Iconify): re-worded to put the current syntax
	before the obsolete syntax.  I didn't really understand how
	"Iconify toggle" differs from just "Iconify".

1999-03-04  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (WindowShade):
	(Maximize):
	(iconify_function):
	(stick_function): added patch for consistent toggling function syntax

	* libs/fvwmlib.h:
	* libs/Parse.c (ParseToggleArgument): New parsing function for toggling
	commands

	* fvwm/move.c (DoSnapAttract):
	* fvwm/builtins.c (SetSnapAttraction): applied patch to snap to screen
	edges too.

	* fvwm/fvwm2.1: TriangleRelief -> TrianglesRelief

1999-03-04  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm2.1: Re-applied "Changed   fvwm to fvwm2 everywhere  I
 	thought it should be changed".  It seemed to have disappeared.

1999-03-04  Tomas Ogren  <stric@ing.umu.se>

	* NEWS: Updated w/ animated shading

1999-03-04  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/builtins.c (Maximize): Make partially maximized
	windows unmaximize to their original position.

	* fvwm/borders.c (SetupFrame): do XResizeWindow on tmp->w
	even if shaded. This fixes animated WindowShade.

	* fvwm/fvwm.c (main): call SetupICCCM2 before selecting
	for SubstructureRedirect on the root window.
	(Done): call CloseICCCM2 after undecorating all windows.
	* fvwm/colormaps.c: new global client_controls_colormaps
	for client-side InstallColormap support.
	(HandleColormapNotify):
	(InstallWindowColormaps): don't install colormaps if
	client_controls_colormaps is true.
	* fvwm/events.c (HandleClientMessage): handle wm_colormap_notify
	clientmessages by setting client_controls_colormaps.
	(InitEventHandlerJumpTable): install HandleSelectionClear
	and HandleSelectionRequest.
	* fvwm/icccm2.c: New file implementing SetupICCCM2,
	CloseICCCM2, HandleSelectionRequest and HandleSelectionClear.
	* fvwm/fvwm.h: add prototypes for these plus a couple of Atom's.

Thu Mar  4 01:30:28 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/module.c (executeModule): search for module using
	searchPath() rather than searchIcon()!

Thu Mar  4 01:22:15 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/System.c (searchPath): new function; this is most of the
	guts of the old findIconFile -- which was used to find more than
	just icons --- modules, for example!

Thu Mar  4 00:55:34 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/fvwmlib.h: added prototypes for all replacement functions,
	conditionally compiled.

Thu Mar  4 00:44:06 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm2.1:
	* libs/XResource.c:
	* configure.in:
	* fvwm/builtins.c:
	* fvwm/functions.c:
	* fvwm/misc.h:
	* fvwm/modconf.c: replace IconPath by ImagePath; the config
	command IconPath remains, but is flagged as deprecated.

Wed Mar  3 21:05:11 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* sample.fvwmrc/system.fvwm2rc-sample-2:
	* sample.fvwmrc/new-features: changed PixmapPath and IconPath to
	ImagePath.

1999-03-03  Tomas Ogren  <stric@ing.umu.se>

	* fvwm/builtins.c (WindowShade): Enhanced WindowShade() to do
	animation, with the number of steps configured by the command
	'WindowShadeAnimate <steps>'
	* fvwm/builtins.c: New function 'setShadeAnim()', called by the Fvwm
	command 'WindowShadeAnimate', sets the animation steps used in
	WindowShade().
	* fvwm/parse.h: Added F_SHADE_ANIMATE
	* fvwm/misc.h: Function prototype for setShadeAnim().
	* fvwm/functions.c: Added Fvwm command 'WindowShadeAnimate <steps>'
	* fvwm/fvwm2.1: Updated man-page with WindowShadeAnimate

1999-03-02  Steven Michael ROBBINS  <stever@hojpoj.cs.mcgill.ca>

	* fvwm/module.c (executeModule): put ifdef around code that closes
	pipes in child processes.

	* fvwm/misc.c: put ifdef around fvwm_msg; allows VMS port to
	define its own version of this routine.

1999-03-02  Steven Michael ROBBINS  <stever@hojpoj.cs.mcgill.ca>

	* fvwm/fvwm.h: add 'extern' keyword to Bool fFvwmInStartup,
	otherwise it is defined in each .c file that includes <fvwm/fvwm.h>

	* fvwm/modconf.c: add 'extern' keyword to PipeMask; ditto.

1999-03-02  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm2.1: Changed fvwm to fvwm2 everywhere I thought it should
	be changed.

1999-03-02  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm2.1: details about the geometry displayed
	in window lists.

	* fvwm/windows.c (do_windowList): show layer in window list.

	* fvwm/builtins.c (Maximize):
	(WindowShade): allow shading maximized/maximizing shaded windows.
        * fvwm/fvwm.h (FvwmWindow): new field maximized_ht.
	* fvwm/add_window.c (AddWindow): initialize maximized_ht.
	* fvwm/session.c (SaveWindowStates): save the correct maximized
	size for shaded windows.
	* fvwm/events.c (HandleConfigureRequest): allow clients
	to resize themself if shaded, but not if maximized.
	* fvwm/resize.c (resize_window): allow interactive resizing
	if shaded.
	* fvwm/fvwm2.1: adjust documentation of WindowShade.

	* fvwm/builtins.c (PickFunc):
	(AllFunc): new functions.

	* fvwm/parse.h:
	* fvwm/misc.h:
	* fvwm/functions.c (func_config): add entries for Pick and All.

	* fvwm/session.c (SaveWindowStates):
	* fvwm/add_window.c (AddWindow):
	* fvwm/move.c (AnimatedMoveAnyWindow):
	(moveLoop): insert #ifdef WINDOWSHADE ... #endif to
	make configure --disable-windowshade work.

1999-03-02  Dan Espen  <dane@mk.bellcore.com>

	* NEWS: Updated news on FvwmAnimate fonts and colors defaults.

1999-03-01  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/fvwm.c (InitVariables): Change the default layers
	for StaysOnTop and StaysPut from 1 and 0 to 6 and 4.

	* fvwm/fvwm2.1: Adjust the documentation of DefaultLayers.

	* fvwm/add_window.c (AddWindow): Put windows at the top of
	their layer initially.

1999-03-01 Hippo

	* fvwm/*: Removed ->bw. FvwmBorder windows will look funny until I fix
	them.

	* fvwm/move.c: Fixed opaque/animated moves to not crash shaded windows,
	removed	#ifndef NO_ETERM_SUPPORT, might want to make it a configure
	option.

1999-02-28  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/add_window.c (AddWindow): Fix a bug where unmaximizing a
	window on a non-origin page that has been restored to maximized
	state from a saved session would make it jump to a different page.

1999-02-28  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* configure.in:
	* INSTALL.fvwm: backed out of Sat Feb 27 12:49:23 1999 change.
	Fvwm exports FVWM_MODULEDIR to the environment of subprocesses, so
	running configure in an xterm will always pick up the current
	module dir.

Sun Feb 28 11:37:22 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm2.1: removed all traces of PixmapPath from manpage.

Sun Feb 28 11:25:30 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Strings.c (stripcpy): make sure 'tmp' is valid before
	dereferencing it; there was a possible problem if function was
	passed an empty string.

Sun Feb 28 11:03:42 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Picture.h: new file.
	* libs/fvwmlib.h: moved declarations for Picture.c into Picture.h.

	* libs/Picture.c (GetIconPath,SetIconPath): the icon path variable
	is now static; these are the accessor functions.
	* libs/Picture.c (findIconFile,GetPicture,CachePicture): these
	functions now look at a single path, rather than IconPath and
	PixmapPath.  The path parameter may be NULL, in which case the
	default path -- the one set by SetIconPath() -- is used.

	* fvwm/add_window.c:
	* fvwm/builtins.c:
	* fvwm/functions.c:
	* fvwm/fvwm.h:
	* fvwm/icons.c:
	* fvwm/menus.c:
	* fvwm/misc.h:
	* fvwm/modconf.c:
	Fixes for the findIconFile(), GetPicture(), and CachePicture()
	changes.  The PixmapPath command is temporarily retained; it gives
	a warning, and then calls IconPath.

1999-02-28  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* AUTHORS: fix the spelling of my name.

	* libs/ModParse.c (GetArgument): fix GetArgument for quoted args.
	(DoPeekArgument): new function needed in GetArgument.
	Use safemalloc instead of malloc ( change copied from
	modules/FvwmEvent/Parse.c ).
	(PeekArgument): now call DoPeekArgument.

	* fvwm/move.c (InteractiveMove): fix behaviour of
	InteractiveMove when called from a context other than a
	ButtonPress or KeyPress.

	* fvwm/builtins.c (WindowShade): fix an off-by-one error
	with shaded FvwmBorder windows.

1999-02-27  Matthias Clasen  <clasen@mathematik.uni-freiburg.de>

	* fvwm/{add_window,builtins,events,functions,fvwm,misc,
	   placement,session,style,windows}.c:
	* fvwm/{fvwm,misc}.h:
	* fvwm/fvwm2.1:
	implement a layered stacking order.

	* configure.in, acconfig.h:
	* fvwm/{session,add_window,events,fvwm,icons}.c:
	* fvwm/{fvwm,misc}.h:
	* NEWS, fvwm/fvwm2.1:
	add session management functionality ( make fvwm a client
	of a X SMP compliant session manager).

Sat Feb 27 12:49:23 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: allow FVWM_{MODULE,CONFIG}DIR to be overridden by
 	setting the corresponding environment variable before running
 	configure.

1999-02-26  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* auto*: removed all generated files from repository.  To
	regenerate the files, you will need to do "automake --add-missing"
	then "autoreconf".  Added .cvsignore files to ignore them during
	updates.

1999-02-26  Hippo

	* fvwm/placement.c: fixed wandering on restart/recapture caused by
	old_bw being ignored.

1999-02-25  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/module.c  (HandleModuleInput): Increased max message from a
 	module from 255  to  999, needed  for FvwmForm.   Removed a little
 	redundant code.

Tue Feb 23 13:02:33 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/module.c: include <sys/time.h> to ensure that FD_SET and
	friends are found.  My Linux system needed this, don't ask me why.

1999-02-23  Hippo

	* fvwm/builtins.c: Emulate command updates feedback window position.

	* fvwm/virtual.c: EdgeThickness command can be used at any time to
	alter the panframe windows. Panframe windows unmapped when paging to
	the end page and wrapping is disabled.  Panframe windows go right into
	the corners.

	* fvwm/windows.c: WindowList looks better when NoGeometry specified.

	* fvwm/move.c: Opaque and Animated moves send events to client.
	Transparent Eterm will stay transparent. #define NO_ETERM_SUPPORT if
	you think this is horrible.

	* fvwm/{module.{c,h},move.c} Opaque and Animated moves send module
	messages.  FvwmPager follows the move.

	* fvwm/{events,fvwm,modconf,module,read}.c: moved invocation of
	StartupStuff() from ReadSubFunc to main event loop.  Initial capture
	happens only after all command line args are finished and any modules
	that the command line args invoke.  Any number of -cmd's can be
	specified and the initial capture will happen when they have finished
	so that you don't need a recapture after a restart to get the right
	decorations. Added a timeout so that Fvwm will always do the initial
	capture.FvwmCPP & FvwmM4 can now be rewritten to exec() the subprocess
	and avoid using a Read of a temp file.

	* fvwm/{events,focus,module}.c: FOCUS_CHANGE packet has the third
	(previously useless) paramter set to denote FlipFocus/Focus.  Modules
	can now accuraetly track the internal window list order.

	* fvwm/borders.c: experimental rewrite of Sticky lines.  Use xmag to
	look at the ends. If they don't line up I think you have an Xserver
	bug.

	* fvwm/{{builtins,functions,fvwm}.c,fvwm2.1,misc.h}: XORPixmap.
	Eat this Enlightenment 8-).  Actually it's meant to improve the
	visibility of rubberband lines in PsuedoColor displays (use Colorlimit
	first) but it looks great on TrueColor.  It plays nicely with XORValue
	and I don't think it leaks pixmaps.

1999-02-23  Dominik Vogt  <dominik_vogt@hp.com>

	* AUTHORS: updated

	* configure.in: changed version to 2.3.0

	* *: fvwm 2.2 has been released :-))

1999-02-22  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm2.1 (WindowsDesk): some clarification that this command has
	gone.
	(QuitScreen): entry added.

	* sample.fvwmrc/new-features: corrected module path

	* fvwm/fvwm2.1 (Popup): Corrected typo (double-click-action ->
	default-action).
	(Read): Put braces around optional parameter
	(SetAnimations): dito
	(SnapAttraction): dito
	(UpdateDecor): dito
	(ColormapFocus): removed braces around required argument

	* sample.fvwmrc/Makefile.am (EXTRA_DIST): added new-features

1999-02-19  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: Updated for 2.2

	* NEWS: updated for 2.2

	* fvwm/fvwm2.1: swapped 'Read' and 'Recapture'

1999-02-18  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (FPopupMenu): use menu style of parent menu for popup
	offset instead of own menu style.

Wed Feb 17 08:24:46 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: Clear cache variables relating to
	--with-{xpm,rplay,readline}-* options so the presence of these
	libraries will always be recomputed.  This avoids the problem of
	not finding the library (or finding the wrong one) if configure is
	re-run with different options.

1999-02-17  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: updated for 2.1.14

1999-02-16  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/bindings.c (ParseBindEntry): Specifying 'any' modifier and
	specific modifiers together in a key binding made the whole binding
	fail to work

1999-02-15  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/functions.c (FindBuiltinFunction):
	(ExecuteFunction): NULL pointer coredump fixed

1999-02-14  Bob Woodside  <proteus@pcnet.com>

	* fvwm/fvwm2.1:  Added a description of the DecorateTransient and
	NakedTransient Style options to the man page.

1999-02-14  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: Change version to 2.1.13

	* fvwm/add_window.c:
	* fvwm/resize.c:
	* fvwm/events.c: removed debug statements for wandering/growing
	windows bug

	* fvwm/borders.c (RelieveWindowHH):
	(RelieveWindow):
	* fvwm/misc.h: removed inline from declarations of RelieveWindow and
	RelieveWindowHH

1999-02-12  Bob Woodside  <proteus@pcnet.com>
	* fvwm/events.c: Corrected failure to focus/auto-raise NoIconTitle
	icon windows.

	* fvwm/focus.c: Ibid.

	* fvwm/misc.c: Ibid.

1999-02-12  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/bindings.c (ParseBindEntry): fixed key binding bug

	* libs/Module.c (SendText): applied patch by Adam Rice to make fvwm2
	work with 2.2.x Linux kernels (trivial patch).

1999-02-11  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/misc.c (GetOneMenuPositionArgument): rewrote syntax of menu
	position hints.

	* fvwm/fvwm2.1: quoting ^, @, * and % added to 'Menu' entry

1999-02-11  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (CreateFlagString): corrected restptr to return NULL
	on error
	(PrevFunc): check for NULL pointer added
	(NextFunc): check for NULL pointer added
	(NoneFunc): check for NULL pointer added
	(CurrentFunc): check for NULL pointer added
	(DirectionFunc): check for NULL pointer added

	* fvwm/functions.c (ExecuteFunction): check for NULL pointer added
	(find_func_type): check for NULL pointer added

1999-02-11  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/builtins.c  (UpdateMenuStyle): Handle menu arrow reliefs on
 	black and white terminal.

1999-02-11  Hippo

	* modules/FvwmWinList/FvwmWinList.c: Added XFlush() to fix focus
	following problem.

1999-02-05  Bob Woodside  <proteus@pcnet.com>

	* fvwm-2.xx.lsm: Removed.

	* fvwm-2.2.lsm: Removed.

	* fvwm.lsm: Updated (actually, deleted and renamed fvwm-2.2.lsm to
	fvwm.lsm).

1999-02-02  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Change version to 2.1.12

1999-02-02  Hippo

	* fvwm/menus.c (PaintMenu) Rewrote DGradient/BGradient menu code to
	use only integer arithmetic and draw in one pass to fix some missing
	pixel errors on some servers.

1999-02-01  Paul D. Smith  <psmith@gnu.org>

	* INSTALL.fvwm: Added note about config.cache.  Tweaked shared
	libs information.

	* README: Mention the INSTALL.fvwm file.

1999-01-29  Hippo

	* fvwm/menus.c (PaintMenu): Fixed {D,B}Gradient's being clipped by the
	last mini-icon, fixed drawing errors with some compilers not
	auto-casting from float to int very well.

1999-01-28  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (PaintEntry): Prevent menu titles from being hilighted
	with ActiveFore
	(MenuInteraction): fixed bug that caused menus ('Menu' command) being
	popped down immediately if the pointer moved even a single pixel.

	* fvwm/builtins.c (GetMenuStyleIndex):
	(NewMenuStyle): Changed PrepopMenus -> PopupImmediately and
	PrepopMenusOff -> PopupDelayed

	* fvwm/menus.c (MenuInteraction):
	* fvwm/menus.h: changed PrepopMenus -> PopupImmediately

1999-01-27  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MenuInteraction): check for expose events first to
	ensure the menu is drawn properly before navigating
	(FPopupMenu): fixed *badly* broken code to avoid overlapping menus
	(with and without animation).
	(DoMenusOverlap): fixed broken overlapping algorithm

	* fvwm/menus.h (MenuRoot): removed 'redrawn' flag

	* fvwm/menus.c (DoMenusOverlap): fixed gradient menu drawing bug
	(MenuInteraction):
	(PopDownAndRepaintParent):
	(PaintMenu):
	(SetMenuItemSelected): removed 'redrawn' flag. Use flush_expose
	instead: simpler and fixes a drawing bug

1999-01-27  Bob Woodside  <proteus@pcnet.com>

	* modules/FvwmPager/x_pager.c:  Backed out the change to prevent
	sending focus to No Input windows regardless of the Lenience setting.
	The change to send FVWM a Focus command had the effect of causing
	unwanted viewport changes. We'll revisit this after 2.2; the proper
	fix will probably involve expanding the message protocol to send the
	wmhints, so that the module can determine whether the window should
	get focus.

1999-01-26  Bob Woodside  <proteus@pcnet.com>

	* fvwm/events.c:  Changed the stacking order chain rebuilder to seek
	out the icon window's position in the stacking order, not the app
	window frame's position, if a window is iconic (and the icon is not
	being suppressed).

	* fvwm/misc.c:  Corrected the new RaiseWindow logic to recognize the
	case of an icon window's being at the top of the stacking chain. This
	corrects the problem of not being able to raise an app window above
	an icon that has been specifically raised.

1999-01-26  Bob Woodside  <proteus@pcnet.com>

	* fvwm/fvwm.c:  Changed default from ActivePlacementHonorsStartsOnPage
	to ActivePlacementIgnoresStartsOnPage. We'll all be the happier for it.

	* fvwm/placement.c:  Fixed improper placement of windows that start
	iconic, but are not StartsOnPage, and use ActivePlacement. This fix
	reverts to the former handling - the icon is simply dumped onto the
	current desk/page without going through any fancy placement logic or
	expecting the user to place the window interactively.

1999-01-25  Steven Michael ROBBINS  <stever@bongo.cs.mcgill.ca>

	* configure.in: Forget values cached for libreadline; it messes up
	detecting whether termcap or ncurses is needed.

1999-01-25  Dan Espen  <dane@mk.bellcore.com>

	* libs/Grab.c: Make the grab count externally visible.

	* fvwm/module.c (PositiveWrite): Don't send iconify message to
	lock on send modules while fvwm2 has the server grabbed.  This
	fixes an hang during recapture while FvwmAnimate is running.

1999-01-23  Bob Woodside  <proteus@pcnet.com>

	* fvwm/fvwm2.1: Update the section that said there was no way to
	map a window to someplace other than the current viewport.

1999-01-20  Paul D. Smith  <psmith@gnu.org>

	* INSTALL.fvwm: Document new install-strip issue and workaround.

	* Makefile.am (AUTOMAKE_OPTIONS): Require automake 1.4.  Needed
	now that the VERSION and PACKAGE undefs are removed.

Wed Jan 20 01:13:38 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* INSTALL.fvwm: Removed doubled paragraph.

1999-02-09  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (CreateFlagString): corrected restptr to return NULL
	on error
	(PrevFunc): check for NULL pointer added
	(NextFunc): check for NULL pointer added
	(NoneFunc): check for NULL pointer added
	(CurrentFunc): check for NULL pointer added
	(DirectionFunc): check for NULL pointer added

	* fvwm/functions.c (ExecuteFunction): check for NULL pointer added
	(find_func_type): check for NULL pointer added

1999-01-19  Paul D. Smith  <psmith@gnu.org>

	* README: Update new URLs; a few spelling corrections; specify
	that the fvwm-workers maintain FVWM now.

1999-01-19  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* README: Changed "care and feeding" info from Brady Montz to the
	Fvwm Workers.

	* INSTALL.fvwm: Updated the info & verified the URLs for the three
	optional libraries (xpm, rplay, and readline).  Other small
	wording changes.

	* configure.in:
	* */Makefile.am: Make sure xpm_CFLAGS preceeds X_CFLAGS, so that
	the include directory for xpm-includes is searched ahead of the
	system's X11 include directory.

	* acconfig.h: Removed #undefs for VERSION & PACKAGE; autoheader
	from autoconf 1.13 now generates them automatically.

1999-01-19  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MenuInteraction): fixed keyboard shortcut bug

1999-01-18  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Update version number.

1999-01-17  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Test for siginterrupt().

1999-01-17  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (PaintEntry): long separators reached into the border
	of the menu to the right, but not on the left
	(AddToMenu): AddToMenu could not be used to enter separators

1999-01-16  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* configure.in: Nuke cached values before retrying check for
	libreadline (using -lncurses rather than -ltermcap).

Sat Jan 16 03:14:31 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* Moved ANNOUNCE, BUGS, DEVELOPERS, FAQ, TODO, and Y2K-Compliance
	from top-level directory to docs.

	* tests: Created directory; put in script to test combinations of
	build options.
	* tests/purify: Created directory; this holds docs and scripts
	helpful for running purify on the source code.  This is not
	distributed in the .tar.gz files.

Fri Jan 15 22:10:18 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/fvwm2.1: Corrected the search sequence for startup files.

1999-01-16  Dominik Vogt  <dominik_vogt@hp.com>

	* BUGS: updated for 2.2

1999-01-14  Paul D. Smith  <psmith@gnu.org>

	* configure.in: If readline doesn't work with termcap, see if it
	works with ncurses (some installations are built against
	ncurses).

	* INSTALL.fvwm: Updated to document cpp issues.
	Updated to document shared library / -R issues.

1999-01-15  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm2.1: marked -blackout option as obsolete
	moved copyright notice to COPYING file

	* FAQ: updated/removed some questions and fixed some typos

1999-01-14  Tim Phipps <tim@quadrics.com>

	* Added alt-tab explanation to FAQ

1999-01-13  Bob Woodside  <proteus@pcnet.com>

	* fvwm/placement.c: Fixed SmartPlacement and CleverPlacemet failure
	to avoid sticky windows when placing SkipMapping, StartsOnPage or
	StartsOnDesk windows. Also fixed CleverPlacement bug that sometimes
	caused windows to be placed entirely outside of the virtual desktop.

1999-01-14  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/resize.c (ConstrainSize): fixed bug: moving a shaded window in
	FvwmPager screwed up the window's height

	* fvwm/fvwmdebug.c (DB_WI_ALL): fixed coredump

	* fvwm/menus.c (SetMenuItemSelected): removed malformed DBUG calls

	* fvwm/builtins.c (ButtonStyle): fixed parsing bug causing a hang

	* fvwm/module.c (HandleModuleInput): fixed parsing with popup

1999-01-13  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/icons.c (AutoPlace): fixed a bug in icon placement (netscape 4.5
	refused to go into the icon box

1999-01-13  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* fvwm/builtins.c (DirectionFunc): Made variable "dir" an int, to
	match return type of GetTokenIndex().

1999-01-12  Dominik Vogt  <dominik_vogt@hp.com>

	* configure: changed readline prototype (char -> char *)

	* fvwm/fvwm2.1: updated MenuStyle for SideColor

	* fvwm/menus.c (scanForColor):
	* fvwm/builtins.c (NewMenuStyle): added SideColor option to MenuStyle

	* fvwm/modconf.c (SendDataToModule):
	* fvwm/add_window.c (AddWindow):
	* fvwm/menus.c (scanForPixmap):
	* fvwm/builtins.c (setPixmapPath):
	(ReadButtonFace):
	removed ifdefs around char *PixmapPath

	* libs/Picture.c (CachePicture): introduced ifdef to handle XPM
	scanning in a central place. Should enable me to remove lots of other
	ifdefs.

	* fvwm/fvwm2.1: updated MenuStyle for SidePixmap

	* fvwm/builtins.c (FreeMenuStyle):
	(NewMenuStyle):
	* fvwm/menus.c (PaintEntry):
	added support for MenuStyle sidePic

	* fvwm/builtins.c (ChangeMenuStyle): MakeMenu called only for menus
	that changed

	* fvwm/menus.c (MenuInteraction): removed f_type temporary variable

	* fvwm/misc.h (struct functions): changed 'int type' to
	'Bool func_needs_window' and 'int code' to 'short func_type'

	* fvwm/complex.c (ComplexFunction): removed reference to function code
	to determine if a window is needed. The logic uses the F_NO_WINDOW and
	F_NEEDS_WINDOW entries from functions.c now.

	* fvwm/parse.h: removed references to 'need window' logic

	* fvwm/menus.h:
	* fvwm/functions.c (func_config): removed FUNC_POPUP, FUNC_NOP,
	FUNC_TITLE

	* fvwm/menus.c (MenuInteraction): removed unnecessary call of
	find_func_type
	(AddToMenu): adapted new interface of find_func_type

	* fvwm/functions.c (find_func_type): changed interface to return both,
	type and code

	* fvwm/menus.h (MenuItem): added func_needs_window flag.

	* fvwm/menus.c (FPopupMenu): made painted flag independent of gradients
	(PaintMenu): dito
	(MenuInteraction): cleaned up redrawing
	(PopDownAndRepaintParent): new function to handle redrawing without an
	expose event for servers without backing storage (fix for bug #118)

Sun Jan 10 22:23:14 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/XResource.c: Now includes config.h to get function
	prototypes, and removed const from XrmOptionDescRec.  Both changes
	are to placate the compiler.

Sun Jan 10 22:13:10 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/module.c (make_packet): Removed dead code.

Sun Jan 10 22:11:36 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/misc.c (GetMoveArguments):
	* fvwm/menus.c:
	* fvwm/icons.c (Iconify):
	* fvwm/focus.c (SetFocus):
	* fvwm/builtins.c (ButtonStyle):
	* fvwm/borders.c (SetBorder): Inserted explicit braces to avoid
	ambiguous `else'.

Sun Jan 10 21:39:08 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* libs/Parse.c (NukeToken): Removed assignment used as truth
	value.

Sun Jan 10 21:31:32 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* acconfig.h: Include sys/types.h and unistd.h; most code will
	benefit from the function prototypes contained therein.

Sun Jan 10 21:22:22 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/read.c:
	* fvwm/placement.c:
	* fvwm/move.c:
	* fvwm/menus.c:
	* fvwm/builtins.c: Removed unused variables.

Sun Jan 10 18:11:09 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* fvwm/module.c (HandleModuleInput): Removed unnecessary cast of
	integer to pointer.

1999-01-09  Bob Woodside  <proteus@pcnet.com>

	* fvwm/events.c (HandleConfigureRequest): added resynchronization of
	* the stacking order ring when an app requests a change in its window's
	* place in the Great Chain of Being.
	* fvwm/misc.c (RaiseWindow): re-enabled Matthias Clasen's fix to keep
	* FVWM-managed windows from being raised above override_redirect
	* windows.

Sat Jan  9 08:20:08 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* xpmroot/*: Moved into utils directory.
	* utils/xpmroot.c: Removed dead code (yet another version of
	strcasecmp).

1999-01-07  Dominik Vogt  <dominik_vogt@hp.com>

	* **/*: Applied tons of cosmetic fixes from the Red Hat patches
	but some real bugfixes too. Sorry Paul (PDS), this one simply has
	too many files involved with trivial patches.

	* fvwm/builtins.c (DeferExecution):
	* fvwm/move.c (move_window_doit):
	* fvwm/resize.c (resize_window): applied Red Hat safety patch

	* fvwm/menus.c: applied latest patch for gradient hilighting
	(MenuInteraction): ignore unbound keys (warped back to center of item
	before).

	* fvwm/menus.c (FPopupMenu): fixed bug: menu item was not painted
	properly when warped onto (with a key press)

	* fvwm/fvwm2.1: Some clarification on key bindings.

1999-01-08  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Check to see if we have sigaction() or not.
	Test for atexit() and include atexit.c if it's not there.  If it's
	not there, test for on_exit() instead.

	* fvwm/fvwm.c (main): Remove USE_POSIX/USE_BSD stuff; they're not
	autoconf-y.  Instead, use check for sigaction(); if it doesn't
	exist we'll fall back to the "traditional" signal().

	* fvwm/misc.h: Use autoconf to find the proper return type for
	signal handler function DeadPipe().
	* fvwm/module.c (DeadPipe): Define proper return type for DeadPipe()
	* libs/Module.c (ReadFvwmPacket): Use proper return type for DeadPipe()

	* libs/atexit.c: New file.  Add for systems which don't have
	atexit() (SunOS has on_exit(); if any others use different things
	they'll have to be handled too).

Thu Jan  7 21:44:43 1999  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: Add checks for system headers that are required
	before using AC_FUNC_SELECT_ARGTYPES.  Workaround for autoconf
	2.13 bug.

1999-01-06  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Update to autoconf 2.13.
	Use new AC_FUNC_SELECT_ARGTYPES to get select() argtypes.
	If we can't find cpp, only print a warning.
	Move testing of xpm, readline, etc. until later in the script so
	we have a chance to find any necessary extra libs before then.
	Remove the search for socket, since it wasn't accurate (on
	Solaris, for example, -lsocket needs -lnsl too) and will be found
	by X_EXTRA_LIBS anyway.

	* fvwm/events.c (My_XNextEvent): Updated to use new #defines for
	select().

1999-01-06  Bob Woodside  <proteus@pcnet.com>

	* fvwm/misc.c (RaiseWindow):  Disabled Matthias Clasen's patch to keep
	from raising StaysOnTop windows above override_redirect windows: there
	are situations where non override_redirect windows raise themselves
	without FVWM's knowledge, and it breaks normal raising in these cases.
	It's on the right track, but more work is needed post-2.2.

1999-01-06  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/events.c (GetContext): fixed fixed fix for fix (made
	MouseFocusClickRaises work again).

	* fvwm/fvwm2.1: corrected the manpage on '@foo.xpm@' for AddToMenu.

	* fvwm/**: Applied updated signal handler patch by Chris Rankin

	* fvwm/events.c (GetContext): fixed button bindings on client portion
	of window.

	* archive/ChangeLog: File added to have a ChangeLog for the files that
	are not distributed.

1999-01-05  Bob Woodside  <proteus@pcnet.com>

	* fvwm/misc.c (RaiseWindow):  Added Matthias Clasen's patch to keep
	from raising StaysOnTop windows above override_redirect windows; fixed
	the stacking order chain reorg to keep StaysOnTop windows at the
	beginning of the chain.

1998-01-05  Dominik Vogt  <dominik_vogt@hp.com>

	* BUGS: Removed some fixed bugs.

1999-01-05  Paul D. Smith  <psmith@gnu.org>

	* NEWS: Updated with new configure options.

	* acinclude.m4 (smr_CHECK_LIB): A few tweaks: don't print out
	extra lines; make sure $with_xxx is set properly.

	* configure.in: Added output section to the end, mainly to make a
	missing XPM lib more obvious.
	Added a new XPM check grabbed from XEmacs, which verifies we have
	a "new enough" version of XPM.
	Add a new check for the type of arguments to select(); whether we
	like fd_set* or require int*.
	Allow the user to specify a location for cpp with --with-cpp.
	If cpp can't be found, stop immediately.

	* fvwm/events.c (My_XNextEvent): Replace __hpux check with select
	arg check from configure.

	* BUGS: Documented install-strip problem.

1998-01-05  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: Changed version to 2.1.8.
	* NEWS: Ditto.

	* Released fvwm 2.1.7 beta (CVS tag version-2_1_7).

1999-01-04  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (FPopupMenu): force menus on screen if making them non
	overlapping moves them partially off screen.

1999-01-03  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MenuInteraction): fixed various bugs in drawing
	gradient menus when overlapping the parent menu. Fixed bug with
	hilighting an item before the menu was painted (it stayed hilighted
	with gradient menus and Hilight3D).

	(MenuInteraction): fixed a *bad* bug with MenuStyles. At several places
	I used the style of the submenu instead of the menu itself.

	* FAQ:
	* fvwm/fvwm2.1: Some comments on gradient menus

	* fvwm/menus.c (DoMenusOverlap): fixed PopupOffsetAdd in MenuStyle
	(only positive values worked)

	* fvwm/builtins.c (NewMenuStyle): fixed coredump with menu styles
	other than *

	* fvwm/fvwm2.1: Removed SetMenuStyle, updated MenuStyle (and others)

	* fvwm/fvwm.c (SetRCDefaults): changed SetMenuStyle to MenuStyle

	* fvwm/builtins.c (GetMenuStyleIndex): new function
	(NewMenuStyle): This is the former SetMenuStyle
	(SetMenuStyle): Wrapper to decide if a MenuStyle line has the old or
	the new syntax. Dispatches a call to Old/NewMenuStyle
	* fvwm/functions.c (func_config): removed SetMenuStyle command;
	MenuStyle handles the old and the new syntax now
	* fvwm/parse.h: removed F_SET_MENUSTYLE

1999-01-02  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (SetMenuItemSelected): fixed slow XGetImage (?) Why does
	fetching a XYPixmap take so long while ZPixmaps are grabbed instantly?

	* fvwm/events.c (HandleButtonPress): removed unnecessary code

	* fvwm/fvwm.h: switched context defines to hex (instead of decimal)

	* fvwm/add_window.c (AddWindow): backed out a patch that caused a mouse
	binding problem

1998-12-31  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/events.c (My_XNextEvent): applied cleanup patch by Chris Rankin

1998-12-30  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MakeMenu): fixed font-change bug with menus: If a menu
	has a continuation and then the font is changed (to a smaller one) the
	continuations are not recalculated (i.e. the menus are too short).

	* fvwm/placement.c (test_fit): applied placement fix for iconified
	windows without an icon (by Trent Piepho)

	* libs/Picture.c (GetPicture): fixed use of freed memory (path)

	* fvwm/read.c (ReadSubFunc): fixed PipeRead memory leak

	* fvwm/builtins.c (SetMenuStyle): removed unused code

	* fvwm/menus.h: remove unused flag 'hasFont' from MenuLook

	* fvwm/builtins.c (SetMenuStyle): fixed font memory leak

	* fvwm/menus.c (MakeMenu): fixed bug in menu continuations:
	menuContinuation->first->prev still pointed to last item of parent menu
	(AddToMenu): fixed memory leak with "Title top"

	* fvwm/add_window.c (AddWindow): fixed memory leak (tmp_win->name
	assigned twice in the same function: duplicate code removed)

	* FAQ: updated question 1. Miaow.

	* fvwm/builtins.c (SetMenuStyle): fixed TrianglesRelief option

1998-12-28  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (MatchesConditionMask): fixed name matching broken in
	last patch

1998-12-27  Dominik Vogt  <dominik_vogt@hp.com>

	* libs/Parse.c (SkipQuote): fixed coredump (random return value)

1998-12-27  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: Changed version to 2.1.7.
	* NEWS: Ditto.

	* Released fvwm 2.1.6 beta (CVS tag version-2_1_6).

1998-12-27  Dominik Vogt  <dominik_vogt@hp.com>

	* BUGS: updated for 2.1.6

	* fvwm/fvwm2.1: updated manpage for SetMenuStyle (see below)

	* fvwm/menus.c (PaintEntry):
	(SetMenuItemSelected):
	(FPopupMenu):
	(PaintMenu): gradients work with other kinds of hilighting

	* fvwm/misc.c (GetMenuOptions): fixed select_warp (didn't work at all).

	* fvwm/windows.c:
	* fvwm/builtins.c:
	* fvwm/misc.c:
	* fvwm/menus.h:
	* fvwm/menus.c: GSFR for menus (just a small test for the real GSFR).

1998-12-26  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/move.c (moveLoop): Position in feedback window relative to
	current page, not the whole desktop

1998-12-24  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (MatchesContitionMask): rewrote the contition so that
	a mere mortal can read it (costs a few bytes though).

	* fvwm/builtins.c (MatchesContitionMask):
	* fvwm/icons.c (DeIconify):
	(Iconify): bugfix for transient iconification bug

1998-12-23  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/virtual.c (MoveViewport): moved ViewportMoved into new tmpflags

	* fvwm/add_window.c (AddWindow): IconifiedByParent flag for transient
	iconification bug

	* fvwm/fvwm2.1 (Examples): added examples for SetMenuStyle, reformatted
	SnapAttraction

	* fvwm/menus.c (do_menu):
	(menuShortcuts): replaced DOUBLECLICK_TIMEOUT with
	Scr.menus.DoubleClickTime.

	* fvwm/fvwm2.1: added description of DoubleClickTime option

	* fvwm/fvwm.c (InitVariables): added DEFAULT_POPUP_DELAY,
	DEFAULT_MENU_CLICKTIME and DEFAULT_CLICKTIME
	(InitVariables):

	* fvwm/builtins.c (SetClick): use DEFAULT_CLICKTIME if called without
	a parameter
	(SetMenuStyle): use DEFAULT_POPUP_DELAY
	(SetMenuStyle): introduced option 'DuobleClickTime'

	* fvwm/defaults.h: new file for default values that may be set
	throughout the code.

1998-12-22  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (menu_func): default-action does not need to be
	quoted anymore. Another few lines of code saved :)

	* fvwm/fvwm2.1: updated Popup syntax, corrected Menu syntax

	* fvwm/builtins.c (staysup_func):
	(popup_func):
	(menu_func): merged popup_func and staysup_func to menu_func. Popup
	menus have a default action now too. It is invoked if the user presses
	the button to invoke the popup menu but releases it before
	DOUBLECLICK_TIMEOUT expired. With keys it works the same way as with
	Menu. And it is less code too :-)

	* fvwm/fvwm2.1: corrected PopupDelay menu style documentation

	* ------ end of my changes for MenuStyle rework ------

	* fvwm/fvwm2.1: a little cleanup on 'Style'
	documented new commands DefaultFont, DefaultColors, Emulate
	documented new SetMenuStyle syntax

1998-12-21  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (ReadMenuFace): fixed coredumps: freeing NULL
	pointers for item and s_colors[i]
	(ReadMenuFace): fixed memory leak: perc not freed

	* fvwm/fvwm2.1 (Note): updated manpage for FvwmAnimate/FvwmEvent

1998-12-21  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (PaintEntry): Why the hell were the popup triangles
	placed dynamically? An offset of five pixels from the right edge of
	the menu siply has to do. The dynamic placement might put the tringle
	over the text of the menu item.

	* fvwm/builtins.c (DestroyMenuStyle): it is possible to destroy a used
	menu style. Menus using it revert back to the default menu style

1998-12-20  Dominik Vogt  <dominik_vogt@hp.com>

	* libs/Parse.c (GetTokenIndex): repaired behaviour with (len == 0)

	* fvwm/menus.c:
	DELAY_POPUP_MENUS macro removed
	switched to new MenuFace structure
	replaced c10msDelaysBeforePopup by menu-specific value PopupDelay10ms
	(MenuInteraction): fixed bug: mouse movement considered only if moved
	in x and y direction by more that three pixels

	* fvwm/resize.c (DisplaySize):
	* fvwm/add_window.c (AddWindow):
	* fvwm/builtins.c:
	* fvwm/fvwm.c (main):
	* fvwm/move.c: removed some menu dependencies

	* fvwm/builtins.c (SetGlobalStyle): new command

	* fvwm/builtins.c (SetGlobalOptions):
	* fvwm/fvwm.c (InitVariables):
	* fvwm/placement.c (PlaceWindow):
	* fvwm/screen.h (ScreenInfo): moved global options into 'go' structure
	created 'gs' structure for global styles

	* fvwm/builtins.c:
	* fvwm/functions.c (func_config):
	* fvwm/parse.h:
	* fvwm/misc.h: new command GlobalStyle

	* fvwm/move.c (DisplayPosition): removed some of the menu dependencies

1998-12-19  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/icons.c:
	(CreateIconWindow):
	(DrawIconWindow):
	removed dependencies to menu code

	* fvwm/fvwm2.1: documented DefaultFont command
	updated syntax for IconFont and WIndowFont

	* fvwm/builtins.c (ReadMenuFace): static now
	(FreeMenuFaceStyle): changes for new MenuStyle syntax
	(ReadMenuFace): fixed coredump: Pixmap/TiledPixmap without pixmap name
	(ReadMenuFace): fixem meory leaks
	(ReadMenuFace): fixed coredump: incomplete gradients freed

	* fvwm/menus.h: new structures MenuLookStyle and MenuFeelStyle,
	modified MenuFace.

	* fvwm/fvwm.c (InitVariables):
	* fvwm/screen.h (ScreenInfo): added StdGC, StdReliefGC and StdShadowGC.

	* fvwm/fvwm.c (main): modified logic for creation of SizeWindow
	(SetRCDefaults): 'DefaultFont' replaces 'WindowFont' and 'IconFont'
	in list of initial config commands

	* fvwm/screen.h: added ApplyWindowFont declaration
	(ScreenInfo): new hasIconFont and hasWindowFont

	* fvwm/parse.h:
	* fvwm/functions.c (func_config): Added 'DefaultFont' and
	'DefaultColors'

	* fvwm/builtins.c (ApplyIconFont):
	(LoadIconFont):
	(ApplyWindowFont):
	(LoadWindowFont): moved calculations based on the font into separate
	functions so that 'SetDefaultFont' may do this too.

	* fvwm/builtins.c (ChangeMenuStyle): fixed memory leaks in parsing
	(DestroyMenuStyle): cleaned up

1998-12-18  Dominik Vogt  <dominik_vogt@hp.com>

	* libs/Parse.c (GetQuotedString):
	(SkipQuote): new functions for ease of parsing.

	* ------ beginning of my changes for MenuStyle rework ------

Sun Dec 20 09:34:19 1998  DanEspen  <dje@blue>

	* fvwm/functions.c (func_config): Oops, put EdgeThickness command
	in right place in command table.  Really thought I tested that.

	* fvwm/fvwm.h: Remove #defines for PAN_FRAME_THICKNESS
	and SCROLL_REGION.

	* fvwm/misc.h: Add prototype for setEdgeThickness, and a macro
	for the args to any fvwm2 command.

	* NEWS:
	* fvwm/fvwm2.1:
	* fvwm/functions.c (func_config):
	* fvwm/virtual.c (setEdgeThickness): Add new command, "EdgeThickness
	0 | 1 | 2".

1998-12-18  Bob Woodside  <proteus@pcnet.com>

	* fvwm/placement.c (PlaceWindow): Removed checks for IconicState
	property that prevented StartsOnPage from working when an app was
	started with the -iconic argument.

1998-12-18  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/move.c (moveLoop): Remove some fprintfs left behind by
	accident.

1998-12-18  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/bindings.c (ParseBindEntry): fixed older patch to combine
	mouse and key binding parsing. Dos this prevent the key binding
	problem?

1998-12-17  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/module.c:
	* fvwm/fvwm.c: applied signal handler patches by Chris Rankin

	* fvwm/fvwm2.1: documented that EdgeScroll handles the "p" suffix too

	* fvwm/move.c (moveLoop): fixed bug: moving windows over page
	boundaries not possible if EdgeScroll 0 0 was used.

	* fvwm/menus.c: backed out my prvious patch for 'recursive' menus and
	did it another (much simpler) way. Now we ignore the popup completely
	if it is already mapped but has a parent different from the current
	menu.

	* fvwm/fvwm2.1: documented syntax changes for SetMenuStyle,
	sorted manpage

	* fvwm/menus.c:
	* fvwm/menus.h:
	* fvwm/builtins.c (ReadMenuFace): implmented visual_style for menus
	that should fix the 'menuface' bug. all traces of the former 'next'
	menu style have been eliminated.

1998-12-16  Paul D. Smith  <psmith@gnu.org>

	* libs/fvwmlib.h: Added #defines to handle the __attribute__ GCC
	extensions.  Use them normally (see the GCC manual for details)
	and they'll be removed harmlessly if you're not using an
	appropriate version of GCC.

	* DEVELOPERS: Added some notes about the automake $TAR issues.

1998-12-16  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm2.1: Updated manpage for SetMenuStyle: 'next' does not exist
	anymore.

	* fvwm/builtins.c (Recapture): Recapture now swallows all mouse and
	keyboard events (and a few others). This speeds up things dramatically.

1998-12-15  Dan Espen  <dane@mk.bellcore.com>

	* fvwm/fvwm2.1 (Note): Document the way menustyle affects the placement
	of the feedback windows.

1998-12-15  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (MatchesContitionMask): tried to fix transient icons
	bug with Next [iconic]

	* libs/System.c (getostype): Fixed uname bug for Solaris 2.6. Is this
	guaranteed to work with any every system? or could automake do
	something for us there?

	* fvwm/menus.c (MenuInteraction):
	(FPopupMenu): fixed last patch (mrDynamicPrev not set, menu not popped
	down when an item is selected)

	* fvwm/menus.c:
	(do_menu):
	(MenuInteraction):
	(PopDownMenu): Fixed bug: A menu containing itself as a 'Popup' was
	unmapped when the popup item was entered and left. Fixed this by
	introducing a new parameter to PopDownMenu: a MenuRoot to search for
	mrPopup before actually popping down.

1998-12-14  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/events.c (HandleConfigureRequest): added ' - Tmp_win->bw' that
	caused wandering FvwmBorder windows

1998-12-14  Dominik Vogt  <dominik_vogt@hp.com>

	* configure.in: Changed version to 2.1.5.
	* NEWS: Ditto.

	Released fvwm 2.1.4 beta (CVS tag version-2_1_4).

1998-12-13  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/read.c (ReadSubFunc): the piperead string was set as the last
	read filename

	* fvwm/module.c (executeModule): removed useless code:
	  if(args[nargs] != NULL)
	    free(args[nargs]);
	when args[nargs] is guaranteed to be NULL

	* fvwm/fvwm.c (SetRCDefaults): added missing comma after "SetMenuStyle"
	default

	* fvwm/builtins.c (SetMenuStyle):
	* fvwm/fvwm2.1: removed SetMenuStyle ... next. The menuface option can
	be applied to any menu style. I don't understand what this was good for
	anyway since when you specified 'next', the menu style itself
	(mwm/fvwm/win) was undefined.

	* fvwm/builtins.c (SetMenuStyle1): removed unused code

	* fvwm/misc.h: changed signature of DisplaySize

	* fvwm/events.c (HandleConfigureRequest):
	* fvwm/add_window.c (AddWindow): changed signature of ConstrainSize

	* fvwm/resize.c: made statics orig... and drag..., xmotion, ymotion
	parameters to DoResize/ConstrainSize, moved static globals last_...
	into DisplaySize and introduced a parameter to reset them.

	* fvwm/misc.h: removed DoResize from header file (this cannot be safely
	called from outside resize.c!)

	* fvwm/add_window.c:
	* fvwm/resize.c:
	* fvwm/events.c: even more debug code

	* fvwm/resize.c (MoveOutline): removed duplicate code

1998-12-12  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/add_window.c:
	* fvwm/resize.c:
	* fvwm/events.c: added massive debug information

	* libs/debug.c: corrected typo: HAVE_VPRINTF -> HAVE_VFPRINTF

	* fvwm/Makefile.am (fvwm2_SOURCES):
	* fvwm/fvwm.h:
	* fvwm/fvwmdebug.h:
	* fvwm/fvwmdebug.c: added debug stuff (for main module only)

	* fvwm/FAQ: corrected some typos, added FAQ for the
	click-in-a-window-to-raise-it question.

	* fvwm/fvwm2.1:
	* BUGS: documented problem with keyboard shortcuts in Xnest

1998-12-11  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm2.1: Documented menu hotkeys

1998-12-11  Tim Phipps  <tim@quadrics.com>

	* modules/FvwmWinList/*: Without mini-icons text is centred by default.
	Fixed Focus colouring.  Added DontDepressFocus config variable.
	Fixed relief drawing.

1998-12-11  Bob Woodside <proteus@pcnet.com>

	* fvwm/events.c:  Fixed "window under mouse at startup doesn't
	get focus" bug - suppressed stashing the event time if an old
	LeaveNotify was found on the queue.

1998-12-10  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/move.c (et al.): Applied updated SnapAttraction patch but put
	the SnapAttration stuff in a new function called DoSnapAttract to save
	us duplicate code.

1998-12-09  Paul D. Smith  <psmith@gnu.org>

	* fvwm/fvwm2.1: Clarify the uses and abuses of the Exec function.

1998-12-09  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (ReadButtonFace): Removed MiniIcons memory leak fix.
	No chance to get this stable without a rewrite of large parts of code.

	* libs/ColorUtils.c (color_mult): applied fix by Adam Rice that caused
	some colours to be wrong

1998-12-09  Bob Woodside  <proteus@pcnet.com>

	* fvwm/virtual.c (GetDeskNumber): changed parsing to restore old
	behavior of Desk cmd with a single arg, fixed handling of 4 args.

	* fvwm/functions.c: removed WindowsDesk command.

	* modules/FvwmPager/x_pager.c: changed to use MoveToDesk
	instead of WindowsDesk command.

	* fvwm/fvwm2.1: clarified description of Desk cmd, documented
	WindowsDesk as obsolete.

1998-12-09  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (add_item_to_decor): a little clean up
	(SetBorderStyle): fix for MiniIcon coredump
	(SetBorderStyle): fix for MiniIcon coredump

	* fvwm/resize.c: don't wait for buttons up before resizing a window
	when initially placing it

	* fvwm/move.c (moveLoop): a little clean up
	(DisplayPosition): a little clean up
	(Keyboard_shortcuts): patch to make cursor key work when placing
	windows invoked from a menu
	(Keyboard_shortcuts): removed old reference to menu code (not called
	anymore from there).

	* fvwm/misc.h:
	* fvwm/builtins.c (DeferExecution):
	* fvwm/resize.c (resize_window):
	* fvwm/move.c (Keyboard_shortcuts):
	(moveLoop): patch to Keyboard_shortcut (was used for other things than
	move/resize which didn't work well).

1998-12-08  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (menuShortcuts): fixed coredump with isgraph

	* fvwm/resize.c:
	Removed globals constrainx/constrainy. Calculate them in ConstrainSize
	when needed. This fixes the growing windows bug. Had to change the
	signature of ConstrainSize.

	* fvwm/misc.h:
	* fvwm/resize.c (resize_window):
	(DoResize):
	(ConstrainSize):
	* fvwm/add_window.c (AddWindow):
	(AddWindow):
	* fvwm/builtins.c (Maximize):
	* fvwm/events.c (HandlePropertyNotify):
	(HandleConfigureRequest):
	added new parameter fNoConstrain to ConstrainSize function

1998-12-05  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (ReadButtonFace): fixed memory leak (?)
	(SetEnv): fixed memory leak

	* fvwm/windows.c (do_windowList): DestroyMenu called as soon as
	possible (might cause problems with WindowList as doubleclick action).

1998-12-02  Paul D. Smith  <psmith@gnu.org>

	* fvwm/fvwm.c (main): Add FVWM_MODULEDIR to the environment
	containing the default module directory.
	* fvwm/fvwm2.1: Document it.

	* archive/purify/purify.fvwm2rc: Comment out things that cause
	heap corruption, until they can be fixed.

	* fvwm/icons.c (Iconify): Initialize winattrs to empty to avoid
	possible uninitialized memory reads in your_event_mask.

	* fvwm/colors.c (AllocLinearGradient): Added an error message for
	invalid npixels.

1998-12-01  Paul D. Smith  <psmith@gnu.org>

	* fvwm/builtins.c (AddTitleStyle): Free the parm string each time
	through the loop.

	* fvwm/menus.c (DestroyMenu): Free the menu name string.

	* fvwm/builtins.c (set_animation): Free the first option string.

	* fvwm/bindings.c (remove_binding): Free the key_name and Action
	strings when deleting the binding.

	* fvwm/windows.c (do_windowList): Make sure to free func, if not
	already freed.  Use tfunc to contain the menu title, not tlabel
	(which is fixed-size).

	* libs/Parse.c (GetOnePercentArgument): Free the token returned
	from GetNextToken().

	* fvwm/builtins.c (ReadButtonFace): Free the perc array.

	* fvwm/fvwm.c (DestroyFvwmDecor): Free the Decor font if one was
	allocated.

	* fvwm/builtins.c (SetMenuStyle): Free the StdFont before
	resetting it.

	* libs/Parse.c (DoGetNextToken): Cast chars to unsigned before
	using the is*() functions on them, to handle 8-bit chars
	correctly.
	(PeekToken): Ditto.

1998-11-30  Paul D. Smith  <psmith@gnu.org>

	* fvwm/colors.c (nocolor): Make sure we don't call fvwm_msg with a
	NULL ptr for a string.

1998-11-30  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Changed version to 2.1.4.
	* NEWS: Ditto.

	Released fvwm 2.1.3 beta (CVS tag version-2_1_3).

1998-11-30  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm.c (main): removed unused option -outfile

	* fvwm/fvwm2.1: added description for undocumented options -blackout
	and -h. Fixed type (ame -> same)

	* fvwm/fvwm.c (StartupStuff): removed old ClickTime patch (the new one
	is more rigorous).

1998-11-29  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (SetClick):
	* fvwm/fvwm.c (InitVariables):
	(main):
	More speedup with ClickTime during startup. A negative value will
	becone positive when the event loop is entered (before that the user
	cannot give input anyway).

	* fvwm/fvwm.h:
	* fvwm/fvwm.c: added global flag fFvwmInStartup. This is set to False
	when the event loop is entered.

1998-11-28  Dominik Vogt  <dominik_vogt@hp.com>

	* TODO: updated

	* fvwm/events.c: reindented some code
	(HandleConfigureRequest): Phew, after a 10 hour debug session I was
	finally able to surround and bag the xterm/active icon/resize bug.
	Xterm sends a configure request to resize the icon pixmap window, but
	HandleConfigureRequest dealt with the icon window only. Now what was
	this fuzz about growing windows bugs? Bring 'em on :-[
	(HandleEnterNotify): removed garbage (old ifdef).
	(GetContext): a little speedup

1998-11-27  Bob Woodside  <proteus@pcnet.com>

	* fvwm/fvwm.c, fvwm/fvwm2.1: changed GlobalOpts default from
	ActivePlacementIgnoresStartsOnPage to ActivePlacementHonorsStartsOnPage.

1998-11-27  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/fvwm2.1: entry for 'Direction'

	* fvwm/events.c (HandleMapNotify): changed logic for new
	click-to-focus windows to receive focus (as hinted at by Tim Phipps).

1998-11-26  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (DirectionFunc): implemented ne, se, sw, nw; based
	scoring function of window centers.

	* libs/Parse.c (GetTokenIndex): fixed a coredump with an empty list
	or token

	* fvmw/**: applied patches by Tim Phipps (see below)

	* fvwm/builtins.c (focus_func): cleaned up
	(flip_focus_func): cleaned up

	* fvwm/fvwm2.1: changes on FlipFocus/Focus/WindowList

	* fvwm/focus.c (SetFocus): fixed SetFocus so that calling Focus from a
	function moves the windowlist around to make the target window appears
	at the top of the windowlist.

	* fvwm/windows.c (do_windowList): Applied alt-tab/unsort windowlist fix

	* fvwm/builtins.c (DirectionFunc): fixed coredump (empty direction)

1998-11-24  Dominik Vogt  <dominik_vogt@hp.com>

        * fvwm/windows.c (do_windowList): applied alt-tab patch by Tim Phipps

1998-11-24  Paul D. Smith  <psmith@gnu.org>

	* fvwm/functions.c (FindBuiltinFunction): Cast the return value
	for systems where bsearch() isn't declared to return void*.

	* acconfig.h: Include malloc.h if it's found, and we don't have
	STDC_HEADERS (just in case).

	* libs/ModParse.h (LFindToken):  Remove this macro.  It's not
	used, and it uses a non-standard function lfind().  Best to not
	use it at all.
	(search.h): Removed #include.

1998-11-24  Dan Espen  <dane@mk.bellcore.com>

	*   fvwm/builtins.c  (SetColorLimit):  Check    return  code  from
 	GetIntegerArguments not equal 1 for arg parse failure test.

1998-11-24  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/virtual.c (checkPanFrames): made sure appropriate pan frames
	are visible (Tim Phipps)

	* fvwm/fvwm.h: cleaned up some pan frame stuff (Tim Phipps)

	* fvwm/add_window.c (AddWindow):
	applied border width patch by Tim Phipps

	* fvwm/builtins.c (SetDeskSize):
	replaced GetTwoArguments with GetIntegerArguments and
	GetRectangleArguments, some cleanup
	(movecursor): rewrote function to get consistent behaviour.

	* fvwm/builtins.c (SetEdgeResistance):
	* fvwm/virtual.c (goto_page_func):
	* fvwm/move.c (move_window_doit):
	replaced GetTwoArguments with GetIntegerArguments

	* fvwm/misc.c:
	* fvwm/misc.h:
	* libs/Parse.c:
	* libs/fvwmlib.h:
	moved GetOneArgument and GetTwoArguments to libs/Parse.c and renamed
	them to Get...PercentArgument(s). GetTwoArguments remains as a wrapper
	to GetTwoPercentArguments. Added GetRectangleArguments function.

1998-11-23  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/misc.c (GetOneArgument): rewrote function to do something
	useful

	* fvwm/builtins.c (DirectionFunc): applied patch for better scoring
	funtion.

	* fvwm/builtins.c (iconify_function):
	(SetClick):
	(SetColorLimit):
	(SetSnapAttraction):
	(SetOpaque):
	* fvwm/module.c (set_mask_function):
	replaced GetOneArgument with GetIntegerArguments

1998-11-22  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c: Fixed broken string (contained a newline)

	* extras/FvwmCommand/FvwmCommand.c: fixed >= comparison on pointer

	* modules/FvwmButtons/FvwmButtons.c: fixed pager breakage bug

	* fvwm/bindings.c (Parse...Entry): fixed compile error (void returned)

1998-11-23  Dan Espen  <dane@mk.bellcore.com>

	* NEWS: Moved stuff from end of old ChangeLog into the NEWS file.

1998-11-22  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/**:
	* libs/**: removed trailing spaces from the files I touched since 11-20

	* fvwm/fvwm.c (StartupStuff): Added call to checkPanFrames to make
	page flipping via EdgeScroll work with FvwmCpp too.

	* fvwm/misc.c (Destroy): remove window from window list before doing
	anything else. Should fix race condition coredump with
	Close/Delete/Destroy.

	* TODO: updated

	* FAQ (44): added section for FvwmButtons/Swallow

1998-11-21  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (AddToMenu): fixed uninitialised memory read in item2
	and s.

	* fvwm/builtins.c (DirectionFunc):
	(Circulate): fixed free of possible NULL pointer.

	* fvwm/style.c (ProcessNewStyle): fixed uninitialised memory read:
	'BUTTON'/'NOBUTTON' with invalid button number

	* fvwm/add_window.c (AddWindow): fixed uninitialised memory read:
	attributes.background_pixmap not set.

	* libs/Parse.c (DoGetNextToken): cleaned up a bit because of the
	array bounds violation in SetGlobalOptions, but I don't believe that
	fixes it. Reformatted for further debugging.

	* fvwm/functions.c (find_func_type): a little speedup

1998-11-20  Bob Woodside  <proteus@pcnet.com>

	* add_window.c
	* placement.c
	* style.c
	Fixed StartsOnDesk/StartsOnPage bug that prevented a desk or page
	specification of -1 from working.

	* AUTHORS:  added entry.

1998-11-20  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/complex.c (expand): a little speedup

	* fvwm/functions.c (ExecuteFunction): a little speedup

	* fvwm/menus.c (NewMenuRoot):
	(FMenuMapped):
	fixed uninitialised memory reads

	* fvwm/menus.c (NewMenuRoot):
	put parentheses around macro parameters

	* fvwm/menus.c (NewMenuRoot):
	(MakeMenu):
	* fvwm/windows.c (do_windowList):
	* fvwm/misc.h:
	* fvwm/builtins.c (add_item_to_func):
	(add_item_to_menu):
	changed NewMenuRoot signature

	* configure.in: Version 2.1.2 released (CVS tag = version-2_1_2)
	and current version bumped to 2.1.3.

1998-11-19  Dominik Vogt  <dominik_vogt@hp.com>

	* libs/envvar.c (strIns): fixed array bounds read viaolation

	* fvwm/menus.c (AddToMenu): multiple tabs allowed between left and
	right part of menu item name; all other tabs are replaced by spaced

	* fvwm/fvwm2.1: updated AddToMenu/AddToFunc syntax

	* fvwm/builtins.c (CreateFlagString):
	(FreeConditionMask):
	(DefaultConditionMask):
	(CreateConditionMask):
	(MatchesContitionMask):
	(Circulate):
	(DirectionFunc):
 	Applied 'Direction' patch (added and modified some functions).

	* fvwm/builtins.c (SetMenuStyle): fixed coredump (NULL action
	referenced with NEXT style).

1998-11-18  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/move.c (moveLoop): Applied SnapAttraction update patch

	* fvwm/resize.c (resize_window):  fixed bug that prevented moving from
	a mouse button from working with ClickToFocus

	* fvwm/move.c (moveLoop): Applied SnapAttraction patch.
	(moveLoop): fixed bug that prevented moving from a mouse button from
	working with ClickToFocus

	* fvwm/builtins.c (SetMenuStyle1): fixed memory leak

	* fvwm/menus.c (MakeMenu): bugfix: Titles in newmenu patch drawn too
	far right.

	* fvwm/**: Applied newmenu patch by German Gomez Garcia.

1998-11-18  Paul D. Smith  <psmith@gnu.org>

	* fvwm/menus.c (NewMenuRoot): Initialize the in_use flag.

	* fvwm/builtins.c (ReadButtonFace): Don't free() NULL pointers.
	(CursorStyle): Message was printing already-freed memory; don't
	free until afterwards.

1998-11-17  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/misc.c (Destroy): applied mini-icon compile patch by Tim Phipps

Mon Nov 16 20:30:16 1998  DanEspen  <dje@blue>

	* libs/ColorUtils.c (BRIGHTNESS_FACTOR): Set adjustment factors
	to fvwm2 defaults instead of scwm numbers.

Sun Nov 15 12:24:12 1998  DanEspen  <dje@blue>

	* NEWS: Document shadow/hilite change.

1998-11-15  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (wait_func): Wait builtin can be aborted with
	Control-Escape.
	(movecursor): fixed bugs: cursor move didn't work on edge of screen;
	didn't compile if NON_VIRTUAL is defined

1998-11-14  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (CursorStyle): fixed coredump
	(echo_func): empty line is ok now
	(set_animation): rewrote parser to fix coredump (empty config line)
	(SetMenuStyle): fixed 'exit' if no font is given
	(add_item_to_func): fixed coredump (empty config line)
	(add_item_to_menu): empty name not allowed

Sat Nov 14 19:56:11 1998  DanEspen  <dje@blue>

	* libs/Picture.c: Made  PictureCMap and PictureSaveDisplay globals
 	so ColorUtils.c can see the result of calling InitPictureCMap.

	* libs/fvwmlib.h:  moved   GetShadow,  GetHilite  prototypes  from
 	fvwm/misc.h

	* fvwm/misc.h:  moved    GetShadow,   GetHilite  prototypes  to
 	libs/fvwmlib.h

	* fvwm/builtins.c: Removed  funny use of  externs  for the strings
 	"black" and "white".

	* libs/Makefile.am (libfvwm_a_SOURCES): Added ColorUtils.c,
	got automake, now generating Makefile.in.

	* fvwm/colors.c: moved GetShadow, GetHilite to libs/ColorUtil.c.

1998-11-13  Bob Woodside  <proteus@pcnet.com>

	* Upgraded FvwmCommand to 1.5.1 and FvwmConsole to 1.3 - the latest
	versions from Toshi Isogai.

	* Added the StackingOrder rewrite

1998-11-12  Dan Espen  <dane@mk.bellcore.com>

	* Under the sample.fvwmrc directory, removed everything in the
	BradyMontz directory.  This kind of "theme" stuff will be distributed
	separatly.

1998-11-12  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/misc.c (free_window_names): simplified code
	(Destroy): fixed memory leaks: icon_maskPixmap and mini_icon were
 	not free'd

	* fvwm/add_window.c (AddWindow): removed stripcpy patch. Old stuff was
	ok.

	* fvwm/menus.c (AddToMenu): fixed memory leak (freeing menu items)

	* fvwm/read.c (ReadSubFunc): coredump fix and a little cleanup

1998-11-11  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (menuShortcuts): removed call of Keyboard_shortcuts
	(dosn't make sense).

	* fvwm/move.c (Keyboard_shortcuts): fixed coredump when no window
	has the focus (e.g. possible with menus and MouseFocus policy).

	* fvwm/bindings.c (ParseKeyEntry): Speedup for Key binding parsing
	(ParseBindEntry): Merged ParseMouseEntry and ParseKeyEntry.

	* fvwm/menus.c (FreeMenuItem): function added

1998-11-10  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MakeMenu): Border size fix by Ryomi Murai
	(PaintEntry): Drawing fixes by Ryomi Murai

	* fvwm/move.c (move_window_doit):
	* fvwm/misc.c:
	* fvwm/misc.h:
	* fvwm/fvwm2.1:
	Applied Warp option patch for Move by Tim Phipps (see below).

	* fvwm/misc.{c,h}: changed GetPositionArguments to GetMoveArguments
	and added parsing for optional Warp flag for Move/AnimatedMove

	* fvwm/move.c: Added optional Warp flag for Move/AnimatedMove

	* fvwm/fvwm2.1: Documented optional Warp flag for Move/AnimatedMove

1998-11-10  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c (SetMenuStyle): fixed memory leak.
	(SetXOR): fixed memory leak
	(ReadButtonFace): fixed memory leak.

	* fvwm/menus.c (MakeMenu): fixed memory leak.

	* fvwm/add_window.c (AddWindow): fixed XGetCommand memory leak.

	* fvwm/add_window.c (AddWindow): I think I fixed the XGetWMName
	memory leak. The manpage doesn't say that the name storage must be
	free'd, but it does not coredump and is hinted at by other manpages(?)

1998-11-09  Dominik Vogt  <dominik_vogt@hp.com>

	* FvwmButtons/parse.c (seekright): switched to new syntax of
	DoGetNextToken.

	* modules/FvwmIconMan/readconfig.c: Fixed bug that prevented function
	lists from working if they contained a comma. Fixed a memory leak too.

	* libs/Parse.c (DoGetNextToken): Added parameter to return the
	character that ended the string.

Mon Nov  9 18:51:19 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* Makefile.am (EXTRA_SUBDIRS): Removed textures from list of SUBDIRS.

1998-11-09  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/move.c: Applied the bugfix for the move-lagging-behind
	problem.

	* modules/FvwmRearrange: new module added (merged FvwmTile and
	FvwmCascade).

	* fvwm/fvwm2.1: updated and cleaned up the manpage, reformatted
	examples to a consistent style

1998-11-08  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/resize.c (resize_window):
	* fvwm/move.c (moveLoop):
	Cleaned up aborting with a mouse button:
	If the move/resize started with a button down, pressing any button
	aborts the operation. If no button was down, pressing button 1 confirms
	the operation, any other button aborts.

	* fvwm/builtins.c (SetClick):
	* fvwm/modconf.c (SendDataToModule):
	* fvwm/fvwm.c (StartupStuff): Patch to speed up (re)starting fvwm.
	Scr.ClickTime is set to -Scr.Clicktime so functions that use this
	value do not wait for user input. Saves some seconds during startup,
	depending on the ClickTime value in the startup file.

	* libs/Picture.c (CachePicture):
	* fvwm/modules.c (executeModule):
	fixed bugs introduced during the merge on saturday

1998-11-08  Paul D. Smith  <psmith@gnu.org>

	* fvwm/icons.c (GetXPMFile): Free pixmap after use.

1998-11-07  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/menus.c (MenuInteraction): fixed bug with non-animated
	fvwm-menus and <left> in a submenu

	* fvwm/windows.c: removed obsolete code, added safety checks

	* libs/Picture.c (GetPicture):
	(CachePicture):
	(findIconFile):
	fixed memory leak

	* fvwm/move.c (moveLoop): fixed move from button menu

	* fvwm/resize.c (resize_window): fixed resize from button menu

	* fvwm/bindings.c:
	* fvwm/builtins.c:
	* fvwm/complex.c:
	* fvwm/functions.c:
	* fvwm/menus.c:
	* fvwm/misc.c:
	* fvwm/modconf.c:
	* fvwm/module.c:
	* fvwm/read.c:
	* fvwm/style.c:
	* modules/FvwmIconMan/readconfig.c:
	* libs/Parse.c:
	Changed behaviour of GetNextToken() to fix memory leaks.
	Some parsing stuff may be instable now (coredumps!)

1998-11-06  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/module.c (executeModule): fixed memory leaks

	* fvwm/modconf.c (DestroyModConfig): fixed memory leaks

	* fvwm/menus.c (MrPopupForMi): some optimizing and cleanup
	(GetPopupOptions): some optimizing, fixed memory leak

	* libs/Parse.c (CmpToken): removed old code: GetToken() and old
	version of GetNextToken.
	(SkipNTokens): Added for smoother parsing.

	* fvwm/functions.c (ExecuteFunction): Cleanup for mem-leakage
	fixes.

Sat Nov  7 02:01:41 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: Version 2.1.1 released (CVS tag = version-2_1_1)
	and current version bumped to 2.1.2.

1998-11-06  Paul D. Smith  <psmith@gnu.org>

	* fvwm/Makefile.am (fvwm2_DEPENDENCIES): Add a dependency on libfvwm.a.

	* libs/Picture.c (CachePicture): Free the pathname returned by
	findIconFile().

	* libs/fvwmlib.h (DB): New debugging/logging definitions.

	* libs/debug.c: New file for a uniform debugging library.
	* libs/Makefile.am (libfvwm_a_SOURCES): Build it.

	* fvwm/fvwm.c (ResetAllButtons): Rewrote to be a bit faster.  Make
	sure we reset the button flags in addition to the rest of the button.

	* configure.in: Add missing checks for memmove(), memcpy(), and
	strchr().  Check also for malloc.h vs. stdlib.h headers, and
	change to positive check for string.h instead of strings.h--we
	want to use the former where possible.  Check for vfprintf().

	* acconfig.h: Rework definitions for memmove() and memcpy() (note
	that some systems (SunOS) have memcpy() but not memmove(), so
	check them separately).  Rework header inclusion based on
	tried-and-true methods from GNU make's configuration.

	* fvwm/menus.c (scanForPixmap): Don't define or malloc()
	save_instring unless we're going to use it
	(UGLY_WHEN_PIXMAPS_MISSING is defined).  Also, make sure to always
	free it (we had a bad memory leak here).

1998-11-05  Bob Woodside  <proteus@pcnet.com>

	* folded in StartsOnPage style modifications.

1998-11-05  Paul D. Smith  <psmith@gnu.org>

	* configure.in: Check for the div() function (for extras/FvwmScript).
	Remove check for stdarg.h; we'd need a lot fancier config to allow
	the use of varargs.h or something else; for now assume we have it.

	* fvwm/module.c (make_vpacket): New function: creates a module
	packet from a va_list.  This is the most basic function: all
	packet creating functions will eventually call this one to (at
	least) fill in the header information.  This is the only place
	that's done, now.
	(make_packet): A variadic function that uses make_vpacket() to
	construct the packet.
	(SendPacket): A generic function to send a packet to a module.
	Rewrite to be variadic instead of taking a set number of
	arguments. Use make_vpacket() to construct the packet.
	(BroadcastPacket): Renamed from Broadcast(), and removed
	Broadcase_v() which is now redundant.  A variadic function to
	broadcast a packet to all modules.  Use make_vpacket() to
	construct the packet.  Rewrote to construct the packet first, then
	send the same one to all modules, rather than calling SendPacket()
	multiple times (each time reconstructing the same packet).
	(CONFIGARGS): New macro to provide the arguments for the Config
	packet.
	(SendConfig): Rewrote to invoke SendPacket() passing the proper
	config arguments (uses CONFIGARGS).
	(BroadcastConfig): Rewrote to invoke BroadcastPacket() passing the
	proper config arguments (uses CONFIGARGS).
	(make_named_packet): A generic function to construct a packet
	where the last item is a name (variable length string).  Takes a
	name and a variable number of arguments.  Uses make_vpacket().
	(SendName): Use make_named_packet() to construct the packet to
	send.
	(BroadcastName): Use make_named_packet() to construct the packet
	to send.  Only construct it once, then send that same data to each
	module, rather than reconstructing it each time.
	(SendMiniIcon): Use make_named_packet() to construct the packet to
	send.
	(BroadcastMiniIcon): Use make_named_packet() to construct the packet
	to send.  Only construct it once, then send that same data to each
	module, rather than reconstructing it each time.
	(send_list_func): Remove padding arguments from SendPacket()
	invocations.

	* fvwm/virtual.c (MoveViewport): Call new BroadcastPacket().
	(changeDesks): Call new BroadcastPacket().

	* fvwm/move.c (move_window_doit): Call new BroadcastPacket().

	* fvwm/misc.c (Destroy): Call new BroadcastPacket().
	(RaiseWindow): Call new BroadcastPacket().

	* fvwm/icons.c (AutoPlace): Call new BroadcastPacket().
	(DeIconify): Call new BroadcastPacket().
	(Iconify): Call new BroadcastPacket().

	* fvwm/events.c (HandleFocusIn): Call new BroadcastPacket().
	(HandlePropertyNotify): Call new BroadcastPacket().
	(HandleMapNotify): Call new BroadcastPacket().
	(HandleConfigureRequest): Call new BroadcastPacket().

	* fvwm/builtins.c (WindowShade): Call new BroadcastPacket().
	(SetDeskSize): Call new BroadcastPacket().

	Fix errors found by Purify:

	* fvwm/module.c (SendName): Zero out the end of the message to
	avoid uninitialized memory reads.

	* fvwm/decorations.c (GetOlHints): Don't free(NULL).  This is OK
	in ANSI C, but it's not completely portable.

	* libs/Picture.c (CachePicture): Don't look past the end of
	allocated memory.
	(LoadPicture): Free pixmaps when we're done with them.

	* fvwm/builtins.c (SetMenuStyle): Free a previous font if it exists.
	(LoadIconFont): Same.
	(LoadWindowFont): Same.

	* fvwm/fvwm.c (InitVariables): Initialize Scr.IconFont.
	(InitFvwmDecor): Set TitleHeight and the font pointer since
	otherwise they might be used uninitialized (in LoadWindowFont).

1998-11-05  Steven Michael ROBBINS  <stever@jeff.cs.mcgill.ca>

	* libs/XResource.c (MergeCmdLineResources): DEC's compiler claims
	that a '&' in front of the array "default_opts" is ignored, so I
	removed it.

	* libs/System.h: Removed.
	* libs/System.c: Removed mygethostname(), replaced with
	gethostname.c from some GNU utils package.  Renamed mygetostype()
	to just getostype(), in parallel with gethostname().

	* libs/Strings.c: Pulled out mystrcasecmp() and mystrncasecmp() to
	their own files.

	* libs/Parse.c (PeekToken): Add const qualifier to variable 'p' to
	stop pstr from losing its constness.

	* fvwm/style.c: Cast arguments to memcpy() to placate gcc on DEC
	alpha.

	* fvwm/module.c: Explicit checks for the presence of <stdarg.h> or
	<varargs.h>.  If using <stdarg.h>, use the two-argument form of
	va_start(), otherwise the single-argument form.

	* fvwm/menus.c (menuShortcuts): Fixed parameters in call to
	XLookupString().

	* fvwm/fvwm2.1: Replace references to Fvwm.tmpl with current
	equivalents.  Other fixes from Austin Donelly.

	* fvwm/functions.c (func_comp): Put const qualifiers on the
	arguments, to match requirements for bsearch().

	* fvwm/builtins.c: Moved strerror() function to libs/strerror.c.

	* libs/sleep.c: Removed and globally changed sleep_a_little() to
	usleep().

	* libs/gethostname.c:
	* libs/strerror.c:
	* libs/usleep.c:
	* libs/strcasecmp.c:
	* libs/strncasecmp.c:

	* libs/Makefile.am: Added the above files.  Each file is compiled
	into libfvwm only if the system libraries are missing the
	corresponding function.  Globally replaced the "my"-version of
	these functions with the standard one.

	* include config.h: Moved #include to the top of the file in some
	but not yet all the files that include config.h.

	* main: All main() functions return int rather than void.

	* symbols: Changed the ifdefs around header includes to read
	#if HAVE_FOO_H, rather than a maze of machine-type symbols.

	* sun_headers.h:
	* sunos_headers.h:
	* alpha_header.h: Removed all traces of these.  Removed
	declarations of system functions when a conflict noticed.

	* configure.in: Require autoconf 2.12 as prerequisite.  Changed
	version string to 2.1.1.  Added more checks.

	* acconfig.h: Code to define str[r]chr and mem{cpy,move} if not
	available.  Removed obsolete FVWM_INLINE and globally replaced
	with "inline".

	* Makefile.am (AUTOMAKE_OPTIONS): Set to 1.3b, so that automake
	complains if it is too old.

	* utils/xpm-reduce.c
	* utils/xpm-reduced-rgb.txt: removed; obsoleted by a runtime
	colour reduction scheme.

1998-11-04  Paul D. Smith  <psmith@gnu.org>

	* Fix problems discovered by Purify:

	* fvwm/menus.c (MenuInteraction): Don't try to call
	GetPopupOptions() until we know we're looking at a popup menu.

	* fvwm/misc.c (GetOneMenuPositionArgument): If the returned token
	is an empty string, don't try to parse it.

1998-11-04  Dominik Vogt <dominik_vogt@hp.com>

	* fvwm/fvwm2.1:
	* fvwm/builtins.c (stick_function):
	* fvwm/move.c (move_window_doit):
	Change for 'Stick' to allow to make windows sticky that are on
	a different screen.

	* modules/FvwmAudio/FvwmAudio.c:
	* modules/FvwmEvent/FvwmEvent.c: Fixed rplay build problem

	* modules/FvwmEvent/Makefile.in (mkinstalldirs):
	Added missing rplay library to link options

	* fvwm/menus.c (FPopupMenu):
	Fixed broken left menus with mwm/noanimation style when near the
	right edge of screen.

1998-11-04  Dan Espen  <dane@mk.bellcore.com>

	* TODO: Renamed TO-DO to standard name TODO

	* NEWS: Added web docs.html to end of NEWS file.

Wed Nov  4 11:09:11 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* added some files to cvs: modules/ChangeLog, extras/ChangeLog,
	NEWS, and AUTHORS.

	* DEVELOPERS: replaces README.autoconf.

1998-11-04  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/events.c (HandlePropertyNotify): Fixed the fix
	for TransientFor Bug

	* extras/fvwmperl/*: Added correct copyright notices.

1998-11-03  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/events.c (HandlePropertyNotify):
	Added bugfix for TransientFor problem by Duane Guingrich.

	* TO-DO (Cleanups): Updated the TO-DO list

	* fvwm/misc.c (GetPositionArguments):
	Added MkLinux fix from Mike Tilstra

Tue Nov  2 00:35:30 1998  Dominik Vogt  <dominik_vogt@hp.com>

	* fvwm/builtins.c:
	* fvwm/complex.c:
	* fvwm/menus.c:
	* fvwm/move.c:
	* fvwm/placement.c:
	* fvwm/resize.c:
	fixed XBell bug

	* modules/FvwmButtons/CHANGES:
	* modules/FvwmButtons/FvwmButtons.h:
	* modules/FvwmButtons/FvwmButtons.1:
	* modules/FvwmButtons/TODO:
	* modules/FvwmButtons/button.c:
	* modules/FvwmButtons/draw.c:
	* modules/FvwmButtons/parse.c:
	Left/Right/Center option for buttons, did some cleanup

	* ...:
	cleaned up lots of files for lclint

Sun Nov  1 12:52:59 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* sample.fvwmrc/system.fvwm2rc*: Removed the lines setting
	ModulePath, IconPath, and PixmapPath, since the compiled-in
	defaults can be set using configure.

Sun Nov  1 12:26:01 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* modules/FvwmM4/FvwmM4.c (m4_defs):
	* modules/FvwmCpp/FvwmCpp.c (cpp_defs): Split FVWMDIR definition
	into FVWM_MODULEDIR and FVWM_CONFIGDIR.

Sun Nov  1 09:54:14 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* extras/FvwmTaskBar/Goodies.c: Restored Goodies.c from -r 1.1 of
	the repository.

	* libs/Picture.c (GetPicture): Removed the #ifdef NotUsed from
	around this function.  Appended "int color_limit" to the list of
	parameters.  Restored GetPicture() declaration to fvwmlib.h.

	* extras/FvwmTaskBar/Start.c: Fixed call to GetPicture function,
	using "-1" as the color_limit (i.e., no color limit).

Sun Nov  1 09:19:08 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* configure.in: Set VERSION to 2.1.0.

Sat Oct 31 06:44:50 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* Basic autoconfiguration support added.

Sat Oct 31 06:02:37 1998  Steve Robbins  <steve@nyongwa.montreal.qc.ca>

	* modules/FvwmCpp:
	* modules/FvwmM4: Changed FVWMDIR to FVWM_MODULEDIR.

