GNU bug report logs - #36803
27.0.50; Update mode-line of every window when compilation ends

Previous Next

Package: emacs;

Reported by: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>

Date: Wed, 24 Jul 2019 21:23:02 UTC

Severity: normal

Found in version 27.0.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 36803 <at> debbugs.gnu.org, larsi <at> gnus.org, kevin.legouguec <at> gmail.com
Subject: Re: bug#36803: 27.0.50;
 Update mode-line of every window when compilation ends
Date: Fri, 26 Jul 2019 21:16:55 +0300
> From: Stefan Monnier <monnier <at> iro.umontreal.ca>
> Cc: 36803 <at> debbugs.gnu.org,  larsi <at> gnus.org,  kevin.legouguec <at> gmail.com
> Date: Fri, 26 Jul 2019 12:23:26 -0400
> 
> > So you are saying that there's a redisplay bug, whereby some windows
> > that display a buffer don't have their mode line updated in the recipe
> > of this bug report?
> 
> In the recipe of this bug, we have a process in the compilation buffer
> and the status of this process is reflected in the mode line of
> *all* windows (via the compilation-in-progress variable).
> 
> The "process status" I'm referring to above is another kind of "process
> status" in the mode-line: that of `mode-line-process` which is usually
> buffer-local and only reflects the status of the process running in that
> same buffer.

But the recipe uses "C-x 2" several times, so all the windows display
the same buffer.  And yet one of them has its mode line not updated
after the process exist.

> >> Additionally, in this particular case, the need to update all mode-lines
> >> doesn't come from the fact that a sentinel was run, but from the fact
> >> that compilation-in-progress was modified, which can (and does) also
> >> happen when no sentinel is run.  So I think TRT is something like the
> >> patch below.
> > force-mode-line-update with a non-nil argument affects all the
> > windows, even those which don't show the process status.  So why are
> > you saying it's TRT in this case?
> 
> Because the status of the compilation process *is* by default reflected
> in the mode line of all windows

Then we should update all mode lines when the status changes, and we
should not require any Lisp to force that update.




This bug report was last modified 6 years and 28 days ago.

Previous Next


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