GNU bug report logs - #51490
Show an indicator when Emacs is busy somewhere in the Emacs window

Previous Next

Package: emacs;

Reported by: Stefan Kangas <stefan <at> marxist.se>

Date: Fri, 29 Oct 2021 18:00:02 UTC

Severity: wishlist

Full log


View this message in rfc822 format

From: Gregory Heytings <gregory <at> heytings.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: larsi <at> gnus.org, stefan <at> marxist.se, 51490 <at> debbugs.gnu.org
Subject: bug#51490: Show an indicator when Emacs is busy somewhere in the Emacs window
Date: Thu, 22 Sep 2022 15:57:04 +0000
>> I'm thinking aloud here, sorry if it isn't useful.  But I think we have 
>> at least one similar occurrence: XTflash.
>
> Which part of it seemed similar to what is being discussed here?
>

The fact that a portion of the frame is modified without a complete 
redisplay of the frame, through primitive drawing functions?  Am I missing 
something?  Would it not be possible to draw a busy indicator at a fixed 
position of the frame with XDrawRectangle for the background, followed by 
XDrawPoints for the foreground?

>> But would it be really necessary to access these faces each time the 
>> indicator would be drawn?  We could for example cache the values of 
>> these two colors somewhere
>
> Faces are already cached.  But for each cache there comes a time when it 
> must be flushed and/or refreshed, and during those times you cannot 
> safely use the cache.
>

What I had in mind is a more primitive cache mechanism: two C variables.

>> or decide to do something different and use a specific function to set 
>> these two colors without going through the whole face machinery, 
>> something like (set-busy-indicator-colors FOREGROUND BACKGROUND).
>
> As soon as we allow set-busy-indicator-colors or somesuch, we have a 
> problem with Lisp programs doing that exactly when there's time to 
> redraw the indicator.
>

We could specify that set-busy-indicator-colors is only meant to be used 
in init files, for example.




This bug report was last modified 2 years and 330 days ago.

Previous Next


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