Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[xsrc/trunk]: xsrc/external/mit/ctwm/dist ctwm-4.0.3



details:   https://anonhg.NetBSD.org/xsrc/rev/5d9a91d2b854
branches:  trunk
changeset: 10664:5d9a91d2b854
user:      nia <nia%NetBSD.org@localhost>
date:      Sun Apr 11 08:36:51 2021 +0000

description:
ctwm-4.0.3

diffstat:

 external/mit/ctwm/dist/.bzrignore                                |    12 +
 external/mit/ctwm/dist/CHANGES.html                              |  1935 ++++
 external/mit/ctwm/dist/CHANGES.md                                |  2138 ++++
 external/mit/ctwm/dist/CMakeLists.txt                            |   176 +
 external/mit/ctwm/dist/COPYRIGHT                                 |    81 +
 external/mit/ctwm/dist/Doxyfile.in                               |    57 +
 external/mit/ctwm/dist/Makefile                                  |    99 +
 external/mit/ctwm/dist/README.html                               |   206 +
 external/mit/ctwm/dist/README.md                                 |   195 +
 external/mit/ctwm/dist/VERSION                                   |     1 +
 external/mit/ctwm/dist/add_window.h                              |   118 +-
 external/mit/ctwm/dist/animate.c                                 |   372 +
 external/mit/ctwm/dist/animate.h                                 |    22 +
 external/mit/ctwm/dist/captive.c                                 |   784 +
 external/mit/ctwm/dist/captive.h                                 |    25 +
 external/mit/ctwm/dist/clargs.c                                  |   406 +
 external/mit/ctwm/dist/clargs.h                                  |    10 +
 external/mit/ctwm/dist/clicktofocus.c                            |    39 +-
 external/mit/ctwm/dist/clicktofocus.h                            |     9 +-
 external/mit/ctwm/dist/client/CMakeLists.txt                     |    26 +
 external/mit/ctwm/dist/client/Makefile                           |    14 +
 external/mit/ctwm/dist/client/README.md                          |    46 +
 external/mit/ctwm/dist/client/ctwm_client.h                      |    20 +
 external/mit/ctwm/dist/client/demolib.c                          |    99 +
 external/mit/ctwm/dist/client/forward.c                          |   172 +
 external/mit/ctwm/dist/client/gtw.c                              |    72 +
 external/mit/ctwm/dist/client/libctwm.c                          |   261 +
 external/mit/ctwm/dist/cmake_files/basic_vars.cmake              |    97 +
 external/mit/ctwm/dist/cmake_files/build_options.cmake           |   122 +
 external/mit/ctwm/dist/cmake_files/check_funcs_etc.cmake         |    41 +
 external/mit/ctwm/dist/cmake_files/compiler_feature_checks.cmake |    81 +
 external/mit/ctwm/dist/cmake_files/cpack_setup.cmake             |    21 +
 external/mit/ctwm/dist/cmake_files/ctags.cmake                   |    10 +
 external/mit/ctwm/dist/cmake_files/do_install.cmake              |    48 +
 external/mit/ctwm/dist/cmake_files/doxygen.cmake                 |    39 +
 external/mit/ctwm/dist/cmake_files/dtrace_support.cmake          |    51 +
 external/mit/ctwm/dist/cmake_files/find_asciidoc_bits.cmake      |   428 +
 external/mit/ctwm/dist/cmake_files/gen_source_files.cmake        |   160 +
 external/mit/ctwm/dist/cmake_files/handle_manual.cmake           |   333 +
 external/mit/ctwm/dist/cmake_files/install_paths.cmake           |    62 +
 external/mit/ctwm/dist/cmake_files/mktar_support.cmake           |    24 +
 external/mit/ctwm/dist/cmake_files/setup_lex.cmake               |    39 +
 external/mit/ctwm/dist/cmake_files/setup_yacc.cmake              |    73 +
 external/mit/ctwm/dist/cmake_files/show_build_info.cmake         |    15 +
 external/mit/ctwm/dist/cmake_files/vcs_checks.cmake              |    54 +
 external/mit/ctwm/dist/colormaps.c                               |   676 +
 external/mit/ctwm/dist/colormaps.h                               |    27 +
 external/mit/ctwm/dist/ctopts.c                                  |    74 +
 external/mit/ctwm/dist/ctopts.h                                  |     9 +
 external/mit/ctwm/dist/ctwm.h                                    |   429 +-
 external/mit/ctwm/dist/ctwm_atoms.in                             |    27 +
 external/mit/ctwm/dist/ctwm_config.h.in                          |    63 +
 external/mit/ctwm/dist/ctwm_main.c                               |  1509 +++
 external/mit/ctwm/dist/ctwm_main.h                               |    11 +
 external/mit/ctwm/dist/ctwm_wrap.c                               |     7 +
 external/mit/ctwm/dist/cursor.c                                  |   363 +-
 external/mit/ctwm/dist/cursor.h                                  |    50 +-
 external/mit/ctwm/dist/deftwmrc.h                                |    10 +
 external/mit/ctwm/dist/doc/devman/README.md                      |    14 +
 external/mit/ctwm/dist/doc/devman/code_style.adoc                |   106 +
 external/mit/ctwm/dist/doc/devman/doxygen.adoc                   |    48 +
 external/mit/ctwm/dist/doc/devman/functions.adoc                 |   270 +
 external/mit/ctwm/dist/doc/devman/index.adoc                     |    25 +
 external/mit/ctwm/dist/doc/devman/links.adoc                     |    53 +
 external/mit/ctwm/dist/doc/devman/mkmk.sh                        |    51 +
 external/mit/ctwm/dist/doc/devman/principles.adoc                |   268 +
 external/mit/ctwm/dist/doc/manual/Makefile                       |    56 +
 external/mit/ctwm/dist/doc/manual/ctwm.1.adoc                    |  3309 +++++++
 external/mit/ctwm/dist/drawing.c                                 |   252 +
 external/mit/ctwm/dist/drawing.h                                 |    25 +
 external/mit/ctwm/dist/event_core.c                              |   456 +
 external/mit/ctwm/dist/event_handlers.c                          |  3904 ++++++++
 external/mit/ctwm/dist/event_handlers.h                          |    33 +
 external/mit/ctwm/dist/event_internal.h                          |    30 +
 external/mit/ctwm/dist/event_names.c                             |    61 +
 external/mit/ctwm/dist/event_names.h                             |    13 +
 external/mit/ctwm/dist/event_names.list                          |    33 +
 external/mit/ctwm/dist/event_utils.c                             |   302 +
 external/mit/ctwm/dist/events.h                                  |   134 +-
 external/mit/ctwm/dist/ewmh.c                                    |  2216 ++++
 external/mit/ctwm/dist/ewmh.h                                    |    83 +
 external/mit/ctwm/dist/ewmh_atoms.in                             |    33 +
 external/mit/ctwm/dist/examples/example.ctwmrc                   |   186 +
 external/mit/ctwm/dist/examples/levitte.ctwmrc                   |   355 +
 external/mit/ctwm/dist/examples/peterc.ctwmrc                    |   384 +
 external/mit/ctwm/dist/ext/README                                |    11 +
 external/mit/ctwm/dist/ext/repl_str.c                            |   101 +
 external/mit/ctwm/dist/ext/repl_str.h                            |    11 +
 external/mit/ctwm/dist/functions.c                               |   519 +
 external/mit/ctwm/dist/functions.h                               |    43 +
 external/mit/ctwm/dist/functions_captive.c                       |   100 +
 external/mit/ctwm/dist/functions_defs.list                       |   173 +
 external/mit/ctwm/dist/functions_icmgr_wsmgr.c                   |   249 +
 external/mit/ctwm/dist/functions_identify.c                      |   277 +
 external/mit/ctwm/dist/functions_internal.h                      |   187 +
 external/mit/ctwm/dist/functions_misc.c                          |   501 +
 external/mit/ctwm/dist/functions_warp.c                          |   268 +
 external/mit/ctwm/dist/functions_win.c                           |   735 +
 external/mit/ctwm/dist/functions_win_moveresize.c                |  1424 +++
 external/mit/ctwm/dist/functions_workspaces.c                    |   128 +
 external/mit/ctwm/dist/gc.c                                      |   184 +-
 external/mit/ctwm/dist/gc.h                                      |    50 +-
 external/mit/ctwm/dist/gen/ctwm.1                                |  4154 +++++++++
 external/mit/ctwm/dist/gen/ctwm.1.html                           |  4508 ++++++++++
 external/mit/ctwm/dist/gen/gram.tab.c                            |  4040 ++++++++
 external/mit/ctwm/dist/gen/gram.tab.h                            |   192 +
 external/mit/ctwm/dist/gen/lex.c                                 |  1906 ++++
 external/mit/ctwm/dist/gen/version.c.in                          |    63 +
 external/mit/ctwm/dist/gram.y                                    |   789 +-
 external/mit/ctwm/dist/iconmgr.c                                 |  1762 ++-
 external/mit/ctwm/dist/iconmgr.h                                 |   176 +-
 external/mit/ctwm/dist/icons.c                                   |  2138 ++-
 external/mit/ctwm/dist/icons.h                                   |   177 +-
 external/mit/ctwm/dist/icons_builtin.c                           |   216 +
 external/mit/ctwm/dist/icons_builtin.h                           |    20 +
 external/mit/ctwm/dist/image.c                                   |   353 +
 external/mit/ctwm/dist/image.h                                   |    62 +
 external/mit/ctwm/dist/image_bitmap.c                            |   164 +
 external/mit/ctwm/dist/image_bitmap.h                            |    17 +
 external/mit/ctwm/dist/image_bitmap_builtin.c                    |  1059 ++
 external/mit/ctwm/dist/image_bitmap_builtin.h                    |    12 +
 external/mit/ctwm/dist/image_jpeg.c                              |   222 +
 external/mit/ctwm/dist/image_jpeg.h                              |     9 +
 external/mit/ctwm/dist/image_xpm.c                               |   146 +
 external/mit/ctwm/dist/image_xpm.h                               |     9 +
 external/mit/ctwm/dist/image_xwd.c                               |   321 +
 external/mit/ctwm/dist/image_xwd.h                               |     9 +
 external/mit/ctwm/dist/lex.l                                     |   126 +-
 external/mit/ctwm/dist/list.c                                    |   662 +-
 external/mit/ctwm/dist/list.h                                    |   106 +-
 external/mit/ctwm/dist/mask_screen.c                             |   261 +
 external/mit/ctwm/dist/mask_screen.h                             |    10 +
 external/mit/ctwm/dist/menus.h                                   |   359 +-
 external/mit/ctwm/dist/minibuild/README.md                       |    47 +
 external/mit/ctwm/dist/minibuild/defs.mk                         |    51 +
 external/mit/ctwm/dist/minibuild/main.mk                         |   138 +
 external/mit/ctwm/dist/minibuild/mkmk.sh                         |   147 +
 external/mit/ctwm/dist/mwmhints.c                                |   208 +-
 external/mit/ctwm/dist/mwmhints.h                                |    70 +-
 external/mit/ctwm/dist/occupation.c                              |  1658 +++
 external/mit/ctwm/dist/occupation.h                              |    64 +
 external/mit/ctwm/dist/otp.c                                     |  1824 ++++
 external/mit/ctwm/dist/otp.h                                     |    92 +
 external/mit/ctwm/dist/parse.h                                   |   260 +-
 external/mit/ctwm/dist/parse_be.c                                |  1971 ++++
 external/mit/ctwm/dist/parse_be.h                                |    29 +
 external/mit/ctwm/dist/parse_int.h                               |    12 +
 external/mit/ctwm/dist/parse_m4.c                                |   318 +
 external/mit/ctwm/dist/parse_yacc.c                              |   269 +
 external/mit/ctwm/dist/parse_yacc.h                              |    33 +
 external/mit/ctwm/dist/screen.h                                  |  1412 ++-
 external/mit/ctwm/dist/session.h                                 |   128 +-
 external/mit/ctwm/dist/sound.c                                   |   433 +-
 external/mit/ctwm/dist/sound.h                                   |    49 +-
 external/mit/ctwm/dist/tests/CMakeLists.txt                      |    80 +
 external/mit/ctwm/dist/tests/README.md                           |    14 +
 external/mit/ctwm/dist/tests/test_m4/ctwmrc                      |     2 +
 external/mit/ctwm/dist/tests/util_expand/CMakeLists.txt          |     2 +
 external/mit/ctwm/dist/tests/util_expand/t_efp.c                 |    25 +
 external/mit/ctwm/dist/tools/ctwm.astyle                         |    47 +
 external/mit/ctwm/dist/tools/mk_atoms.sh                         |    64 +
 external/mit/ctwm/dist/tools/mk_ctf_info.sh                      |    26 +
 external/mit/ctwm/dist/tools/mk_deftwmrc.sh                      |    27 +
 external/mit/ctwm/dist/tools/mk_event_names.sh                   |    20 +
 external/mit/ctwm/dist/tools/mk_function_bits.sh                 |   322 +
 external/mit/ctwm/dist/tools/mk_tar.sh                           |    56 +
 external/mit/ctwm/dist/tools/mk_version_in.sh                    |    30 +
 external/mit/ctwm/dist/tools/rewrite_version_bzr.sh              |    25 +
 external/mit/ctwm/dist/tools/rewrite_version_git.sh              |    16 +
 external/mit/ctwm/dist/tools/try_all_opts.pl                     |   600 +
 external/mit/ctwm/dist/twm_window_struct.h                       |   280 +
 external/mit/ctwm/dist/types.h                                   |    67 +-
 external/mit/ctwm/dist/util.h                                    |   181 +-
 external/mit/ctwm/dist/version.c.in                              |    63 +
 external/mit/ctwm/dist/version.h                                 |    81 +-
 external/mit/ctwm/dist/vscreen.h                                 |    63 +-
 external/mit/ctwm/dist/win_decorations.c                         |  1643 +++
 external/mit/ctwm/dist/win_decorations.h                         |    27 +
 external/mit/ctwm/dist/win_decorations_init.c                    |   305 +
 external/mit/ctwm/dist/win_decorations_init.h                    |    18 +
 external/mit/ctwm/dist/win_iconify.c                             |   616 +
 external/mit/ctwm/dist/win_iconify.h                             |    17 +
 external/mit/ctwm/dist/win_ops.c                                 |   427 +
 external/mit/ctwm/dist/win_ops.h                                 |    17 +
 external/mit/ctwm/dist/win_regions.c                             |   320 +
 external/mit/ctwm/dist/win_regions.h                             |    14 +
 external/mit/ctwm/dist/win_resize.c                              |  1339 ++
 external/mit/ctwm/dist/win_resize.h                              |    42 +
 external/mit/ctwm/dist/win_utils.c                               |  1253 ++
 external/mit/ctwm/dist/win_utils.h                               |    37 +
 external/mit/ctwm/dist/windowbox.c                               |   275 +-
 external/mit/ctwm/dist/windowbox.h                               |    58 +-
 external/mit/ctwm/dist/workspace_config.c                        |   209 +
 external/mit/ctwm/dist/workspace_config.h                        |    18 +
 external/mit/ctwm/dist/workspace_manager.c                       |  2335 +++++
 external/mit/ctwm/dist/workspace_manager.h                       |    46 +
 external/mit/ctwm/dist/workspace_structs.h                       |   103 +
 external/mit/ctwm/dist/workspace_utils.c                         |   573 +
 external/mit/ctwm/dist/workspace_utils.h                         |    22 +
 199 files changed, 69973 insertions(+), 5102 deletions(-)

diffs (truncated from 77363 to 300 lines):

diff -r 1d89a5eb659c -r 5d9a91d2b854 external/mit/ctwm/dist/.bzrignore
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/mit/ctwm/dist/.bzrignore Sun Apr 11 08:36:51 2021 +0000
@@ -0,0 +1,12 @@
+gen/
+*.tar*
+build/*
+minibuild/Makefile*
+minibuild/build
+minibuild/ctwm
+*.html
+doc/devman/Makefile*
+doc/devman/build
+doc/manual/ctwm.1
+doc/manual/ctwm.1.xml
+tags
diff -r 1d89a5eb659c -r 5d9a91d2b854 external/mit/ctwm/dist/CHANGES.html
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/mit/ctwm/dist/CHANGES.html       Sun Apr 11 08:36:51 2021 +0000
@@ -0,0 +1,1935 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml"; lang="en">
+<head>
+       <meta charset="utf-8"/>
+</head>
+<body>
+
+<h1 id="ctwmchangehistory">CTWM Change History</h1>
+
+<h2 id="4.0.32019-07-21">4.0.3 (2019&#8211;07&#8211;21)</h2>
+
+<h3 id="bugfixes">Bugfixes</h3>
+
+<ol>
+<li><p>Perform various manipulations and overrides of <code>WM_HINTS</code> property
+when it gets reset during runtime, like we do when initially adopting
+the window. The most visible effect of this was in windows that don&#8217;t
+give a focus hint (which we override to give focus), but then reset
+<code>WM_HINTS</code> later and still don&#8217;t give us a hint, where we wound up not
+re-overriding previously. Reported for <code>xvile</code> by Wayne Cuddy.</p></li>
+<li><p>The font height estimation changes in 4.0.0 were not applied correctly
+when UseThreeDMenus was set, leading to some odd vertical misalignment
+of the text with some fonts. Reported by Wayne Cuddy.</p></li>
+<li><p>A failure in OTP consistency checks caused by the handling of
+transients of fullscreen windows has been fixed. This manifested as
+failures in OtpCheckConsistencyVS() assertions.</p></li>
+</ol>
+
+<h2 id="4.0.22018-08-25">4.0.2 (2018&#8211;08&#8211;25)</h2>
+
+<h3 id="backward-incompatiblechangesandremovedfeatures">Backward-Incompatible Changes And Removed Features</h3>
+
+<ol>
+<li><p>The <code>UseThreeDIconBorders</code> config var has been removed. It came in
+silently and undocumented in 3.4 and has never done anything.</p></li>
+<li><p>The attempts to use DNS lookups for setting the <code>HOSTNAME</code> <code>m4</code> variable
+have been removed; it is now just a duplicate of <code>CLIENTHOST</code>.</p></li>
+</ol>
+
+<h3 id="newfeatures">New Features</h3>
+
+<ol>
+<li><p>The EWMH <code>_NET_WM_NAME</code> property is now supported, and used for the
+window name in place of the ICCCM <code>WM_NAME</code> when set. By default, we
+also accept <code>UTF8_STRING</code> encoded <code>WM_NAME</code> as a result of this
+change; see below for var to restore historical strictness.</p></li>
+<li><p>The EWMH <code>_NET_WM_ICON_NAME</code> property is now supported, and used for
+the icon name in place of the ICCCM <code>WM_ICON_NAME</code> when set. Similar
+comments as above apply to the encodings.</p></li>
+<li><p>Support has been added for <code>CTWM_WM_NAME</code> and <code>CTWM_WM_ICON_NAME</code>
+properties, which will override any window/icon names otherwise
+specified. This may be useful for applications that set unhelpful
+names themselves, or for manually adjusting labelling. These
+properties can be set from the command line via <code>xprop</code>; as an
+example, <code>xprop -f CTWM_WM_NAME 8u -set CTWM_WM_NAME &quot;awesome
+windowsauce&quot;</code>. See <code>xprop(1)</code> manual for details; the <code>s</code>, <code>t</code>, and
+<code>u</code> field type specifiers will all work.</p></li>
+<li><p>When no icon name is set for a window, we&#8217;ve always used the window
+name for the icon name as well. But that only happened the first time
+the window name is set; after that, the icon name is stuck at the
+first name. It now updates along with the window name, if no icon
+name is set.</p></li>
+<li><p>All icon manager windows will now have the <code>TwmIconManager</code> class set
+on them, so they can be addressed en mass by other config like
+<code>NoTitle</code> by that class name.</p></li>
+</ol>
+
+<h3 id="newconfigoptions">New Config Options</h3>
+
+<ol>
+<li><p>Added <code>DontNameDecorations</code> config option to disable setting names on
+the X windows we create for window decoration (added in 4.0.0). These
+have been reported to confuse <code>xwit</code>, and might do the same for other
+tools that don&#8217;t expect to find them on non-end-app windows. Reported
+by Frank Steiner.</p></li>
+<li><p>Added <code>StrictWinNameEncoding</code> config option to enable historical
+behavior, where we&#8217;re reject invalid property encoding for window
+naming properties (like a <code>UTF8_STRING</code> encoded <code>WM_NAME</code>).</p></li>
+</ol>
+
+<h3 id="bugfixes">Bugfixes</h3>
+
+<ol>
+<li><p>Fix up broken parsing of <code>IconifyStyle &quot;sweep&quot;</code>. Bug was introduced
+in 4.0.0.</p></li>
+<li><p>When multiple X Screens are used, building the temporary file for m4
+definitions could fail with an error from <code>mkstemp()</code>. Reported by
+Manfred Knick.</p></li>
+<li><p>When multiple X Screens are used, the OTP code didn&#8217;t recognize the
+difference, and kept everything in one list. This caused the internal
+consistency checks to trip when it didn&#8217;t find all the windows it
+expected. Reported by Terran Melconian.</p></li>
+<li><p>When <code>ReverseCurrentWorkspace</code> is set, mapping windows not on the
+current workspace (e.g., via restarting ctwm, or creating new windows
+with the desktop set via EWMH properties) could segfault. Reported by
+Sean McAllister.</p></li>
+<li><p>Fix some edge cases where we&#8217;d fight other apps' focus handling. When
+an application moved focus itself to an unrelated (in X terms) window,
+our processing would often race and re-move the focus to the root
+ourselves. This was visible with e.g. sub-windows in Firefox for
+context menu and urlbar dropdown, which would flash on and then
+disappear.</p></li>
+<li><p>When creating a new transient window of an existing full-screen
+window, the OTP stacking may cause it to be stuck below the main
+window due to the special handling of full-screen focused windows in
+EWMH. It should now be forced to the top.</p></li>
+<li><p>Building ctwm since 4.0.0 in certain locales could misorder functions
+in the lookup table, leading to troubles parsing the config file.
+You&#8217;d get some loud &#8220;INTERNAL ERROR&#8221; lines from ctwm when running it
+if this were the case. Now fixed. Reported by Richard Levitte.</p></li>
+</ol>
+
+<h2 id="4.0.12017-06-05">4.0.1 (2017&#8211;06&#8211;05)</h2>
+
+<h3 id="uservisiblechanges">User Visible Changes</h3>
+
+<ol>
+<li><p>Fix a bug where fullscreen windows could sometimes wind up incorrectly
+stacked due to a focus-handling issue. This would lead to ctwm
+aborting with an assertion failure in the OTP code, like <code>Assertion
+failed: (PRI(owl) &gt;= priority), function OtpCheckConsistencyVS</code>.</p></li>
+<li><p>Fix an edge case (probably only triggerable via manual work with EWMH
+messages) where a window could wind up resized down to nothing.</p></li>
+</ol>
+
+<h3 id="internals">Internals</h3>
+
+<ol>
+<li><p>Systems with the ctfconvert/ctfmerge tools available will now use them
+to include CTF info in the compiled binary. This allows more detailed
+inspection of the running process via DTrace (e.g., the layout of the
+structs).</p></li>
+<li><p>The initial rumblings of a Developer&#8217;s Manual are now in
+<code>doc/devman/</code>. This isn&#8217;t tied into the main build, and there&#8217;s no
+real reason it ever will be. Things of interest to <em>users</em> should
+wind up in the main manual; this should only have things of interest
+to people <em>developing</em> ctwm.</p></li>
+</ol>
+
+<h2 id="4.0.02017-05-24">4.0.0 (2017&#8211;05&#8211;24)</h2>
+
+<h3 id="buildsystemchange">Build System Change</h3>
+
+<p>The old <code>imake</code> build system has been replaced by a new structure using
+<code>cmake</code>. This makes <a href="https://cmake.org/";>cmake</a> a requirement to build
+ctwm. See the <code>README.md</code> file for how to run it.</p>
+
+<p>A fallback minimal build system is available in the <code>minibuild/</code>
+directory for environments that can&#8217;t use the main one. This is likely
+to need some manual adjustment on many systems, and the main build is
+strongly preferred. But it should suffice to get a runnable binary if
+all else fails.</p>
+
+<h3 id="platformsupport">Platform Support</h3>
+
+<p>Support for many non-current platforms has been dropped. In particular,
+remnants of special-case VMS support have been removed. Many old and now
+dead Unix variants have been similarly desupported. Generally, platforms
+without support for C99 and mid-2000&#8217;s POSIX are increasingly less likely
+to work.</p>
+
+<h3 id="backward-incompatiblechangesandremovedfeatures">Backward-Incompatible Changes And Removed Features</h3>
+
+<ol>
+<li><p>Argument parsing has been rewritten to use <code>getopt_long()</code>. All
+<code>-long</code> options are now <code>--long</code> instead. <code>-version</code>, <code>-info</code>,
+<code>-cfgchk</code>, and <code>-display</code> are still accepted if they&#8217;re the first
+option given, to make it easier for scripts to simultaneously support
+before/after versions; this shim will be removed in a later version.</p></li>
+<li><p>Support for the SDSC imconv library, and the IMCONV options related to
+it, has been removed. The last release is almost 20 years old, and
+doesn&#8217;t support any remotely recent platforms.</p></li>
+<li><p>The USE_SIGNALS code to use signal-driven animations has been removed.
+It&#8217;s been non-default since 3.2 (more than 20 years ago), and not
+documented anywhere but in the code and a comment in this file.</p></li>
+<li><p>The USE_GNOME option and code for GNOME1 support has been removed.</p></li>
+<li><p>The old-style title button action specifications (without an <code>=</code> in
+them) deprecated since 3.8 are no longer supported. Just replacing
+the &#8220;<code>:</code>&#8221; with &#8220;<code>= :</code>&#8221; should suffice to make it work right in 3.8+.
+If you need to share configs with older versions, you&#8217;ll have to
+conditionalize the syntax with m4 or some other preprocessing.</p></li>
+<li><p>The <code>f.cut</code> (and <code>^</code> alias for it), <code>f.cutfile</code>, and <code>f.file</code>
+functions have been removed. These functions for messing with the
+clipboard were never visibly documented, and came into the manpage in
+3.0 already commented-out and saying they were obsolete.</p></li>
+<li><p>The <code>f.source</code> function has been removed. It&#8217;s never done anything
+(except beep) as far back as 1.1 and has never been documented.</p></li>
+<li><p>The <code>f.movemenu</code> function has been removed. It was added silently in
+2.1, has never done anything, and has never been documented.</p></li>
+<li><p>The <code>NoVersion</code> config parameter has been removed. It&#8217;s been
+undocumented, obsoleted, and done absolutely nothing since 1.1.</p></li>
+<li><p>Support for non-flex versions of lex(1) is deprecated, and will take
+some manual work to build. Note that release tarballs include
+prebuild lexers, so this probably only matters to people building from
+a development tree. (And if you are, and really need AT&amp;T or some
+other lex to work, talk to us!)</p></li>
+<li><p>Support for building with internal regex implementation has been
+disabled; we now require regex support from libc. It is still
+possible to enable by manually editing files, but this will be removed
+in the future. If you have to mess with this, please bring it up on
+the mailing list so we can figure out a long-term solution.</p></li>
+<li><p>Parsing of the <code>ctwm.workspaces</code> X resource (i.e., setting <code>-xrm
+&quot;ctwm.workspaces: something&quot;</code> on program command-lines) since 3.0 has
+collapsed doubled backslashes (<code>\\</code>) into a single (``). However,
+there were no other escapes, so this didn&#8217;t gain anything. Using a
+single will work with both variants, unless you need multiple
+backslashes in a row in your workspace names.</p></li>
+<li><p>The <code>IconRegion</code> and <code>WindowRegion</code> config params both take a <code>vgrav
+hgrav</code> pair of parameters to control layout. Previous versions would
+accept a <code>hgrav vgrav</code> ordering in the parsing, and would mostly work
+by odd quirks of the code. The parsing has been made stricter, so
+only the documented <code>vgrav hgrav</code> ordering is accepted now.</p></li>
+</ol>
+
+<h3 id="uservisiblechanges">User Visible Changes</h3>
+
+<ol>
+<li><p>The default install locations have been changed. See the README for
+details about where things are installed and how to change them.</p></li>
+<li><p>Several default settings have been changed. ctwm now defaults to
+acting as though <code>RestartPreviousState</code>, <code>NoGrabServer</code>,
+<code>DecorateTransients</code>, <code>NoBackingStore</code>, <code>RandomPlacement</code>,
+<code>OpaqueMove</code>, <code>OpaqueResize</code>, <code>SortIconManager</code>, and <code>StartInMapState</code>
+have been set. Those settings that didn&#8217;t previously have an inverse
+(to get the behavior previously seen when they weren&#8217;t specified) have
+such added; see below.</p></li>
+<li><p>Added various config parameters as inverses of existing params. New
+params (with existing param they invert in parens):</p>
+
+<ul>
+<li><code>BackingStore</code> (<code>NoBackingStore</code>)</li>
+<li><code>GrabServer</code> (<code>NoGrabServer</code>)</li>
+<li><code>StartInButtonState</code> (<code>StartInMapState</code>)</li>
+<li><code>NoSortIconManager</code> (<code>SortIconManager</code>)</li>
+<li><code>NoRestartPreviousState</code> (<code>RestartPreviousState</code>)</li>
+<li><code>NoDecorateTransients</code> (<code>DecorateTransients</code>)</li>
+</ul></li>
+<li><p>Added <code>DontShowWelcomeWindow</code> config option to not show welcome
+splashscreen image.</p></li>
+<li><p>Selected a number of cleanups from Stefan Monnier
+<a 
href="&#x6d;&#x61;&#105;&#x6c;&#x74;&#111;&#x3a;&#x6d;&#111;&#110;&#110;&#x69;&#x65;&#x72;&#x40;&#73;&#82;&#79;&#x2e;&#x55;&#x4d;&#111;&#110;&#x74;&#114;&#x65;&#97;&#x6c;&#x2e;&#x43;&#65;">&#x6d;&#x6f;&#x6e;&#110;&#105;&#101;&#x72;&#x40;&#x49;&#x52;&#x4f;&#46;&#85;&#77;&#111;&#x6e;&#x74;&#114;&#x65;&#x61;&#x6c;&#46;&#x43;&#65;</a>,
 including rate-limiting of animations
+using a new <code>_XA_WM_END_OF_ANIMATION</code> message. Font height is
+estimated based on used characters only. Added some similar changes,
+improved the prevention of placing windows off-screen, the
+<code>f.rescuewindows</code> function for emergencies, a hack-fix for
+<code>f.adoptwindow</code>. More virtual screen tweaks/fixes.</p></li>
+<li><p>Added the remaining OnTopPriority changes from Stefan Monnier
+<a 
href="&#109;&#x61;&#x69;&#108;&#116;&#111;&#x3a;&#109;&#111;&#x6e;&#110;&#105;&#101;&#x72;&#x40;&#73;&#82;&#79;&#46;&#x55;&#77;&#111;&#x6e;&#x74;&#114;&#101;&#97;&#108;&#x2e;&#x43;&#x41;">&#109;&#x6f;&#x6e;&#x6e;&#105;&#x65;&#114;&#x40;&#73;&#x52;&#x4f;&#x2e;&#x55;&#77;&#111;&#110;&#116;&#114;&#101;&#x61;&#108;&#46;&#67;&#65;</a>:
 <code>AutoPopup</code>, <code>AutoPriority</code>,
+<code>OnTopPriority</code>, <code>PrioritySwitching</code>, <code>f.changepriority</code>,
+<code>f.priorityswitching</code>, <code>f.setpriority</code>, <code>f.switchpriority</code>,
+<code>f.tinylower</code>, <code>f.tinyraise</code>. Currently consistency checking code is
+enabled, which will terminate with an assertion failure if something
+unexpected happens. Smoothed out various inconsistencies that this
+check discovered when virtual screens are used.</p></li>
+<li><p>Basic support for EWMH (Extended Window Manager Hints) added and
+enabled by default. <code>EWMHIgnore {}</code> config option allows selectively
+disabling bits.
+[Olaf &#8220;Rhialto&#8221; Seibert, Matthew Fuller]</p></li>
+<li><p>Icon manager windows are no longer included in the window ring
+(that had confusing effects on the focus sequence).</p></li>
+<li><p>Added <code>--dumpcfg</code> command-line option to print out the compiled-in
+fallback config file.</p></li>
+<li><p>The <code>Occupy {}</code> specification now accepts &#8220;ws:&#8221; as a prefix for
+workspaces. This may break things if you have workspaces with names
+that differ only by that prefix (e.g., you have workspaces &#8220;abc&#8221; and
+&#8220;ws:abc&#8221;, and your <code>Occupy {}</code> declarations affects both.</p></li>
+<li><p>If ctwm is built with rplay support, sounds may now be configured with
+the RplaySounds {} parameter in the config file in place of the
+<code>~/.ctwm-sounds</code> file. If so, ctwm will give a warning if
+<code>.ctwm-sounds</code> exists; support for the external file will be removed
+in a future version. Also the <code>SoundHost</code> config parameter is
+replaced by <code>RplaySoundHost</code>; the old name is still accepted, but
+will be removed in a future version.</p></li>
+<li><p>Added <code>MWMIgnore {}</code> config option to allow selectively disabling
+honoring of some Motif WM hints.</p></li>
+<li><p>Warping to a window now explicitly sets focus on that window. This
+would generally (but not always, in the presence of odd X server
+behavior) have already happened for users with focus following mouse,
+but now occurs for <code>ClickToFocus</code> users as well.
+[Alexander Klein]</p></li>



Home | Main Index | Thread Index | Old Index