mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-30 12:21:25 -08:00
(default-frame-background-mode): New internal variable.
(frame-set-background-mode): Use it.
This commit is contained in:
parent
16f4391084
commit
a4ea869cfd
1 changed files with 10 additions and 3 deletions
|
|
@ -1575,6 +1575,13 @@ this won't have the expected effect."
|
|||
(choice-item light)
|
||||
(choice-item :tag "default" nil)))
|
||||
|
||||
(defvar default-frame-background-mode nil
|
||||
"Internal variable for the default brightness of the background.
|
||||
Emacs sets it automatically depending on the terminal type.
|
||||
The value `nil' means `dark'. If Emacs runs in non-windowed
|
||||
mode from `xterm' or a similar terminal emulator, the value is
|
||||
`light'. On rxvt terminals, the value depends on the environment
|
||||
variable COLORFGBG.")
|
||||
|
||||
(defun frame-set-background-mode (frame)
|
||||
"Set up display-dependent faces on FRAME.
|
||||
|
|
@ -1590,13 +1597,13 @@ according to the `background-mode' and `display-type' frame parameters."
|
|||
(intern (downcase bg-resource)))
|
||||
((and (null window-system) (null bg-color))
|
||||
;; No way to determine this automatically (?).
|
||||
'dark)
|
||||
(or default-frame-background-mode 'dark))
|
||||
;; Unspecified frame background color can only happen
|
||||
;; on tty's.
|
||||
((member bg-color '(unspecified "unspecified-bg"))
|
||||
'dark)
|
||||
(or default-frame-background-mode 'dark))
|
||||
((equal bg-color "unspecified-fg") ; inverted colors
|
||||
'light)
|
||||
(if (eq default-frame-background-mode 'light) 'dark 'light))
|
||||
((>= (apply '+ (x-color-values bg-color frame))
|
||||
;; Just looking at the screen, colors whose
|
||||
;; values add up to .6 of the white total
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue