Mercurial > emacs
changeset 34242:dd4e1abada68
(Finternal_set_lisp_face_attribute): If FRAME is `t', update
`default-frame-alist' instead of setting no frame parameters.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Wed, 06 Dec 2000 01:12:43 +0000 |
parents | f52846f4d5bd |
children | 3c177bd8d9ac |
files | src/xfaces.c |
diffstat | 1 files changed, 15 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfaces.c Wed Dec 06 00:28:48 2000 +0000 +++ b/src/xfaces.c Wed Dec 06 01:12:43 2000 +0000 @@ -4080,8 +4080,7 @@ #ifdef HAVE_WINDOW_SYSTEM - if (!EQ (frame, Qt) - && !UNSPECIFIEDP (value) + if (!UNSPECIFIEDP (value) && NILP (Fequal (old_value, value))) { Lisp_Object param; @@ -4136,13 +4135,20 @@ ++menu_face_change_count; if (!NILP (param)) - { - Lisp_Object cons; - cons = XCAR (Vparam_value_alist); - XCAR (cons) = param; - XCDR (cons) = value; - Fmodify_frame_parameters (frame, Vparam_value_alist); - } + if (EQ (frame, Qt)) + /* Update `default-frame-alist', which is used for new frames. */ + { + store_in_alist (&Vdefault_frame_alist, param, value); + } + else + /* Update the current frame's parameters. */ + { + Lisp_Object cons; + cons = XCAR (Vparam_value_alist); + XCAR (cons) = param; + XCDR (cons) = value; + Fmodify_frame_parameters (frame, Vparam_value_alist); + } } #endif /* HAVE_WINDOW_SYSTEM */