GNU bug report logs - #61496
30.0.50; Default value of icon-title-format

Previous Next

Package: emacs;

Reported by: Óscar Fuentes <ofv <at> wanadoo.es>

Date: Tue, 14 Feb 2023 00:03:01 UTC

Severity: normal

Found in version 30.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Óscar Fuentes <ofv <at> wanadoo.es>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.50; Default value of icon-title-format
Date: Tue, 14 Feb 2023 01:02:04 +0100
AFAIK icon-title-format was broken since long time ago (possibly for
several major releases) and it was fixed recently.

I propose that its default value should be nil, and interpret that value
as "same as frame-title-format". That's why:

1. The case of having an specific frame title when it is iconified seems
   to me as way less frequent than expecting that the frame keeps the
   same title.

2. After upgrading to Emacs 29, users that set frame-title-format will
   see how frames change their title when iconified.

3. There are mechanisms for applying settings or performing actions
   depending on the title of a frame (KDE Window Rules and scripts based
   on xdotool, for instance.) For keeping those mechanisms on a working
   state with Emacs 29, the user must ensure that either it keeps
   icon-title-format synced with frame-title-format and/or his scripts
   must be adapted. Without that, any config that depends on the
   content's of the frame title will be broken (unless the user already
   set icon-title-format, but it would be surprising if he did, as that
   setting had no effect until now.)

Having a working icon-title-format, in practice, is a new feature, so
defining a new default for it shouldn't have any impact. Certainly, it
will not have a visible effect compared to recent Emacs releases.
However, keeping its current default value may cause confusion and
breakage for any user that sets frame-title-format on his config.

The required change in code is simple enough:

src/xdisp.c | 3 ++-

modified   src/xdisp.c
@@ -13424,7 +13424,8 @@ gui_consider_frame_title (Lisp_Object frame)
 
       Fselect_window (f->selected_window, Qt);
       set_buffer_internal_1 (XBUFFER (XWINDOW (f->selected_window)->contents));
-      fmt = FRAME_ICONIFIED_P (f) ? Vicon_title_format : Vframe_title_format;
+      fmt = FRAME_ICONIFIED_P (f) && !NILP (Vicon_title_format) ?
+	Vicon_title_format : Vframe_title_format;
 
       mode_line_target = MODE_LINE_TITLE;
       title_start = MODE_LINE_NOPROP_LEN (0);

... plus a trivial doc change on its DEFVAR_LISP and initialization.

If this proposal is acceptable, it should be applied to Emacs 29, to
avoid putting ourselves on a similar scenario when Emacs 30 is released.




This bug report was last modified 2 years and 156 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.