all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#22466: 25.0.50; disable-theme apparently forces a redisplay and causes a screen flash
@ 2016-01-26  9:02 Artur Malabarba
  2016-01-26 14:58 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Artur Malabarba @ 2016-01-26  9:02 UTC (permalink / raw)
  To: 22466


1. From “emacs -Q” evaluate `(load-theme 'tango-dark)'. Any other theme
with a dark background will also do.

2. Then, notice how every time you evaluate the following code, the
screen flashes white for a moment, and then resumes the exact same
appearance.

    (progn (disable-theme 'tango-dark)
           (load-theme 'tango-dark))

Of course, “resuming the same appearance” is expected, the problem is
that the white flash is distracting, unnecessary, and eye-hurting.

I understand _why_ it happens (after `disable-theme' the background is
actually white), but I don't see why it _has_ to happen. That is, why
does Emacs redisplay the frame in the middle of lisp evaluation, instead
of waiting until the end of the command loop?

More importantly, is this redisplay (or “partial redisplay”, or whatever
it is) be avoided, so Emacs doesn't flash white on my pretty little eyes?

-----

ps: In case it helps, investigation shows that this is caused by this
form inside `disable-theme':

    (set-frame-parameter frame 'background-color
    			     (custom--frame-color-default
    			      frame :background "background" "Background"
    			      "unspecified-bg" "white"))

I'm not saying this form is wrong. I'm just pointing to where it happens.





^ permalink raw reply	[flat|nested] 13+ messages in thread
[parent not found: <<87y4bcsogq.fsf@gmail.com>]

end of thread, other threads:[~2016-01-28  3:36 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-26  9:02 bug#22466: 25.0.50; disable-theme apparently forces a redisplay and causes a screen flash Artur Malabarba
2016-01-26 14:58 ` Eli Zaretskii
2016-01-26 16:36   ` Drew Adams
2016-01-26 17:03     ` Eli Zaretskii
2016-01-26 18:41       ` Michael Albinus
2016-01-26 18:55         ` Eli Zaretskii
2016-01-26 19:31           ` Michael Albinus
     [not found]       ` <<87y4bc89pt.fsf@gmx.de>
     [not found]         ` <<834me01881.fsf@gnu.org>
2016-01-26 23:02           ` Drew Adams
2016-01-26 17:25   ` Artur Malabarba
2016-01-26 20:15     ` Eli Zaretskii
2016-01-27 20:20       ` Artur Malabarba
2016-01-28  3:36         ` Eli Zaretskii
     [not found] <<87y4bcsogq.fsf@gmail.com>
     [not found] ` <<83powo1j71.fsf@gnu.org>
     [not found]   ` <<1bbf7218-bd5b-4618-822c-cd75884a81ee@default>
     [not found]     ` <<83d1so1df3.fsf@gnu.org>
2016-01-26 17:07       ` Drew Adams

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.