Bump :ui doom

hlissner/emacs-doom-themes@4199e74 -> hlissner/emacs-doom-themes@4d24728
hlissner/emacs-solaire-mode@9d143db -> hlissner/emacs-solaire-mode@186f97d

Rewrite solaire-mode usage to adapt to upstream changes. This will yield
a new class of edge cases, but I'll tackle those as I encounter them.

Closes #5063
This commit is contained in:
Henrik Lissner 2021-05-21 23:08:15 -04:00
parent d0dacce085
commit a4d2e873ab
8 changed files with 9 additions and 77 deletions

View file

@ -32,6 +32,4 @@
(add-hook! 'emacs-everywhere-init-hooks (add-hook! 'emacs-everywhere-init-hooks
(defun +everywhere-clear-persp-info-h () (defun +everywhere-clear-persp-info-h ()
(when (bound-and-true-p persp-mode) (when (bound-and-true-p persp-mode)
(setq persp-emacsclient-init-frame-behaviour-override nil)))) (setq persp-emacsclient-init-frame-behaviour-override nil)))))
(after! solaire-mode
(add-hook 'emacs-everywhere-init-hooks #'solaire-mode)))

View file

@ -38,9 +38,6 @@
(when (featurep! :ui popup) (when (featurep! :ui popup)
(setq twittering-pop-to-buffer-function #'+twitter-display-buffer-fn)) (setq twittering-pop-to-buffer-function #'+twitter-display-buffer-fn))
(after! solaire-mode
(add-hook 'twittering-mode-hook #'solaire-mode))
;; Custom header-line for twitter buffers ;; Custom header-line for twitter buffers
(add-hook! 'twittering-mode-hook (add-hook! 'twittering-mode-hook
(defun +twitter-switch-mode-and-header-line-h () (defun +twitter-switch-mode-and-header-line-h ()

View file

@ -15,8 +15,7 @@ bottom, which is easier on the eyes on big displays."
(defun +helm-posframe-display-fn (buffer &optional _resume) (defun +helm-posframe-display-fn (buffer &optional _resume)
"TODO" "TODO"
(setq helm--buffer-in-new-frame-p t) (setq helm--buffer-in-new-frame-p t)
(let ((solaire-p (bound-and-true-p solaire-mode)) (let ((params (copy-sequence +helm-posframe-parameters)))
(params (copy-sequence +helm-posframe-parameters)))
(let-alist params (let-alist params
(require 'posframe) (require 'posframe)
(posframe-show (posframe-show
@ -45,9 +44,6 @@ bottom, which is easier on the eyes on big displays."
(unless (or (null +helm-posframe-text-scale) (unless (or (null +helm-posframe-text-scale)
(= +helm-posframe-text-scale 0)) (= +helm-posframe-text-scale 0))
(with-current-buffer buffer (with-current-buffer buffer
(when (and (featurep 'solaire-mode)
(not solaire-p))
(solaire-mode +1))
(text-scale-set +helm-posframe-text-scale))))) (text-scale-set +helm-posframe-text-scale)))))
;;;###autoload ;;;###autoload

View file

@ -78,9 +78,6 @@
(+org-pretty-mode arg) (+org-pretty-mode arg)
(cond (org-tree-slide-mode (cond (org-tree-slide-mode
(set-window-fringes nil 0 0) (set-window-fringes nil 0 0)
(when (bound-and-true-p solaire-mode)
(solaire-mode -1)
(fringe-mode 0))
(when (bound-and-true-p flyspell-mode) (when (bound-and-true-p flyspell-mode)
(flyspell-mode -1)) (flyspell-mode -1))
(add-hook 'kill-buffer-hook #'+org-present--cleanup-org-tree-slides-mode (add-hook 'kill-buffer-hook #'+org-present--cleanup-org-tree-slides-mode

View file

@ -130,9 +130,7 @@ Is relative to `org-directory', unless it is absolute. Is used in Doom's default
org-refile-use-outline-path 'file org-refile-use-outline-path 'file
org-outline-path-complete-in-steps nil) org-outline-path-complete-in-steps nil)
;; Previews are rendered with the incorrect background
(plist-put org-format-latex-options :scale 1.5) ; larger previews (plist-put org-format-latex-options :scale 1.5) ; larger previews
(plist-put org-format-latex-options :background 'default) ; match the background
;; HACK Face specs fed directly to `org-todo-keyword-faces' don't respect ;; HACK Face specs fed directly to `org-todo-keyword-faces' don't respect
;; underlying faces like the `org-todo' face does, so we define our own ;; underlying faces like the `org-todo' face does, so we define our own

View file

@ -75,10 +75,10 @@ If you're seeing strange unicode symbols, this is likely because you don't have
all-the-icons-install-fonts~. all-the-icons-install-fonts~.
** Ugly background colors in tty Emacs for daemon users ** Ugly background colors in tty Emacs for daemon users
=solaire-mode= is an aesthetic plugin that makes file-visiting buffers brighter =solaire-mode= is an aesthetic plugin that makes non-file-visiting buffers
than the rest of the Emacs' frame (to visually differentiate temporary windows darker than the rest of the Emacs' frame (to visually differentiate temporary
or sidebars from editing windows). This looks great in GUI Emacs, but can look windows or sidebars from editing windows). This looks great in GUI Emacs, but
questionable in the terminal. can look questionable in the terminal.
It disables itself if you start tty Emacs with ~emacs -nw~, but if you create a It disables itself if you start tty Emacs with ~emacs -nw~, but if you create a
tty frame from a daemon (which solaire-mode cannot anticipate), you'll get an tty frame from a daemon (which solaire-mode cannot anticipate), you'll get an

View file

@ -23,58 +23,4 @@
(use-package! solaire-mode (use-package! solaire-mode
:when (or (daemonp) (display-graphic-p)) :when (or (daemonp) (display-graphic-p))
:hook (doom-load-theme . solaire-global-mode) :hook (doom-load-theme . solaire-global-mode))
:config
(when (daemonp)
(add-hook! '(doom-switch-frame-hook after-make-frame-functions)
(defun +doom-disable-solaire-mode-maybe-h (&optional frame)
(if (display-graphic-p frame)
(unless solaire-global-mode
(solaire-global-mode +1))
(when solaire-global-mode
(solaire-global-mode -1))))))
;; DEPRECATED No longer needed in Emacs 27+
(unless EMACS27+
;; HACK On Emacs <=26, when point is on the last (or second to last) line
;; and solaire-mode is remapping the hl-line face, hl-line's highlight
;; bleeds into the rest of the window after eob. On Emacs 27 this no
;; longer happens. This tries to fix it for 26 users, but it imposes
;; another problem: the 2nd-to-last line will only be highlighted up to
;; the (n-1)th character, but I think that is the lesser evil.
(defun +doom--line-range-fn ()
(if solaire-mode
(let ((bol (line-beginning-position))
(eol (line-end-position))
(eob (point-max)))
(cond ((= bol eob)
nil)
((= (1+ eol) eob)
(cons bol (1- eob)))
((or (= eol eob) (eobp))
(cons bol eol))
((cons bol (line-beginning-position 2)))))
(cons (line-beginning-position)
(line-beginning-position 2))))
(setq hl-line-range-function #'+doom--line-range-fn)
;; HACK The fringe cannot have a buffer-local remapping on Emacs <= 26, so
;; we jump through hoops to reset it (globally) whenever it is likely
;; that the fringe will have lost its background color.
(add-hook! '(doom-load-theme-hook doom-after-reload-hook) :append
#'solaire-mode-reset)
;; fringe can become unstyled when deleting or focusing frames
(add-hook 'focus-in-hook #'solaire-mode-reset)
;; A global fringe color means the minibuffer (with its fringes) will always
;; stand out, so we remove them (in which-key popups too).
(add-hook! 'solaire-mode-hook
(defun +doom-disable-fringes-in-minibuffer-h (&rest _)
(set-window-fringes (minibuffer-window) 0 0 nil)))
(defadvice! +doom--no-fringes-in-which-key-buffer-a (&rest _)
:after 'which-key--show-buffer-side-window
(+doom-disable-fringes-in-minibuffer-h)
(set-window-fringes (get-buffer-window which-key--buffer) 0 0 nil))
(add-hook! '(minibuffer-setup-hook window-configuration-change-hook)
#'+doom-disable-fringes-in-minibuffer-h)))

View file

@ -1,5 +1,5 @@
;; -*- no-byte-compile: t; -*- ;; -*- no-byte-compile: t; -*-
;;; ui/doom/packages.el ;;; ui/doom/packages.el
(package! doom-themes :pin "4199e74db170200995ee8dfbb55ffae004d6e219") (package! doom-themes :pin "4d24728f11853b5bd231687ac3f7a95108688313")
(package! solaire-mode :pin "9d143db85428c5a7798e429f3b8abd2bf3f80747") (package! solaire-mode :pin "186f97d7dddc85131fb1e7be5f89de226f26ae51")