all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "Johan Myréen" <johan.myreen@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: Menu-bar flickering on Win10
Date: Fri, 04 Nov 2022 15:54:21 +0200	[thread overview]
Message-ID: <8335ay6d0y.fsf@gnu.org> (raw)
In-Reply-To: <CA+TD5hj80-q+bJcVvsFAh8trDAF8Z=n4xu6vpu-Qfn7xr4NAcg@mail.gmail.com> (message from Johan Myréen on Fri, 4 Nov 2022 14:51:48 +0200)

> From: Johan Myréen <johan.myreen@gmail.com>
> Date: Fri, 4 Nov 2022 14:51:48 +0200
> 
> The menu bar flickers for me on Windows, too. It is not as disturbing as for Arash, though.
> 
> I have attached a picture composed of four consecutive (partial) frames from a screen recording. In the
> uppermost frame the Emacs window is just about to lose focus, and in the three lower frames the menu bar
> is being redrawn after losing focus. In the second frame only the word "File" is displayed, in the third frame the
> words "File Edit Options Buffers" and only the fourth frame shows all seven menu headers.
> 
> This result was obtained the way Arash described: I started Emacs with emacs -Q, C-x 5 2 and then switched
> between the two frames.

This is purely a Windows display issue.  Emacs refreshes the menu bar
when another frame gets focus, because that means a different window
becomes the selected window, and when a window becomes selected, it
should be redisplayed.  As a side effect of redisplaying a window, we
recompute the frame's top-level menu items and call the Windows API
that draws the menu.  The expectation from Windows is that it doesn't
actually redraw the menu bar when its contents didn't change, but
evidently in your case that doesn't happen.

Unless someone can point out how to call the Windows APIs in a way
that avoids this, I don't see what we can do with this issue.



  reply	other threads:[~2022-11-04 13:54 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-04 12:51 Menu-bar flickering on Win10 Johan Myréen
2022-11-04 13:54 ` Eli Zaretskii [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-11-02 12:08 Arash Esbati
2022-11-02 12:14 ` Po Lu
2022-11-02 13:17 ` Eli Zaretskii
2022-11-02 13:35   ` Arash Esbati
2022-11-02 13:53     ` Eli Zaretskii
2022-11-02 14:07       ` Arash Esbati
2022-11-02 15:11         ` Eli Zaretskii
2022-11-03 10:46           ` Arash Esbati
2022-11-03 11:26             ` Eli Zaretskii
2022-11-03 11:51               ` Po Lu
2022-11-03 13:55                 ` Arash Esbati

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8335ay6d0y.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=johan.myreen@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.