Subject: Re: bug#14326: 24.3; Conflict of w32-send-sys-command and set-default-font

From: martin rudalics <[email-masked]>
Date: Thu, 02 May 2013 20:32:54 +0200

>> Do you mean that `set-default-font' does not cause a WM_SIZE message?
 >
 > It does (although not with a maximize request), but that's not what I
 > meant.  I meant that set-default-font immediately causes the internals
 > to reflect the change, whereas for w32-send-sys-command this only
 > happens _after_ Emacs receives the maximize request and acts upon it
 > by resizing the frame.

w32term.c contains the following comment text:

   /* The following mirrors what is done in xterm.c. It appears to be
      for informing lisp of the new size immediately, while the actual
      resize will happen asynchronously. But on Windows, the menu bar
      automatically wraps when the frame is too narrow to contain it,
      and that causes any calculations made here to come out wrong. The
      end is some nasty buggy behavior, including the potential loss
      of the minibuffer.

      ...  */

So we reflect the change internally for `set-default-font', which, when
changing the default font to a very small size may easily cause a wrap
of the menubar, while we do not reflect the change internally for a
maximization which hardly ever will cause the menubar to wrap more than
it wrapped before.

Something doesn't make sense here :-(

martin