# HG changeset patch # User Chong Yidong # Date 1289700551 18000 # Node ID a36ab2f7cad266adab5c8425b66d0656aa413761 # Parent b8d806986840441c73d0462faee1b3ab962427a1 Let the cursorColor X resource set the the cursor face (Bug#7392). * lisp/startup.el (command-line): If the cursorColor resource is set, change the cursor face-spec (Bug#7392). * src/xfns.c (Fx_create_frame): Don't check for the cursorColor resource here; it's now done at startup. diff -r b8d806986840 -r a36ab2f7cad2 lisp/ChangeLog --- a/lisp/ChangeLog Sat Nov 13 17:55:37 2010 -0800 +++ b/lisp/ChangeLog Sat Nov 13 21:09:11 2010 -0500 @@ -1,3 +1,8 @@ +2010-11-14 Chong Yidong + + * startup.el (command-line): If the cursorColor resource is set, + change the cursor face-spec (Bug#7392). + 2010-11-13 Ken Manheimer The main features of the following allout.el changes are: diff -r b8d806986840 -r a36ab2f7cad2 lisp/startup.el --- a/lisp/startup.el Sat Nov 13 17:55:37 2010 -0800 +++ b/lisp/startup.el Sat Nov 13 21:09:11 2010 -0500 @@ -885,14 +885,15 @@ ;; Under X, this creates the X frame and deletes the terminal frame. (unless (daemonp) - ;; Enable or disable the tool-bar and menu-bar. - ;; While we're at it, set `no-blinking-cursor' too. + + ;; If X resources are available, use them to initialize the values + ;; of `tool-bar-mode' and `menu-bar-mode', as well as the value of + ;; `no-blinking-cursor' and the `cursor' face. (cond ((or noninteractive emacs-basic-display) (setq menu-bar-mode nil tool-bar-mode nil no-blinking-cursor t)) - ;; Check X resources if available. ((memq initial-window-system '(x w32 ns)) (let ((no-vals '("no" "off" "false" "0"))) (if (member (x-get-resource "menuBar" "MenuBar") no-vals) @@ -901,7 +902,13 @@ (setq tool-bar-mode nil)) (if (member (x-get-resource "cursorBlink" "CursorBlink") no-vals) - (setq no-blinking-cursor t))))) + (setq no-blinking-cursor t))) + ;; If the cursorColor X resource exists, alter the `cursor' face + ;; spec, but mark it as changed outside of Customize. + (let ((color (x-get-resource "cursorColor" "CursorColor"))) + (when color + (face-spec-set 'cursor `((t (:background ,color)))) + (put 'cursor 'face-modified t))))) (frame-initialize)) (when (fboundp 'x-create-frame) diff -r b8d806986840 -r a36ab2f7cad2 src/ChangeLog --- a/src/ChangeLog Sat Nov 13 17:55:37 2010 -0800 +++ b/src/ChangeLog Sat Nov 13 21:09:11 2010 -0500 @@ -1,3 +1,8 @@ +2010-11-14 Chong Yidong + + * xfns.c (Fx_create_frame): Don't check for the cursorColor + resource here; it's now done at startup. + 2010-11-13 Dan Nicolaescu * xmenu.c: Make it clear that ../lwlib/lwlib.h is only needed for Motif. diff -r b8d806986840 -r a36ab2f7cad2 src/xfns.c --- a/src/xfns.c Sat Nov 13 17:55:37 2010 -0800 +++ b/src/xfns.c Sat Nov 13 21:09:11 2010 -0500 @@ -3367,8 +3367,6 @@ "background", "Background", RES_TYPE_STRING); x_default_parameter (f, parms, Qmouse_color, build_string ("black"), "pointerColor", "Foreground", RES_TYPE_STRING); - x_default_parameter (f, parms, Qcursor_color, build_string ("black"), - "cursorColor", "Foreground", RES_TYPE_STRING); x_default_parameter (f, parms, Qborder_color, build_string ("black"), "borderColor", "BorderColor", RES_TYPE_STRING); x_default_parameter (f, parms, Qscreen_gamma, Qnil,