# HG changeset patch # User Juanma Barranquero # Date 1225330026 0 # Node ID eccf5258acafaf9733034888a888afc88119d2cb # Parent 770ae8d8f7f433f65368972064860f41a159cfaa * w32fns.c (x_create_tip_frame): Prevent default foreground color for new frames overriding foreground for tooltips. Based on similar patch from Martin Rudalics . (Bug#1032) diff -r 770ae8d8f7f4 -r eccf5258acaf src/ChangeLog --- a/src/ChangeLog Wed Oct 29 21:42:37 2008 +0000 +++ b/src/ChangeLog Thu Oct 30 01:27:06 2008 +0000 @@ -1,3 +1,9 @@ +2008-10-30 Juanma Barranquero + + * w32fns.c (x_create_tip_frame): Prevent default foreground color for + new frames overriding foreground for tooltips. Based on similar patch + from Martin Rudalics . (Bug#1032) + 2008-10-29 Chong Yidong * emacs.c (Fdaemon_initialized): Initialize nfd. @@ -37,7 +43,7 @@ (main): Don't set is_daemon. (IS_DAEMON): New macro. (Fdaemonp, Fdaemon_initialized): Use it. - (Fdaemon_initialized): Wrtie a char into the pipe to make sure the + (Fdaemon_initialized): Write a char into the pipe to make sure the parent exits. (syms_of_emacs): Explicitly initialize daemon_pipe[1]. diff -r 770ae8d8f7f4 -r eccf5258acaf src/w32fns.c --- a/src/w32fns.c Wed Oct 29 21:42:37 2008 +0000 +++ b/src/w32fns.c Thu Oct 30 01:27:06 2008 +0000 @@ -4364,7 +4364,7 @@ x_default_parameter (f, parameters, Qborder_width, make_number (2), "borderWidth", "BorderWidth", RES_TYPE_NUMBER); - /* We recognize either internalBorderWidth or internalBorder + /* We recognize either internalBorderWidth or internalBorder (which is what xterm calls it). */ if (NILP (Fassq (Qinternal_border_width, parameters))) { @@ -5534,14 +5534,20 @@ of the tooltip frame appear in pink. Prevent this. */ { Lisp_Object bg = Fframe_parameter (frame, Qbackground_color); + Lisp_Object fg = Fframe_parameter (frame, Qforeground_color); + Lisp_Object colors = Qnil; /* Set tip_frame here, so that */ tip_frame = frame; call2 (Qface_set_after_frame_default, frame, Qnil); if (!EQ (bg, Fframe_parameter (frame, Qbackground_color))) - Fmodify_frame_parameters (frame, Fcons (Fcons (Qbackground_color, bg), - Qnil)); + colors = Fcons (Fcons (Qbackground_color, bg), colors); + if (!EQ (fg, Fframe_parameter (frame, Qforeground_color))) + colors = Fcons (Fcons (Qforeground_color, fg), colors); + + if (!NILP (colors)) + Fmodify_frame_parameters (frame, colors); } f->no_split = 1;