GNU bug report logs - #22466
25.0.50; disable-theme apparently forces a redisplay and causes a screen flash

Previous Next

Package: emacs;

Reported by: Artur Malabarba <bruce.connor.am <at> gmail.com>

Date: Tue, 26 Jan 2016 11:04:01 UTC

Severity: minor

Merged with 20016

Found in versions 24.4, 25.0.50

Full log


View this message in rfc822 format

From: Artur Malabarba <bruce.connor.am <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 22466 <at> debbugs.gnu.org
Subject: bug#22466: 25.0.50; disable-theme apparently forces a redisplay and causes a screen flash
Date: Wed, 27 Jan 2016 20:20:43 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

> So disable-theme actually means go back to the default theme?  If so,
> when someone changes a theme, they don't really need to call
> disable-theme, right?  They could just call load-theme with the new
> theme as an argument?

I'm not sure why you reach this conclusion. `disable-theme' is meant to
disable a single theme. If I have theme X enabled, then (disable-theme 'X) is
supposed to restore the default Emacs appearance. If have two themes enabled (X
and Y), then (disable-theme 'X) is supposed to give me just the
appearance of theme Y.

Right now, that's indeed what it does. But if I remove the form (as you
asked) then it fails to do the above (it doesn't remove the background
set by the disabled theme).

> Then it would make sense to find a way of switching a theme without
> changing the frame's background color, if that's possible (i.e. if the
> new theme keeps the same background color).  If there's a function
> missing for that, I'd suggest to add one.

How about just running that form only when necessary (i.e., only if the
disabled theme actually sets the frame `background-color')?




This bug report was last modified 106 days ago.

Previous Next


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