Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package xterm for openSUSE:Factory checked 
in at 2021-06-19 23:02:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xterm (Old)
 and      /work/SRC/openSUSE:Factory/.xterm.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xterm"

Sat Jun 19 23:02:01 2021 rev:126 rq:900425 version:368

Changes:
--------
--- /work/SRC/openSUSE:Factory/xterm/xterm.changes      2021-04-12 
12:34:14.477098304 +0200
+++ /work/SRC/openSUSE:Factory/.xterm.new.2625/xterm.changes    2021-06-19 
23:02:02.775596712 +0200
@@ -1,0 +2,10 @@
+Wed Jun  9 14:36:14 UTC 2021 - Marcus Meissner <[email protected]>
+
+- update to Patch #368 -  2021/06/07
+  * add DefaultOff option to RenderFont resource, as part of the 
session-management feature.
+  * add auto-scroll-lock feature (patch by add Stelios Bounanos).
+  * update the window-size information returned via TIOCGWINSZ when 
rows/columns are unchanged but the font-size changes (report by Nick Black).
+  * improve session-management feature by saving/restoring the font settings.
+  * update config.guess, config.sub
+
+-------------------------------------------------------------------

Old:
----
  xterm-367.tgz
  xterm-367.tgz.asc

New:
----
  xterm-368.tgz
  xterm-368.tgz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xterm.spec ++++++
--- /var/tmp/diff_new_pack.jregBZ/_old  2021-06-19 23:02:03.463597592 +0200
+++ /var/tmp/diff_new_pack.jregBZ/_new  2021-06-19 23:02:03.467597597 +0200
@@ -19,7 +19,7 @@
 %define splitbin 0%{?suse_version} >= 1300
 
 Name:           xterm
-Version:        367
+Version:        368
 Release:        0
 Summary:        The basic X terminal program
 License:        MIT




++++++ xterm-367.tgz -> xterm-368.tgz ++++++
++++ 13442 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/MANIFEST new/xterm-368/MANIFEST
--- old/xterm-367/MANIFEST      2021-02-22 22:18:59.000000000 +0100
+++ new/xterm-368/MANIFEST      2021-04-28 02:02:52.000000000 +0200
@@ -1,4 +1,4 @@
-MANIFEST for xterm-367, version xterm-367
+MANIFEST for xterm-368, version xterm-368
 
--------------------------------------------------------------------------------
 MANIFEST                        this file
 256colres.h                     resource-definitions for 256-color mode
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/NEWS new/xterm-368/NEWS
--- old/xterm-367/NEWS  2021-03-27 00:02:54.000000000 +0100
+++ new/xterm-368/NEWS  2021-06-08 02:41:48.000000000 +0200
@@ -1,23 +1,15 @@
 The NEWS file was generated from xterm.log.html, which serves as the changelog
 for xterm.
 
--------------------------------------------------------------------------------
-                            Patch #367 - 2021/03/26
+                            Patch #368 - 2021/06/07
 
-     * add  OSC 22 to allow programs to select different pointer cursor at
-       runtime.
-     * change  configuration for no-return functions to use _Noreturn when
-       it  is  available, because clang --analyze does not properly handle
-       the gcc noreturn attribute.
-     * add  cursorTheme resource to provide a way to enable or disable the
-       cursor theme feature.
-     * modified  CopyWait  event retries to use shorter sleeps, to improve
-       responsiveness (tmux #2556).
-     * improve quoting/escaping in demo-scripts per shellcheck.
-     * add  resizeByPixel  resource,  to  permit  disabling window manager
-       resizing-hints (patch by Tim Oehl).
-     * corrected  printOptsImmediate  handling of alternate-screen (report
-       by Abhijit Dasgupta).
-     * update sample terminfo to more closely match ncurses.
-     * add/improve limit-checks for Xlib calls (report by Roman Fiedler).
-     * fix a typo in the help-message (report by Tomas Korbar).
+     * add  DefaultOff  option  to  RenderFont  resource,  as  part of the
+       session-management feature.
+     * add auto-scroll-lock feature (patch by add Stelios Bounanos).
+     * update  the  window-size  information  returned via TIOCGWINSZ when
+       rows/columns  are  unchanged  but  the font-size changes (report by
+       Nick Black).
+     * improve  session-management  feature  by  saving/restoring the font
+       settings.
+     * update config.guess, config.sub
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/Tekproc.c new/xterm-368/Tekproc.c
--- old/xterm-367/Tekproc.c     2021-03-21 23:08:46.000000000 +0100
+++ new/xterm-368/Tekproc.c     2021-06-03 23:23:18.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: Tekproc.c,v 1.243 2021/03/21 22:08:46 tom Exp $ */
+/* $XTermId: Tekproc.c,v 1.245 2021/06/03 21:23:18 tom Exp $ */
 
 /*
  * Copyright 2001-2020,2021 by Thomas E. Dickey
@@ -402,6 +402,8 @@
                                    XtNmenuHeight, menu_high,
 #endif
                                    (XtPointer) 0);
+       TRACE(("created tek4014 widget %p, window %#lx\n",
+              (void *) tekWidget, XtWindow(tekWidget)));
 #if OPT_TOOLBAR
        ShowToolbar(resource.toolBar);
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/charproc.c new/xterm-368/charproc.c
--- old/xterm-367/charproc.c    2021-03-21 23:45:24.000000000 +0100
+++ new/xterm-368/charproc.c    2021-06-07 21:51:06.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: charproc.c,v 1.1830 2021/03/21 22:45:24 tom Exp $ */
+/* $XTermId: charproc.c,v 1.1832 2021/06/07 19:51:06 tom Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -801,6 +801,7 @@
 
 #if OPT_SCROLL_LOCK
     Bres(XtNallowScrollLock, XtCAllowScrollLock, screen.allowScrollLock0, 
False),
+    Bres(XtNautoScrollLock, XtCAutoScrollLock, screen.autoScrollLock, False),
 #endif
 
     /* these are used only for testing ncurses, not in the manual page */
@@ -9069,6 +9070,7 @@
     static const FlagList tblRenderFont[] =
     {
        DATA(Default)
+       ,DATA(DefaultOff)
        ,DATA_END
     };
 #undef DATA
@@ -9441,6 +9443,7 @@
 
 #if OPT_SCROLL_LOCK
     init_Bres(screen.allowScrollLock0);
+    init_Bres(screen.autoScrollLock);
 #endif
 
     init_Sres(screen.disallowedColorOps);
@@ -9837,6 +9840,8 @@
            wnew->work.render_font = erTrue;
            TRACE(("initially using TrueType font\n"));
        }
+    } else if (wnew->work.render_font == erDefaultOff) {
+       wnew->work.render_font = erFalse;
     }
     /* minor tweak to make debug traces consistent: */
     if (wnew->work.render_font) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/data.c new/xterm-368/data.c
--- old/xterm-367/data.c        2017-12-19 00:38:05.000000000 +0100
+++ new/xterm-368/data.c        2021-05-28 00:29:26.000000000 +0200
@@ -1,7 +1,7 @@
-/* $XTermId: data.c,v 1.98 2017/12/18 23:38:05 tom Exp $ */
+/* $XTermId: data.c,v 1.100 2021/05/27 22:29:26 tom Exp $ */
 
 /*
- * Copyright 2002-2016,2017 by Thomas E. Dickey
+ * Copyright 2002-2017,2021 by Thomas E. Dickey
  *
  *                         All Rights Reserved
  *
@@ -68,6 +68,7 @@
 #endif
 
 char *ProgramName;
+char *ProgramPath;
 
 Arg ourTopLevelShellArgs[] =
 {
@@ -114,8 +115,11 @@
 
 #if OPT_SESSION_MGT
 int ice_fd = -1;
+char **restart_command;
 #endif
 
+int restart_params = 0;
+
 #ifdef USE_IGNORE_RC
 int ignore_unused;
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/data.h new/xterm-368/data.h
--- old/xterm-367/data.h        2021-03-09 02:08:15.000000000 +0100
+++ new/xterm-368/data.h        2021-05-28 00:29:12.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: data.h,v 1.139 2021/03/09 01:08:15 tom Exp $ */
+/* $XTermId: data.h,v 1.141 2021/05/27 22:29:12 tom Exp $ */
 
 /*
  * Copyright 2002-2019,2021 by Thomas E. Dickey
@@ -104,7 +104,12 @@
 extern PtySelect X_mask;
 extern PtySelect pty_mask;
 
+#if OPT_SESSION_MGT
 extern int ice_fd;
+extern char **restart_command;
+#endif
+
+extern int restart_params;
 
 extern XtermWidget term;
 
@@ -124,7 +129,8 @@
 #define        XkbBI_MarginBell                10
 #endif
 
-extern char *ProgramName;
+extern char *ProgramName;      /* just the last part of name, maybe alias */
+extern char *ProgramPath;      /* full pathname which can be executed */
 extern Arg ourTopLevelShellArgs[];
 extern Cardinal number_ourTopLevelShellArgs;
 extern Atom wm_delete_window;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/fontutils.c new/xterm-368/fontutils.c
--- old/xterm-367/fontutils.c   2021-03-02 01:25:24.000000000 +0100
+++ new/xterm-368/fontutils.c   2021-06-03 01:49:10.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: fontutils.c,v 1.703 2021/03/02 00:25:24 tom Exp $ */
+/* $XTermId: fontutils.c,v 1.705 2021/06/02 23:49:10 tom Exp $ */
 
 /*
  * Copyright 1998-2020,2021 by Thomas E. Dickey
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/main.c new/xterm-368/main.c
--- old/xterm-367/main.c        2021-03-21 23:09:06.000000000 +0100
+++ new/xterm-368/main.c        2021-06-03 23:23:20.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: main.c,v 1.877 2021/03/21 22:09:06 tom Exp $ */
+/* $XTermId: main.c,v 1.881 2021/06/03 21:23:20 tom Exp $ */
 
 /*
  * Copyright 2002-2020,2021 by Thomas E. Dickey
@@ -2221,7 +2221,10 @@
     Xaw3dXftData *xaw3dxft_data;
 #endif
 
-    ProgramName = argv[0];
+    ProgramName = x_strdup(x_basename(argv[0]));
+    ProgramPath = xtermFindShell(argv[0], True);
+    if (ProgramPath != NULL)
+       argv[0] = ProgramPath;
 
 #ifdef HAVE_POSIX_SAVED_IDS
     save_euid = geteuid();
@@ -2269,6 +2272,7 @@
     /* Do these first, since we may not be able to open the display */
     TRACE_OPTS(xtermOptions, optionDescList, XtNumber(optionDescList));
     TRACE_ARGV("Before XtOpenApplication", argv);
+    restart_params = 0;
     if (argc > 1) {
        XrmOptionDescRec *option_ptr;
        char *option_value;
@@ -2289,10 +2293,12 @@
                if (explicit_shname == 0)
                    exit(0);
                TRACE(("...explicit shell %s\n", explicit_shname));
+               restart_params = (argc - n);
            } else if (!strcmp(option_ptr->option, "-e")) {
                command_to_exec = (argv + n + 1);
                if (!command_to_exec[0])
                    Syntax(argv[n]);
+               restart_params = (argc - n);
                break;
            } else if (!strcmp(option_ptr->option, "-version")) {
                Version();
@@ -2473,6 +2479,8 @@
                                        fallback_resources,
                                        sessionShellWidgetClass,
                                        NULL, 0);
+       TRACE(("created toplevel widget %p, window %#lx\n",
+              (void *) toplevel, XtWindow(toplevel)));
 
        XtGetApplicationResources(toplevel, (XtPointer) &resource,
                                  application_resources,
@@ -2652,6 +2660,8 @@
                                                 XtNmenuHeight, menu_high,
 #endif
                                                 (XtPointer) 0);
+    TRACE(("created vt100 widget %p, window %#lx\n",
+          (void *) term, XtWindow(term)));
     decode_keyboard_type(term, &resource);
 
     screen = TScreenOf(term);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/menu.c new/xterm-368/menu.c
--- old/xterm-367/menu.c        2021-03-21 21:03:03.000000000 +0100
+++ new/xterm-368/menu.c        2021-06-03 23:23:40.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: menu.c,v 1.365 2021/03/21 20:03:03 tom Exp $ */
+/* $XTermId: menu.c,v 1.367 2021/06/03 21:23:40 tom Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -695,6 +695,8 @@
                                 simpleMenuWidgetClass,
                                 toplevel,
                                 NULL, 0);
+    TRACE(("created popupShell(%s) widget %p, window %#lx\n",
+          data->internal_name, list->w, XtWindow(list->w)));
 #endif
     if (list->w != 0) {
        Boolean *unused = unusedEntries(xw, num);
@@ -718,6 +720,8 @@
                                                           : 
smeLineObjectClass),
                                                          list->w,
                                                          &arg, (Cardinal) 1);
+               TRACE(("created menuEntry[%d] widget %p, window %#lx\n",
+                      n, (void *) entries[n].widget, 
XtWindow(entries[n].widget)));
                list->entries++;
            }
        }
@@ -3031,6 +3035,8 @@
                                      *menus,
                                      XtNgeometry, NULL,
                                      (XtPointer) 0);
+    TRACE(("created popupShel widget %p, window %#lx\n",
+          (void *) shell[n].w, XtWindow(shell[n].w)));
 
     XtAddCallback(shell[n].w, XtNpopupCallback, InitPopup, 
menu_names[n].internal_name);
     XtVaGetValues(shell[n].w,
@@ -3052,6 +3058,8 @@
                                         XtNmenuName, 
menu_names[n].internal_name,
                                         XtNlabel, external_name,
                                         (XtPointer) 0);
+    TRACE(("created menuButton[%d] widget %p, window %#lx\n",
+          n, (void *) shell[n].b, XtWindow(shell[n].b)));
     XtVaGetValues(shell[n].b,
                  XtNheight, &button_height,
                  XtNborderWidth, &button_border,
@@ -3085,6 +3093,8 @@
     *forms = XtVaCreateManagedWidget("form",
                                     formWidgetClass, shell,
                                     (XtPointer) 0);
+    TRACE(("created form widget %p, window %#lx\n",
+          (void *) *forms, XtWindow(*forms)));
     xtermAddInput(*forms);
 
     /*
@@ -3105,6 +3115,8 @@
     } else {
        *menus = XtCreateWidget("menubar", boxWidgetClass, *forms, args, 5);
     }
+    TRACE(("created menubar widget %p, window %#lx\n",
+          (void *) *menus, XtWindow(*menus)));
 
     /*
      * The toolbar widget's height is not necessarily known yet.  If the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/misc.c new/xterm-368/misc.c
--- old/xterm-367/misc.c        2021-03-24 01:27:48.000000000 +0100
+++ new/xterm-368/misc.c        2021-06-08 01:19:42.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: misc.c,v 1.979 2021/03/24 00:27:48 tom Exp $ */
+/* $XTermId: misc.c,v 1.988 2021/06/07 23:19:42 tom Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -6989,11 +6989,73 @@
 }
 
 #if OPT_SESSION_MGT
+
+#if OPT_TRACE
+static void
+trace_1_SM(const char *tag, String name)
+{
+    Arg args[1];
+    char *buf = 0;
+
+    XtSetArg(args[0], name, &buf);
+    XtGetValues(toplevel, args, 1);
+
+    if (strstr(name, "Path") || strstr(name, "Directory")) {
+       TRACE(("%s %s: %s\n", tag, name, NonNull(buf)));
+    } else if (strstr(name, "Command")) {
+       if (buf != NULL) {
+           char **vec = (char **) (void *) buf;
+           int n;
+           TRACE(("%s %s:\n", tag, name));
+           for (n = 0; vec[n] != NULL; ++n) {
+               TRACE((" arg[%d] = %s\n", n, vec[n]));
+           }
+       } else {
+           TRACE(("%s %s: %p\n", tag, name, buf));
+       }
+    } else {
+       TRACE(("%s %s: %p\n", tag, name, buf));
+    }
+}
+
+static void
+trace_SM_props(void)
+{
+    /* *INDENT-OFF* */
+    static struct { String app, cls; } table[] = {
+       { XtNcurrentDirectory,  XtCCurrentDirectory },
+       { XtNdieCallback,       XtNdiscardCommand },
+       { XtCDiscardCommand,    XtNenvironment },
+       { XtCEnvironment,       XtNinteractCallback },
+       { XtNjoinSession,       XtCJoinSession },
+       { XtNprogramPath,       XtCProgramPath },
+       { XtNresignCommand,     XtCResignCommand },
+       { XtNrestartCommand,    XtCRestartCommand },
+       { XtNrestartStyle,      XtCRestartStyle },
+       { XtNsaveCallback,      XtNsaveCompleteCallback },
+       { XtNsessionID,         XtCSessionID },
+       { XtNshutdownCommand,   XtCShutdownCommand },
+    };
+    /* *INDENT-ON* */
+    Cardinal n;
+    TRACE(("Session properties:\n"));
+    for (n = 0; n < XtNumber(table); ++n) {
+       trace_1_SM("app", table[n].app);
+       trace_1_SM("cls", table[n].cls);
+    }
+}
+#define TRACE_SM_PROPS()       trace_SM_props()
+#else
+#define TRACE_SM_PROPS()       /* nothing */
+#endif
+
 static void
 die_callback(Widget w GCC_UNUSED,
             XtPointer client_data GCC_UNUSED,
             XtPointer call_data GCC_UNUSED)
 {
+    TRACE(("die_callback %p\n", die_callback));
+    TRACE_SM_PROPS();
     NormalExit();
 }
 
@@ -7003,7 +7065,19 @@
              XtPointer call_data)
 {
     XtCheckpointToken token = (XtCheckpointToken) call_data;
-    /* we have nothing to save */
+    TRACE(("save_callback:\n"));
+    TRACE(("... save_type            <-%d\n", token->save_type));
+    TRACE(("... interact_style       <-%d\n", token->interact_style));
+    TRACE(("... shutdown             <-%s\n", BtoS(token->shutdown)));
+    TRACE(("... fast                 <-%s\n", BtoS(token->fast)));
+    TRACE(("... cancel_shutdown      <-%s\n", BtoS(token->cancel_shutdown)));
+    TRACE(("... phase                <-%d\n", token->phase));
+    TRACE(("... interact_dialog_type ->%d\n", token->interact_dialog_type));
+    TRACE(("... request_cancel       ->%s\n", BtoS(token->request_cancel)));
+    TRACE(("... request_next_phase   ->%s\n", 
BtoS(token->request_next_phase)));
+    TRACE(("... save_success         ->%s\n", BtoS(token->save_success)));
+    xtermUpdateRestartCommand(term);
+    /* we have nothing more to save */
     token->save_success = True;
 }
 
@@ -7029,6 +7103,8 @@
        TRACE(("Enabling session-management callbacks\n"));
        XtAddCallback(toplevel, XtNdieCallback, die_callback, NULL);
        XtAddCallback(toplevel, XtNsaveCallback, save_callback, NULL);
+
+       TRACE_SM_PROPS();
     }
 }
 
@@ -7037,6 +7113,267 @@
 {
     IceRemoveConnectionWatch(icewatch, NULL);
 }
+
+typedef enum {
+    B_ARG = 0,
+    I_ARG,
+    D_ARG,
+    S_ARG
+} ParamType;
+
+#define Barg(name, field) { name, B_ARG, XtOffsetOf(XtermWidgetRec, field) }
+#define Iarg(name, field) { name, I_ARG, XtOffsetOf(XtermWidgetRec, field) }
+#define Darg(name, field) { name, D_ARG, XtOffsetOf(XtermWidgetRec, field) }
+#define Sarg(name, field) { name, S_ARG, XtOffsetOf(XtermWidgetRec, field) }
+
+typedef struct {
+    const char name[30];
+    ParamType type;
+    Cardinal offset;
+} FontParams;
+
+/* *INDENT-OFF* */
+static const FontParams fontParams[] = {
+    Iarg(XtNinitialFont,     screen.menu_font_number), /* "-fc" */
+    Barg(XtNallowBoldFonts,  screen.allowBoldFonts),   /* menu */
+#if OPT_BOX_CHARS
+    Barg(XtNforceBoxChars,   screen.force_box_chars),  /* "-fbx" */
+    Barg(XtNforcePackedFont, screen.force_packed),     /* menu */
+#endif
+#if OPT_DEC_CHRSET
+    Barg(XtNfontDoublesize,  screen.font_doublesize),  /* menu */
+#endif
+#if OPT_WIDE_CHARS
+    Barg(XtNutf8Fonts,       screen.utf8_fonts),       /* menu */
+#endif
+#if OPT_RENDERFONT
+    Darg(XtNfaceSize,        misc.face_size[0]),       /* "-fs" */
+    Sarg(XtNfaceName,        misc.default_xft.f_n),    /* "-fa" */
+    Sarg(XtNrenderFont,      misc.render_font_s),      /* (resource) */
+#endif
+};
+/* *INDENT-ON* */
+
+#define RESTART_PARAMS (int)(XtNumber(fontParams) * 2)
+#define TypedPtr(type) *(type *)(void *)((char *) xw + parameter->offset)
+
+/*
+ * If no widget is given, no value is used.
+ */
+static char *
+formatFontParam(char *result, XtermWidget xw, const FontParams * parameter)
+{
+    sprintf(result, "%s*%s:", ProgramName, parameter->name);
+    if (xw != None) {
+       char *next = result + strlen(result);
+       switch (parameter->type) {
+       case B_ARG:
+           sprintf(next, "%s", *(Boolean *) ((char *) xw + parameter->offset)
+                   ? "true"
+                   : "false");
+           break;
+       case I_ARG:
+           sprintf(next, "%d", TypedPtr(int));
+           break;
+       case D_ARG:
+           sprintf(next, "%.1f", TypedPtr(float));
+           break;
+       case S_ARG:
+           strcpy(next, TypedPtr(char *));
+#if OPT_RENDERFONT
+           if (!strcmp(parameter->name, XtNfaceName)) {
+               if (IsEmpty(next)
+                   && xw->work.render_font) {
+                   strcpy(next, DEFFACENAME_AUTO);
+               }
+           } else if (!strcmp(parameter->name, XtNrenderFont)) {
+               if (xw->work.render_font == erDefault
+                   && IsEmpty(xw->misc.default_xft.f_n)) {
+                   strcpy(next, "DefaultOff");
+               }
+           }
+#endif
+           break;
+       }
+    }
+    return result;
+}
+
+#if OPT_TRACE
+static void
+dumpFontParams(XtermWidget xw)
+{
+    char buffer[1024];
+    Cardinal n;
+
+    TRACE(("FontParams:\n"));
+    for (n = 0; n < XtNumber(fontParams); ++n) {
+       TRACE(("%3d:%s\n", n, formatFontParam(buffer, xw, fontParams + n)));
+    }
+}
+#else
+#define dumpFontParams(xw)     /* nothing */
+#endif
+
+static Boolean
+findFontParams(int argc, char **argv)
+{
+    Boolean result = False;
+
+    if (argc > RESTART_PARAMS && (argc - restart_params) > RESTART_PARAMS) {
+       int n;
+
+       for (n = 0; n < RESTART_PARAMS; ++n) {
+           int my_index = argc - restart_params - n - 1;
+           int my_param = (RESTART_PARAMS - n - 1) / 2;
+           char *actual = argv[my_index];
+           char expect[1024];
+           Boolean value = (Boolean) ((n % 2) == 0);
+
+           result = False;
+           TRACE(("...index: %d\n", my_index));
+           TRACE(("...param: %d\n", my_param));
+           TRACE(("...actual %s\n", actual));
+           if (IsEmpty(actual))
+               break;
+
+           if (value) {
+               formatFontParam(expect, None, fontParams + my_param);
+           } else {
+               strcpy(expect, "-xrm");
+           }
+
+           TRACE(("...expect %s\n", expect));
+
+           if (value) {
+               if (strlen(expect) >= strlen(actual))
+                   break;
+               if (strncmp(expect, actual, strlen(expect)))
+                   break;
+           } else {
+               if (strcmp(actual, expect))
+                   break;
+           }
+           TRACE(("fixme/ok:%d\n", n));
+           result = True;
+       }
+       TRACE(("findFontParams: %s (tested %d of %d parameters)\n",
+              BtoS(result), n + 1, RESTART_PARAMS));
+    }
+    return result;
+}
+
+static int
+insertFontParams(XtermWidget xw, int *targetp, Boolean first)
+{
+    int changed = 0;
+    int n;
+    int target = *targetp;
+    char buffer[1024];
+    const char *option = "-xrm";
+
+    for (n = 0; n < (int) XtNumber(fontParams); ++n) {
+       formatFontParam(buffer, xw, fontParams + n);
+       TRACE(("formatted %3d ->%3d:%s\n", n, target, buffer));
+       if (restart_command[target] == NULL)
+           restart_command[target] = x_strdup(option);
+       ++target;
+       if (first) {
+           restart_command[target] = x_strdup(buffer);
+           ++changed;
+       } else if (restart_command[target] == NULL
+                  || strcmp(restart_command[target], buffer)) {
+           free(restart_command[target]);
+           restart_command[target] = x_strdup(buffer);
+           ++changed;
+       }
+       ++target;
+    }
+    *targetp = target;
+    return changed;
+}
+
+void
+xtermUpdateRestartCommand(XtermWidget xw)
+{
+    if (resource.sessionMgt) {
+       Arg args[1];
+       char **argv = 0;
+
+       XtSetArg(args[0], XtNrestartCommand, &argv);
+       XtGetValues(toplevel, args, 1);
+       if (argv != NULL) {
+           static int my_params = 0;
+
+           int changes = 0;
+           Boolean first = False;
+           int argc;
+           int want;
+           int source, target;
+
+           TRACE(("xtermUpdateRestartCommand\n"));
+           dumpFontParams(xw);
+           for (argc = 0; argv[argc] != NULL; ++argc) {
+               TRACE((" arg[%d] = %s\n", argc, argv[argc]));
+               ;
+           }
+           want = argc - (restart_params + RESTART_PARAMS);
+
+           TRACE((" argc:           %d\n", argc));
+           TRACE((" restart_params: %d\n", restart_params));
+           TRACE((" want to insert: %d\n", want));
+
+           /*
+            * If we already have the font-choice option, do not add it again.
+            */
+           if (findFontParams(argc, argv)) {
+               my_params = (want);
+           } else {
+               first = True;
+               my_params = (argc - restart_params);
+           }
+           TRACE((" my_params:      %d\n", my_params));
+
+           if (my_params > argc) {
+               TRACE((" re-allocate restartCommand\n"));
+               FreeAndNull(restart_command);
+           }
+
+           if (restart_command == NULL) {
+               int need = argc + RESTART_PARAMS + 1;
+
+               restart_command = TypeCallocN(char *, need);
+
+               TRACE(("..inserting font-parameters\n"));
+               for (source = target = 0; source < argc; ++source) {
+                   if (source == my_params) {
+                       changes += insertFontParams(xw, &target, first);
+                       if (!first) {
+                           source += (RESTART_PARAMS - 1);
+                           continue;
+                       }
+                   }
+                   if (argv[source] == NULL)
+                       break;
+                   restart_command[target++] = x_strdup(argv[source]);
+               }
+               restart_command[target] = NULL;
+           } else {
+               TRACE(("..replacing font-parameters\n"));
+               target = my_params;
+               changes += insertFontParams(xw, &target, first);
+           }
+           if (changes) {
+               TRACE(("..%d parameters changed\n", changes));
+               XtSetArg(args[0], XtNrestartCommand, restart_command);
+               XtSetValues(toplevel, args, 1);
+           } else {
+               TRACE(("..NO parameters changed\n"));
+           }
+       }
+       TRACE_SM_PROPS();
+    }
+}
 #endif /* OPT_SESSION_MGT */
 
 Widget
@@ -7205,12 +7542,23 @@
 #ifdef TTYSIZE_STRUCT
     static int last_rows = -1;
     static int last_cols = -1;
+    static int last_high = -1;
+    static int last_wide = -1;
 
-    if (rows != last_rows || cols != last_cols) {
+    TRACE(("update_winsize %dx%d (%dx%d) -> %dx%d (%dx%d)\n",
+          last_rows, last_cols, last_high, last_wide,
+          rows, cols, height, width));
+
+    if (rows != last_rows
+       || cols != last_cols
+       || last_high != height
+       || last_wide != width) {
        TTYSIZE_STRUCT ts;
 
        last_rows = rows;
        last_cols = cols;
+       last_high = height;
+       last_wide = width;
        setup_winsize(ts, rows, cols, height, width);
        TRACE_RC(code, SET_TTYSIZE(fd, ts));
        trace_winsize(ts, "from SET_TTYSIZE");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/package/debian/changelog new/xterm-368/package/debian/changelog
--- old/xterm-367/package/debian/changelog      2021-02-22 22:18:59.000000000 
+0100
+++ new/xterm-368/package/debian/changelog      2021-04-28 02:02:52.000000000 
+0200
@@ -1,3 +1,9 @@
+xterm-dev (368) unstable; urgency=low
+
+  * maintenance updates
+
+ -- Thomas E. Dickey <[email protected]>  Tue, 27 Apr 2021 20:02:52 
-0400
+
 xterm-dev (367) unstable; urgency=low
 
   * maintenance updates
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/package/freebsd/Makefile new/xterm-368/package/freebsd/Makefile
--- old/xterm-367/package/freebsd/Makefile      2021-02-22 22:18:59.000000000 
+0100
+++ new/xterm-368/package/freebsd/Makefile      2021-04-28 02:02:52.000000000 
+0200
@@ -1,4 +1,4 @@
-# $XTermId: Makefile,v 1.88 2021/02/22 21:18:59 tom Exp $
+# $XTermId: Makefile,v 1.89 2021/04/28 00:02:52 tom Exp $
 # $FreeBSD: head/x11/xterm/Makefile 492827 2019-02-13 06:43:36Z ehaupt $
 
 # This is adapted from the FreeBSD port, installing as "xterm-dev" with
@@ -7,7 +7,7 @@
 # and "make makesum".
 
 PORTNAME=      xterm
-PORTVERSION=   367
+PORTVERSION=   368
 CATEGORIES=    x11
 MASTER_SITES=  ftp://ftp.invisible-island.net/xterm/:src1 \
                https://invisible-mirror.net/archives/xterm/:src1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/package/pkgsrc/Makefile new/xterm-368/package/pkgsrc/Makefile
--- old/xterm-367/package/pkgsrc/Makefile       2021-02-22 22:18:59.000000000 
+0100
+++ new/xterm-368/package/pkgsrc/Makefile       2021-04-28 02:02:52.000000000 
+0200
@@ -1,6 +1,6 @@
 # $NetBSD: Makefile,v 1.117 2018/03/12 11:18:00 wiz Exp $
 
-DISTNAME=      xterm-367
+DISTNAME=      xterm-368
 PKGREVISION=   1
 CATEGORIES=    x11
 MASTER_SITES=  ftp://ftp.invisible-island.net/xterm/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/package/xterm.spec new/xterm-368/package/xterm.spec
--- old/xterm-367/package/xterm.spec    2021-02-22 22:18:59.000000000 +0100
+++ new/xterm-368/package/xterm.spec    2021-04-28 02:02:52.000000000 +0200
@@ -1,11 +1,11 @@
-# $XTermId: xterm.spec,v 1.142 2021/02/22 21:18:59 tom Exp $
+# $XTermId: xterm.spec,v 1.143 2021/04/28 00:02:52 tom Exp $
 Summary: X terminal emulator (development version)
 %global my_middle xterm
 %global my_suffix -dev
 %global fullname %{my_middle}%{my_suffix}
 %global my_class XTermDev
 Name: %{fullname}
-Version: 367
+Version: 368
 Release: 1
 License: X11
 Group: User Interface/X
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/ptyx.h new/xterm-368/ptyx.h
--- old/xterm-367/ptyx.h        2021-03-21 23:11:10.000000000 +0100
+++ new/xterm-368/ptyx.h        2021-06-07 21:29:11.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: ptyx.h,v 1.1030 2021/03/21 22:11:10 tom Exp $ */
+/* $XTermId: ptyx.h,v 1.1032 2021/06/07 19:29:11 tom Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -1946,6 +1946,7 @@
        erFalse = 0
        , erTrue
        , erDefault
+       , erDefaultOff
        , erLast
 } RenderFont;
 
@@ -2731,6 +2732,7 @@
 #if OPT_SCROLL_LOCK
        Boolean         allowScrollLock;/* ScrollLock mode              */
        Boolean         allowScrollLock0;/* initial ScrollLock mode     */
+       Boolean         autoScrollLock; /* Auto ScrollLock mode         */
        Boolean         scroll_lock;    /* true to keep buffer in view  */
        Boolean         scroll_dirty;   /* scrolling makes screen dirty */
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/scrollbar.c new/xterm-368/scrollbar.c
--- old/xterm-367/scrollbar.c   2021-02-02 01:19:32.000000000 +0100
+++ new/xterm-368/scrollbar.c   2021-06-07 01:14:52.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: scrollbar.c,v 1.211 2021/02/02 00:19:32 tom Exp $ */
+/* $XTermId: scrollbar.c,v 1.212 2021/06/06 23:14:52 Stelios.Bounanos Exp $ */
 
 /*
  * Copyright 2000-2020,2021 by Thomas E. Dickey
@@ -379,7 +379,9 @@
 
     (void) always;
 #if OPT_SCROLL_LOCK
-    if (screen->allowScrollLock && (screen->scroll_lock && !always)) {
+    if (((screen->allowScrollLock && screen->scroll_lock)
+        || (screen->autoScrollLock && top < 0))
+       && !always) {
        if (screen->scroll_dirty) {
            screen->scroll_dirty = False;
            ScrnRefresh(xw, 0, 0, MaxRows(screen), MaxCols(screen), False);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/util.c new/xterm-368/util.c
--- old/xterm-367/util.c        2021-03-21 22:27:08.000000000 +0100
+++ new/xterm-368/util.c        2021-06-07 01:14:52.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: util.c,v 1.877 2021/03/21 21:27:08 tom Exp $ */
+/* $XTermId: util.c,v 1.878 2021/06/06 23:14:52 Stelios.Bounanos Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -627,7 +627,8 @@
        refreshheight = 0;
     } else
 #if OPT_SCROLL_LOCK
-    if (screen->allowScrollLock && screen->scroll_lock) {
+       if ((screen->allowScrollLock && screen->scroll_lock)
+           || (screen->autoScrollLock && screen->topline < 0)) {
        refreshheight = 0;
        screen->scroll_amt = 0;
        screen->refresh_amt = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/version.h new/xterm-368/version.h
--- old/xterm-367/version.h     2021-03-26 23:59:42.000000000 +0100
+++ new/xterm-368/version.h     2021-06-08 02:41:59.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: version.h,v 1.512 2021/03/26 22:59:42 tom Exp $ */
+/* $XTermId: version.h,v 1.514 2021/06/08 00:41:59 tom Exp $ */
 
 /*
  * Copyright 1998-2020,2021 by Thomas E. Dickey
@@ -38,8 +38,8 @@
  * version of X to which this version of xterm has been built.  The resulting
  * number in parentheses is my patch number (Thomas E. Dickey).
  */
-#define XTERM_PATCH   367
-#define XTERM_DATE    2021-03-26
+#define XTERM_PATCH   368
+#define XTERM_DATE    2021-06-07
 
 #ifndef __vendorversion__
 #define __vendorversion__ "XTerm"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/xterm.appdata.xml new/xterm-368/xterm.appdata.xml
--- old/xterm-367/xterm.appdata.xml     2021-03-27 00:00:37.000000000 +0100
+++ new/xterm-368/xterm.appdata.xml     2021-06-08 02:42:37.000000000 +0200
@@ -35,7 +35,7 @@
     <keyword>terminal</keyword>
   </keywords>
   <releases>
-    <release version="367" date="2021-03-26"/>
+    <release version="368" date="2021-06-07"/>
   </releases>
   <url type="homepage">https://invisible-island.net/xterm/</url>
   <update_contact>[email protected]</update_contact>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/xterm.h new/xterm-368/xterm.h
--- old/xterm-367/xterm.h       2021-03-21 23:44:36.000000000 +0100
+++ new/xterm-368/xterm.h       2021-06-07 01:14:40.000000000 +0200
@@ -1,4 +1,4 @@
-/* $XTermId: xterm.h,v 1.890 2021/03/21 22:44:36 tom Exp $ */
+/* $XTermId: xterm.h,v 1.893 2021/06/06 23:14:40 Stelios.Bounanos Exp $ */
 
 /*
  * Copyright 1999-2020,2021 by Thomas E. Dickey
@@ -454,6 +454,7 @@
 #define XtNappkeypadDefault    "appkeypadDefault"
 #define XtNassumeAllChars      "assumeAllChars"
 #define XtNautoWrap            "autoWrap"
+#define XtNautoScrollLock      "autoScrollLock"
 #define XtNawaitInput          "awaitInput"
 #define XtNbackarrowKey                "backarrowKey"
 #define XtNbellIsUrgent                "bellIsUrgent"
@@ -668,6 +669,7 @@
 #define XtCAppkeypadDefault    "AppkeypadDefault"
 #define XtCAssumeAllChars      "AssumeAllChars"
 #define XtCAutoWrap            "AutoWrap"
+#define XtCAutoScrollLock      "AutoScrollLock"
 #define XtCAwaitInput          "AwaitInput"
 #define XtCBackarrowKey                "BackarrowKey"
 #define XtCBellIsUrgent                "BellIsUrgent"
@@ -1300,9 +1302,11 @@
 #if OPT_SESSION_MGT
 extern void xtermCloseSession (void);
 extern void xtermOpenSession (void);
+extern void xtermUpdateRestartCommand(XtermWidget /* xw */);
 #else
 #define xtermCloseSession() /* nothing */
 #define xtermOpenSession() /* nothing */
+#define xtermUpdateRestartCommand(xw) /* nothing */
 #endif
 
 #if OPT_WIDE_CHARS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/xterm.log.html new/xterm-368/xterm.log.html
--- old/xterm-367/xterm.log.html        2021-03-27 00:02:54.000000000 +0100
+++ new/xterm-368/xterm.log.html        2021-06-08 02:41:48.000000000 +0200
@@ -30,7 +30,7 @@
  * sale, use or other dealings in this Software without prior written        *
  * authorization.                                                            *
  *****************************************************************************
-  $XTermId: xterm.log.html,v 1.2326 2021/03/26 23:02:54 tom Exp $
+  $XTermId: xterm.log.html,v 1.2334 2021/06/08 00:41:48 tom Exp $
   -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <html>
@@ -70,6 +70,8 @@
   CHANGELOG</a>).</p>
 
   <ul>
+    <li><a href="#xterm_368">Patch #368 - 2021/06/07</a></li>
+
     <li><a href="#xterm_367">Patch #367 - 2021/03/26</a></li>
 
     <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li>
@@ -1012,6 +1014,27 @@
     <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li>
   </ul>
 
+  <h1><a name="xterm_368" id="xterm_368">Patch #368 -
+  2021/06/07</a></h1>
+
+  <ul>
+    <li>add <code>DefaultOff</code> option to
+    <code>RenderFont</code> resource, as part of the
+    session-management feature.</li>
+
+    <li>add auto-scroll-lock feature (patch by add Stelios
+    Bounanos).</li>
+
+    <li>update the window-size information returned via
+    <code>TIOCGWINSZ</code> when rows/columns are unchanged but the
+    font-size changes (report by Nick Black).</li>
+
+    <li>improve session-management feature by saving/restoring the
+    font settings.</li>
+
+    <li>update config.guess, config.sub</li>
+  </ul>
+
   <h1><a name="xterm_367" id="xterm_367">Patch #367 -
   2021/03/26</a></h1>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xterm-367/xterm.man new/xterm-368/xterm.man
--- old/xterm-367/xterm.man     2021-03-27 00:11:13.000000000 +0100
+++ new/xterm-368/xterm.man     2021-06-07 23:00:31.000000000 +0200
@@ -1,5 +1,5 @@
 '\" t
-.\" $XTermId: xterm.man,v 1.844 2021/03/26 23:11:13 tom Exp $
+.\" $XTermId: xterm.man,v 1.848 2021/06/07 21:00:31 tom Exp $
 .\"
 .\" Copyright 1996-2020,2021 by Thomas E. Dickey
 .\"
@@ -1628,7 +1628,8 @@
 and is limited to the range 1 through 100.
 .TP 8
 .B "cursorTheme\fP (class\fB CursorTheme\fP)"
-The Xcursor(__miscmansuffix__) library provides a way to 
+The Xcursor(__miscmansuffix__) library
+provides a way to change the pointer shape and size.
 The X11 library uses this library to extend the font- and glyph-cursor
 calls used by applications such as \fI\*n\fP  to substitute external
 files for the built-in \*(``core\*('' cursors provided by X.
@@ -2286,6 +2287,8 @@
 This key is generally unused in keyboard configurations,
 and has not acquired a standard meaning even when it is used in that manner.
 Consequently, users have assigned it for ad hoc purposes.
+.IP
+See also the \fBautoScrollLock\fP resource.
 .TP 8
 .B "allowSendEvents\fP (class\fB AllowSendEvents\fP)"
 Specifies whether or not synthetic key and button events (generated using
@@ -2455,6 +2458,14 @@
 (such as the ISO-10646-1 encoding of Terminus)
 which have incorrect font-metrics.
 .TP 8
+.B "autoScrollLock\fP (class\fB AutoScrollLock\fP)"
+If \*(``true\*('', \fI\*n\fR will maintain its viewport of displayed lines
+whenever displaying scrollback, as if \fBallowScrollLock\fP were enabled
+and the Scroll Lock key had been pressed.
+The default is \*(``false\*(''.
+This feature is only useful if the \fBscrollTtyOutput\fP resource is set to
+\*(``false\*(''.
+.TP 8
 .B "autoWrap\fP (class\fB AutoWrap\fP)"
 Specifies whether or not auto-wraparound should be enabled.
 This is the same as the VT102 DECAWM.
@@ -4811,6 +4822,12 @@
 If the \fBfaceName\fP resource is set,
 then start by using the TrueType font rather than the bitmap font.
 .RE
+.TP 5
+defaultOff
+.br
+Enable the \*(``TrueType Fonts\*(''
+menu entry to allow runtime switching to/from TrueType fonts,
+but allow it to be initially unselected if no \fBfaceName\fP resource was 
given.
 .RE
 .TP 8
 .B "resizeByPixel\fP (class\fB ResizeByPixel\fP)"

Reply via email to