diff options
-rw-r--r-- | .emacs.d/init.el | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 8d05845..b4a16cc 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -418,12 +418,19 @@ Make N (default: 1) copies of the current line or region." (dotimes (_ (abs n1)) (insert text)))))) -(defun b/invert-default-face () - "Invert the `default' face (swap its background and foreground). -Effectively a very simple light/dark theme toggle switch." - (interactive) - (invert-face 'default (selected-frame)) - (invert-face 'mode-line (selected-frame))) +(defun b/invert-default-face (arg) + "Invert the `default' and `mode-line' faces for the current frame. +Swap the background and foreground for the two `default' and +`mode-line' faces, effectively acting like a simple light/dark +theme toggle. If prefix argument ARG is given, invert the faces +for all frames." + (interactive "P") + (let ((frame (unless arg + (selected-frame)))) + (invert-face 'default frame) + (invert-face 'mode-line frame)) + (when (fboundp #'exwm-systemtray--refresh-background-color) + (exwm-systemtray--refresh-background-color 'remap))) (defun b/export-frame () (interactive) |