From: Juanma Barranquero Date: Thu, 30 Oct 2008 01:27:06 +0000 (+0000) Subject: * w32fns.c (x_create_tip_frame): Prevent default foreground color for X-Git-Tag: emacs-pretest-23.0.90~2093 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=601a9cf1e3376caefba7bfe4e60402ac1ec219dd;p=emacs.git * 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 --git a/src/ChangeLog b/src/ChangeLog index a690efe2c9b..f64c77b8e9f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -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 --git a/src/w32fns.c b/src/w32fns.c index f98a53f95d4..3fe9622b007 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -4364,7 +4364,7 @@ This function is an internal primitive--use `make-frame' instead. */) 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 @@ x_create_tip_frame (dpyinfo, parms, text) 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;