GNU bug report logs - #53839
29.0.50; Strange bug causes tool bar to be overwritten

Previous Next

Package: emacs;

Reported by: Po Lu <luangruo <at> yahoo.com>

Date: Mon, 7 Feb 2022 09:16:01 UTC

Severity: normal

Found in version 29.0.50

Done: Po Lu <luangruo <at> yahoo.com>

Bug is archived. No further changes may be made.

Full log


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

From: martin rudalics <rudalics <at> gmx.at>
To: Po Lu <luangruo <at> yahoo.com>
Cc: 53839 <at> debbugs.gnu.org
Subject: Re: bug#53839: 29.0.50; Strange bug causes tool bar to be overwritten
Date: Mon, 7 Feb 2022 16:49:57 +0100
> FWIW, the window manager I used to test was GNOME Shell.

Then the reason is what I told you earlier: In x_wm_set_size_hint in
xterm.c I have


#ifndef USE_GTK
void
x_wm_set_size_hint (struct frame *f, long flags, bool user_position, bool base_size)
{
  XSizeHints size_hints;
  Window window = FRAME_OUTER_WINDOW (f);

  if (!window)
    return;

  /* 2021 REMIX: Don't call widget_update_wm_size_hints here since on
     GNOME shell get_wm_shell may fail to produce the wmshell widget.
     As a consequence, no size hints get set before we issue our resize
     request, mutter (presumably) refuses to resize the outer window as
     requested and we end up with a wrong initial frame size.

     It's not clear whether other calls of update_wm_hints are affected
     as well but not calling widget_update_wm_size_hints here seems
     sufficient to fix the bug.  */

/** #ifdef USE_X_TOOLKIT **/
/**   if (f->output_data.x->widget) **/
/**     { **/
/**       widget_update_wm_size_hints (f->output_data.x->widget); **/
/**       return; **/
/**     } **/
/** #endif **/

  /* Setting PMaxSize caused various problems.  */

...

which works around that problem.  (I didn't try your fix but am
convinced that it gets the initial frame height wrong.)

martin




This bug report was last modified 3 years and 108 days ago.

Previous Next


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