2001-02-25 Dan Espen * fvwm/fvwm.c (main): Read commands from config files without doing XSync on each comamnd. (Speed up.) * NEWS: Add speedup to NEWS. 2001-02-21 Mikhael Goikhman * fvwm/fvwm2.1: fixed the description of Focus, added example; use Next () instead [] * README: added a link to www.fvwm.org 2001-02-21 Dominik Vogt * fvwm/fvwm.h: fixed type mismatches 2001-02-03 Dominik Vogt * fvwm/read.c (ReadSubFunc): fixed a core dump when using read or the -f option with an abosulute path 2001-01-19 Dominik Vogt * fvwm/read.c (ReadSubFunc): security fix by Tilmann Boess; do not use the .fvwm2rc from . if HOME variable is not set 2000-05-31 Dominik Vogt * fvwm/placement.c.orig (SmartPlacement): some minor fixes in smart placement 2000-01-13 Dan Espen * .cvsignore: Add .cvsignore to try to stop things coming out of the attic spontaneously. Remove generated file, configure. 2000-01-10 Dan Espen * libs/Picture.c: Fix colorlimit for case when there is only monochrome or grayscale in the pixmap. 1999-11-30 Dominik Vogt * configure.in: set version to 2.2.5. 1999-10-19 Dominik Vogt * configure.in: set version to 2.2.4. 1999-10-02 Mikhael Goikhman * fvwm/fvwm.c (StartupStuff): add support for StartFunction * fvwm/function.c (setPath, setImagePath): new functions for ImagePath * NEWS, fvwm/fvwm2.1: document StartFunction & ImagePath support * fvwm/events.c (HandlePropertyNotify): fix cut-and-paste typo 1999-10-02 Dominik Vogt * fvwm/events.c (HandlePropertyNotify): limits names of icons/windows to 200 characters to prevent hanging X server 1999-22-06 Dominik Vogt * fvwm/move.c (InteractiveMove): Small interactive move fix (bug #377) Thu May 27 07:38:11 1999 DanEspen * fvwm/fvwm2.1 (EdgeThickness): Updated man pages, EdgeThickness can be used at any time. * NEWS: Updated news for 2.2.2 release. * fvwm/complex.c (expand): Applied patch from Brad for empty args. 1999-05-10 Steven Michael ROBBINS * configure.in: set version to 2.2.2. 1999-05-10 Steven Michael ROBBINS * utils/fvwmrc_convert: fixes by Julian Gilbey; updated to cvs version 1.4. 1999-03-17 Steven Michael ROBBINS * INSTALL.fvwm: add note about include directories for optional libraries. 1999-03-16 Dominik Vogt * fvwm/menus.c (DoMenusOverlap): Use real numbers for the width modifier to avoid excessive roundoff. 1999-02-28 Matthias Clasen * 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-26 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/placement.c: fixed wandering on restart/recapture caused by old_bw being ignored. 1999-02-25 Paul D. Smith * configure.in: Updated for 2.2.1. * NEWS: Updated for 2.2.1. 1999-02-22 Dominik Vogt * 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 * configure.in: Updated for 2.2 * NEWS: updated for 2.2 * fvwm/fvwm2.1: swapped 'Read' and 'Recapture' 1999-02-18 Dominik Vogt * 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 * 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 * configure.in: updated for 2.1.14 1999-02-16 Dominik Vogt * 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 * fvwm/functions.c (FindBuiltinFunction): (ExecuteFunction): NULL pointer coredump fixed 1999-02-14 Bob Woodside * fvwm/fvwm2.1: Added a description of the DecorateTransient and NakedTransient Style options to the man page. 1999-02-14 Dominik Vogt * 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 * 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 * 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 * fvwm/misc.c (GetOneMenuPositionArgument): rewrote syntax of menu position hints. * fvwm/fvwm2.1: quoting ^, @, * and % added to 'Menu' entry 1999-02-11 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * configure.in: Forget values cached for libreadline; it messes up detecting whether termcap or ncurses is needed. 1999-01-25 Dan Espen * 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 * 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 * 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 * INSTALL.fvwm: Removed doubled paragraph. 1999-02-09 Dominik Vogt * 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 * README: Update new URLs; a few spelling corrections; specify that the fvwm-workers maintain FVWM now. 1999-01-19 Steven Michael ROBBINS * 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 * fvwm/menus.c (MenuInteraction): fixed keyboard shortcut bug 1999-01-18 Paul D. Smith * configure.in: Update version number. 1999-01-17 Paul D. Smith * configure.in: Test for siginterrupt(). 1999-01-16 Steven Michael ROBBINS * configure.in: Nuke cached values before retrying check for libreadline (using -lncurses rather than -ltermcap). Sat Jan 16 03:14:31 1999 Steve Robbins * 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 * fvwm/fvwm2.1: Corrected the search sequence for startup files. 1999-01-16 Dominik Vogt * BUGS: updated for 2.2 1999-01-14 Paul D. Smith * 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 * 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 * Added alt-tab explanation to FAQ 1999-01-13 Bob Woodside * 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 * 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 * 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 * fvwm/builtins.c (DirectionFunc): Made variable "dir" an int, to match return type of GetTokenIndex(). 1999-01-12 Dominik Vogt * 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 * 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 * fvwm/module.c (make_packet): Removed dead code. Sun Jan 10 22:11:36 1999 Steve Robbins * 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 * libs/Parse.c (NukeToken): Removed assignment used as truth value. Sun Jan 10 21:31:32 1999 Steve Robbins * 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 * 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 * fvwm/module.c (HandleModuleInput): Removed unnecessary cast of integer to pointer. 1999-01-09 Bob Woodside * 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 * xpmroot/*: Moved into utils directory. * utils/xpmroot.c: Removed dead code (yet another version of strcasecmp). 1999-01-07 Dominik Vogt * **/*: 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 * 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 * 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 * 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 * 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 * 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 * 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 * BUGS: Removed some fixed bugs. 1999-01-05 Paul D. Smith * 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 * 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 * fvwm/menus.c (FPopupMenu): force menus on screen if making them non overlapping moves them partially off screen. 1999-01-03 Dominik Vogt * 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 * 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 * fvwm/events.c (My_XNextEvent): applied cleanup patch by Chris Rankin 1998-12-30 Dominik Vogt * 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 * fvwm/builtins.c (MatchesConditionMask): fixed name matching broken in last patch 1998-12-27 Dominik Vogt * libs/Parse.c (SkipQuote): fixed coredump (random return value) 1998-12-27 Dominik Vogt * 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 * 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 * fvwm/move.c (moveLoop): Position in feedback window relative to current page, not the whole desktop 1998-12-24 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * fvwm/move.c (moveLoop): Remove some fprintfs left behind by accident. 1998-12-18 Dominik Vogt * 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 * 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 * 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 * 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 * fvwm/fvwm2.1 (Note): Document the way menustyle affects the placement of the feedback windows. 1998-12-15 Dominik Vogt * 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 * fvwm/events.c (HandleConfigureRequest): added ' - Tmp_win->bw' that caused wandering FvwmBorder windows 1998-12-14 Dominik Vogt * configure.in: Changed version to 2.1.4. * NEWS: Ditto. Released fvwm 2.1.3 beta (CVS tag version-2_1_3). 1998-12-13 Dominik Vogt * 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 * 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 * fvwm/fvwm2.1: Documented menu hotkeys 1998-12-11 Tim Phipps * 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 * 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 * 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 * fvwm/fvwm2.1: Clarify the uses and abuses of the Exec function. 1998-12-09 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * fvwm/fvwm.c, fvwm/fvwm2.1: changed GlobalOpts default from ActivePlacementIgnoresStartsOnPage to ActivePlacementHonorsStartsOnPage. 1998-11-27 Dominik Vogt * 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 * 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 * fvwm/windows.c (do_windowList): applied alt-tab patch by Tim Phipps 1998-11-24 Paul D. Smith * 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 * fvwm/builtins.c (SetColorLimit): Check return code from GetIntegerArguments not equal 1 for arg parse failure test. 1998-11-24 Dominik Vogt * 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 * 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 * 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 * NEWS: Moved stuff from end of old ChangeLog into the NEWS file. 1998-11-22 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * 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 * 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 * fvwm/misc.c (Destroy): applied mini-icon compile patch by Tim Phipps Mon Nov 16 20:30:16 1998 DanEspen * libs/ColorUtils.c (BRIGHTNESS_FACTOR): Set adjustment factors to fvwm2 defaults instead of scwm numbers. Sun Nov 15 12:24:12 1998 DanEspen * NEWS: Document shadow/hilite change. 1998-11-15 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * Makefile.am (EXTRA_SUBDIRS): Removed textures from list of SUBDIRS. 1998-11-09 Dominik Vogt * 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 * 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 * fvwm/icons.c (GetXPMFile): Free pixmap after use. 1998-11-07 Dominik Vogt * fvwm/menus.c (MenuInteraction): fixed bug with non-animated fvwm-menus and 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 * 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 * 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 * 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 * folded in StartsOnPage style modifications. 1998-11-05 Paul D. Smith * 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 * 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 or . If using , 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 * 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 * 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 * 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 * added some files to cvs: modules/ChangeLog, extras/ChangeLog, NEWS, and AUTHORS. * DEVELOPERS: replaces README.autoconf. 1998-11-04 Dominik Vogt * fvwm/events.c (HandlePropertyNotify): Fixed the fix for TransientFor Bug * extras/fvwmperl/*: Added correct copyright notices. 1998-11-03 Dominik Vogt * 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 * 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 * 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 * 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 * 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 * configure.in: Set VERSION to 2.1.0. Sat Oct 31 06:44:50 1998 Steve Robbins * Basic autoconfiguration support added. Sat Oct 31 06:02:37 1998 Steve Robbins * modules/FvwmCpp: * modules/FvwmM4: Changed FVWMDIR to FVWM_MODULEDIR.