summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/faces.el20
1 files changed, 13 insertions, 7 deletions
diff --git a/lisp/faces.el b/lisp/faces.el
index 02de5dcc8a1..6eb43677408 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -781,7 +781,7 @@ selected frame."
(make-face-bold-italic 'bold-italic t)
(set-face-background 'highlight '("darkseagreen2" "green" t) t)
- (set-face-background 'region '("gray" t) t)
+ (set-face-background 'region '("gray" underline) t)
(set-face-background 'secondary-selection '("paleturquoise" "green" t) t)
(set-face-background 'modeline '(t) t)
(set-face-underline-p 'underline t t)
@@ -924,16 +924,22 @@ selected frame."
;; and set `done' if we succeed.
(condition-case nil
(progn
- (if (eq (car colors) t)
- (invert-face face frame)
- (funcall function face (car colors) frame))
+ (cond ((eq (car colors) t)
+ (invert-face face frame))
+ ((eq (car colors) 'underline)
+ (set-face-underline-p face t frame))
+ (t
+ (funcall function face (car colors) frame)))
(setq done t))
(error nil))
;; If this is the last color, let the error get out if it fails.
;; If it succeeds, we will exit anyway after this iteration.
- (if (eq (car colors) t)
- (invert-face face frame)
- (funcall function face (car colors) frame))))
+ (cond ((eq (car colors) t)
+ (invert-face face frame))
+ ((eq (car colors) 'underline)
+ (set-face-underline-p face t frame))
+ (t
+ (funcall function face (car colors) frame)))))
(setq colors (cdr colors)))))))
;; If we are already using x-window frames, initialize faces for them.