Subject: 24.3.50; enabling & disabling custom themes is slow

From: Drew Adams <[email-masked]>
Date: Sun, 27 Oct 2013 14:07:30 -0700 (PDT)

Custom themes were presumably inspired from the color themes of library
`color-theme.el'.  Color themes are very quick, however, compared to
custom themes.  You can easily cycle among them, instantaneously, with
no flicker etc.  Not so, custom themes - disabling all enabled themes
and then enabling one theme is painfully slow, and you see all of the
changes manifested on the screen, slowly.  The same is true if there is
only one theme enabled: disabling it and enabling another is very slow.

Is this something that could be fixed?

A custom theme is, I believe, heavier duty, saving more information than
a color theme.  A color theme records frame parameters, faces, and some
variables - no more.

Does this difference in the amount of information account for the
difference in performance?  Dunno.  Hoping someone will take a look...

FYI, color-theme.el is here, and it still works fine with Emacs 24:
http://www.nongnu.org/color-theme.

See also bug #15687: cus-theme.el should provide a means to restore the
initial state, before enabling a theme.

In GNU Emacs 24.3.50.1 (i686-pc-mingw32)
 of 2013-10-19 on LEG570
Bzr revision: 114715 [email-masked]
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
 `configure --enable-checking 'CFLAGS=-O0 -g3' CPPFLAGS=-DGLYPH_DEBUG=1'