]> Sergey Matveev's repositories - st.git/commitdiff
Reset title when an empty title string is given
authorDOGMAN <dogman@aaathats3as.com>
Wed, 3 Apr 2024 17:48:11 +0000 (19:48 +0200)
committerHiltjo Posthuma <hiltjo@codemadness.org>
Wed, 3 Apr 2024 17:49:05 +0000 (19:49 +0200)
With this patch, st will reset its window title when an empty string is
given as the terminal title. For example:
printf "\033]0;\007"

Some applications, like termdown, expect this functionality. xterm
implements it, but it seems that most other terminal emulators don't.
In any case, I don't see why there should ever be a case where the st
window doesn't have a title property.

x.c

diff --git a/x.c b/x.c
index b36fb8c8f0ce6272d59224ac28d2b92333128507..bd236869526584bdc5f30fd719535122164c5a52 100644 (file)
--- a/x.c
+++ b/x.c
@@ -1617,6 +1617,9 @@ xseticontitle(char *p)
        XTextProperty prop;
        DEFAULT(p, opt_title);
 
+       if (p[0] == '\0')
+               p = opt_title;
+
        if (Xutf8TextListToTextProperty(xw.dpy, &p, 1, XUTF8StringStyle,
                                        &prop) != Success)
                return;
@@ -1631,6 +1634,9 @@ xsettitle(char *p)
        XTextProperty prop;
        DEFAULT(p, opt_title);
 
+       if (p[0] == '\0')
+               p = opt_title;
+
        if (Xutf8TextListToTextProperty(xw.dpy, &p, 1, XUTF8StringStyle,
                                        &prop) != Success)
                return;