Fix how custom themes handle faces, so the multi-tty/multi-frame case works.
authorChong Yidong <cyd@stupidchicken.com>
Sun, 3 Jul 2011 22:16:07 +0000 (18:16 -0400)
committerChong Yidong <cyd@stupidchicken.com>
Sun, 3 Jul 2011 22:16:07 +0000 (18:16 -0400)
commit1485f4c03a3e887f8e60fefb96e5e3d9ca484cf7
tree07c3889b6d224dbf2c2fcc647580c2ff548e56dd
parent9fa3dd45482a9fa8084fae495b3a857a216decf2
Fix how custom themes handle faces, so the multi-tty/multi-frame case works.

* lisp/custom.el (custom-push-theme): Don't record faces in `changed'
theme; this doesn't work correctly for per-frame face settings.
(disable-theme): Use face-set-after-frame-default to reset faces.
(custom--frame-color-default): New function.

* lisp/frame.el (frame-background-mode, frame-set-background-mode):
Moved from faces.el.
(frame-default-terminal-background): New function.

* src/xfaces.c (Finternal_merge_in_global_face): Modify the foreground
and background color parameters if they have been changed.
lisp/ChangeLog
lisp/custom.el
lisp/faces.el
lisp/frame.el
src/ChangeLog
src/xfaces.c