2021-04-03 Mike Small * src/parse.c (keytable): remove function keyword form parse table * src/menus.cc (ExecuteFunction): don't look for custom functions to run * src/gram.y: remove function token and grammar production * man/twmruined.man: remove mention of user-defined functions 2021-02-15 Mike Small * man/twmruined.man: replace a reference to move-or-lower, etc. as user defined functions with equivalent builtins. (values): document the new move-or-... builtins. * src/menus.cc (ExecuteFunction): logic to make f.move-or-lower, f.move-or-raise, and f.move-or-iconify work correctly as builtins instead of user defined functions. 2021-02-13 Mike Small * src/lex.l: allow hyphen in identifiers so that f.move-or-lower, etc. can be the names of builtin functions. 2021-02-03 Mike Small * man/twmruined.man (example): remove move-or-lower and friends from example. * src/deftwmrc.c: move-or-lower, etc. from custom to builtin. 2021-02-02 Mike Small * src/parse.c: f.move-or-iconify, f.move-or-lower, f.move-or-raise keytable entries for new builtins to make up for removal of custom functions. * src/events.h: MOVEDELTA constant where menus.cc and events.c can see it. * src/menus.cc: Make move delta a local hard coded constant and stop using f.deltastop. With move delta always non-zero, code to start the wire frame early is not needed. * src/deftwmrc.c: remove MoveDelta option, f.deltastop, and some default custom functions. * src/system.twmruinedrc: Remove use of f.deltastop Remove the custom functions entirely. Will remove the ability to define functions sooner or later anyway (but bring it back with lisp functions?). Use new builtin functions of same name. * src/screen.h (struct ScreenInfo): remove MoveDelta option * src/parse.c: remove MoveDelta option and DeltaStop function * man/twmruined.man: remove MoveDelta option and DeltaStop function 2021-01-31 Mike Small * src/util.h: Remove zoom option * src/screen.h (struct ScreenInfo): Remove DoZoom, ZoomCount * src/menus.cc (DeIconify,Iconify): Remove zoom effect * src/events.c (HandleMapRequest): Remove zoom option * src/util.c: Remove zoom effect function * src/twm.c (InitVariables): Remove zoom option * src/screen.h (struct ScreenInfo): Remove NoGrabServer member (struct ScreenInfo): Remove zoom option * src/gram.y: Remove ICON_REGION, zoom option * src/menus.cc (ExecuteFunction): Remove nograbserver option * src/events.c (do_menu): ditto * src/system.twmruinedrc: ditto * src/deftwmrc.c: ditto * src/parse.c: ditto and remove IconRegion, Zoom options. * man/twmruined.man: Remove nograbserver, zoom and IconRegion settings. Describe simplified icon placement. * src/util.h: move CreateMenuIcon prototype here * src/add_window.h: C++ compatibility (extern "C") * src/events.h: ditto * src/resize.h: ditto * src/twm.h: ditto and move or remove some functions * README: Mention nograbserver, IconRegion removal, and new iconification behavior. * src/twm.c (InitVariables): remove use of CaseSensitive variable * src/screen.h (ScreenInfo): remove CaseSensitive variable * src/menus.h: C++ compatibility (extern "C"), move GetWMState here * src/menus.cc: convert to C++ (beginning, enough to build) * src/Makefile.am (AM_CXXFLAGS): remove -Wno-logical-op-parenthesis 2019-10-21 Mike Small * src/icons.h: Remove IconUp and IconDown from icons interface and remove callers. * src/icons.cc (PlaceIcon): put first icon in bottom right. 2019-10-12 Mike Small * src/icons.cc (PlaceIcon): stop hard coding the minimum x for icon placement and the placement within that space. I've been negligent with changelog entries. This change goes with a simplification to icon placement and conversion of icons.c to C++. 2019-09-28 Mike Small * remove more vestiges of the icon manager 2017-12-03 Mike Small * src/twm.h and several other files: remove iconmgr functionality. Also drop the sample configuration file directory. These referenced iconmgr settings which I've removed. As more settings go these files would get further and further from their authors' intentions if I were to maintain them. * aclocal.m4: regenerated using aclocal (automake) 1.15.1 on OpenBSD 6.2. export AUTOCONF_VERSION=2.69 AUTOMAKE_VERSION=1.15.1 ACLOCAL=/usr/local/bin/aclocal-1.15 /usr/local/bin/aclocal-1.15 -I /usr/X11R6/share/aclocal * configure: regenerated using autoconf 2.69 on OpenBSD 6.2. 2017-09-30 Michael Small * src/Makefile.am (AM_CFLAGS): warnings as errors. * src/menus.c (ExecuteFunction): ptr as const char* to prevent const qualifier discard warnings when passed const char* action. * src/util.c (ExpandFilename): use const char* for arg and return value. (FindBitmap): cast return val of ExpandFilename to char* for bigname. Should be harmless since it's used as constant data up to it being assigned something else. (GetFont): Similar case here but without ExpandFilename being involved. * src/screen.h (ScreenInfo): IconDirectory can be const char* too, avoiding warning in parse.c:771. 2017-09-27 Michael Small Preliminaries: * README: description of fork * ChangeLog.twm: preserve twm's change log at 1.0.9 / 2015-04-16 * README.twm: and original README * configure.ac: new name, version, and url * src/Makefile.am: new name * src/system.twmruinedrc: new name * src/twm.c: new name in one comment * man/Makefile.am: new name * man/twm.man: new name