GNU bug report logs -
#61496
30.0.50; Default value of icon-title-format
Previous Next
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
View this message in rfc822 format
Óscar Fuentes <ofv <at> wanadoo.es> writes:
> 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.
I agree with this change, but please note that our coding style means
you should write:
fmt = (FRAME_ICONIFIED_P && !NILP (Vicon_title_format)
? Vicon_title_format : Vframe_title_format);
instead.
Thanks.
This bug report was last modified 2 years and 158 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.