aboutsummaryrefslogtreecommitdiffstats
path: root/src/xfns.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xfns.c')
-rw-r--r--src/xfns.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/xfns.c b/src/xfns.c
index f3fff57f805..6b23e246b22 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -1405,7 +1405,7 @@ x_set_foreground_color (f, arg, oldval)
1405 XSetBackground (FRAME_X_DISPLAY (f), f->output_data.x->reverse_gc, 1405 XSetBackground (FRAME_X_DISPLAY (f), f->output_data.x->reverse_gc,
1406 f->output_data.x->foreground_pixel); 1406 f->output_data.x->foreground_pixel);
1407 UNBLOCK_INPUT; 1407 UNBLOCK_INPUT;
1408 recompute_basic_faces (f); 1408 update_face_from_frame_parameter (f, Qforeground_color, arg);
1409 if (FRAME_VISIBLE_P (f)) 1409 if (FRAME_VISIBLE_P (f))
1410 redraw_frame (f); 1410 redraw_frame (f);
1411 } 1411 }
@@ -1447,7 +1447,7 @@ x_set_background_color (f, arg, oldval)
1447 } 1447 }
1448 UNBLOCK_INPUT; 1448 UNBLOCK_INPUT;
1449 1449
1450 recompute_basic_faces (f); 1450 update_face_from_frame_parameter (f, Qbackground_color, arg);
1451 1451
1452 if (FRAME_VISIBLE_P (f)) 1452 if (FRAME_VISIBLE_P (f))
1453 redraw_frame (f); 1453 redraw_frame (f);
@@ -1586,6 +1586,8 @@ x_set_mouse_color (f, arg, oldval)
1586 1586
1587 XFlush (FRAME_X_DISPLAY (f)); 1587 XFlush (FRAME_X_DISPLAY (f));
1588 UNBLOCK_INPUT; 1588 UNBLOCK_INPUT;
1589
1590 update_face_from_frame_parameter (f, Qmouse_color, arg);
1589} 1591}
1590 1592
1591void 1593void
@@ -1631,6 +1633,8 @@ x_set_cursor_color (f, arg, oldval)
1631 x_update_cursor (f, 1); 1633 x_update_cursor (f, 1);
1632 } 1634 }
1633 } 1635 }
1636
1637 update_face_from_frame_parameter (f, Qcursor_color, arg);
1634} 1638}
1635 1639
1636/* Set the border-color of frame F to value described by ARG. 1640/* Set the border-color of frame F to value described by ARG.
@@ -1649,15 +1653,12 @@ x_set_border_color (f, arg, oldval)
1649 struct frame *f; 1653 struct frame *f;
1650 Lisp_Object arg, oldval; 1654 Lisp_Object arg, oldval;
1651{ 1655{
1652 unsigned char *str;
1653 int pix; 1656 int pix;
1654 1657
1655 CHECK_STRING (arg, 0); 1658 CHECK_STRING (arg, 0);
1656 str = XSTRING (arg)->data;
1657
1658 pix = x_decode_color (f, arg, BLACK_PIX_DEFAULT (f)); 1659 pix = x_decode_color (f, arg, BLACK_PIX_DEFAULT (f));
1659
1660 x_set_border_pixel (f, pix); 1660 x_set_border_pixel (f, pix);
1661 update_face_from_frame_parameter (f, Qborder_color, arg);
1661} 1662}
1662 1663
1663/* Set the border-color of frame F to pixel value PIX. 1664/* Set the border-color of frame F to pixel value PIX.
@@ -2034,7 +2035,8 @@ x_set_scroll_bar_foreground (f, value, oldval)
2034 (*condemn_scroll_bars_hook) (f); 2035 (*condemn_scroll_bars_hook) (f);
2035 if (judge_scroll_bars_hook) 2036 if (judge_scroll_bars_hook)
2036 (*judge_scroll_bars_hook) (f); 2037 (*judge_scroll_bars_hook) (f);
2037 2038
2039 update_face_from_frame_parameter (f, Qscroll_bar_foreground, value);
2038 redraw_frame (f); 2040 redraw_frame (f);
2039 } 2041 }
2040} 2042}
@@ -2069,6 +2071,7 @@ x_set_scroll_bar_background (f, value, oldval)
2069 if (judge_scroll_bars_hook) 2071 if (judge_scroll_bars_hook)
2070 (*judge_scroll_bars_hook) (f); 2072 (*judge_scroll_bars_hook) (f);
2071 2073
2074 update_face_from_frame_parameter (f, Qscroll_bar_background, value);
2072 redraw_frame (f); 2075 redraw_frame (f);
2073 } 2076 }
2074} 2077}
@@ -3851,7 +3854,7 @@ This function is an internal primitive--use `make-frame' instead.")
3851 3854
3852 /* Set up faces after all frame parameters are known. */ 3855 /* Set up faces after all frame parameters are known. */
3853 call1 (Qface_set_after_frame_default, frame); 3856 call1 (Qface_set_after_frame_default, frame);
3854 3857
3855#ifdef USE_X_TOOLKIT 3858#ifdef USE_X_TOOLKIT
3856 /* Create the menu bar. */ 3859 /* Create the menu bar. */
3857 if (!minibuffer_only && FRAME_EXTERNAL_MENU_BAR (f)) 3860 if (!minibuffer_only && FRAME_EXTERNAL_MENU_BAR (f))