doom-dashboard: improve margin resetting
This commit is contained in:
parent
f7e737c1f1
commit
4f7ce35424
1 changed files with 30 additions and 30 deletions
|
@ -12,7 +12,7 @@
|
||||||
(defvar +doom-dashboard-widgets '(banner shortmenu loaded)
|
(defvar +doom-dashboard-widgets '(banner shortmenu loaded)
|
||||||
"List of widgets to display in a blank scratch buffer.")
|
"List of widgets to display in a blank scratch buffer.")
|
||||||
|
|
||||||
(defvar +doom-dashboard--width 0)
|
(defvar +doom-dashboard--width 80)
|
||||||
(defvar +doom-dashboard--height 0)
|
(defvar +doom-dashboard--height 0)
|
||||||
(defvar +doom-dashboard--old-fringe-indicator fringe-indicator-alist)
|
(defvar +doom-dashboard--old-fringe-indicator fringe-indicator-alist)
|
||||||
(defvar +doom-dashboard--old-modeline nil)
|
(defvar +doom-dashboard--old-modeline nil)
|
||||||
|
@ -96,35 +96,35 @@ whose dimensions may not be fully initialized by the time this is run."
|
||||||
|
|
||||||
(defun +doom-dashboard-reload (&optional dir)
|
(defun +doom-dashboard-reload (&optional dir)
|
||||||
"Update the DOOM scratch buffer (or create it, if it doesn't exist)."
|
"Update the DOOM scratch buffer (or create it, if it doesn't exist)."
|
||||||
(when (and (not +doom-dashboard-inhibit-refresh)
|
(when (get-buffer-window (doom-fallback-buffer))
|
||||||
(not (window-minibuffer-p (frame-selected-window)))
|
(unless (or +doom-dashboard-inhibit-refresh
|
||||||
(get-buffer-window (doom-fallback-buffer)))
|
(window-minibuffer-p (frame-selected-window)))
|
||||||
(unless +doom-dashboard-modeline
|
(unless +doom-dashboard-modeline
|
||||||
(setq +doom-dashboard--old-modeline mode-line-format
|
(setq +doom-dashboard--old-modeline mode-line-format
|
||||||
+doom-dashboard-modeline
|
+doom-dashboard-modeline
|
||||||
(or (and (featurep! :ui doom-modeline)
|
(or (and (featurep! :ui doom-modeline)
|
||||||
(doom-modeline 'project))
|
(doom-modeline 'project))
|
||||||
mode-line-format)))
|
mode-line-format)))
|
||||||
(let ((+doom-dashboard--width 80)
|
(let ((old-pwd (or dir default-directory))
|
||||||
(old-pwd (or dir default-directory))
|
(fallback-buffer (doom-fallback-buffer)))
|
||||||
(fallback-buffer (doom-fallback-buffer)))
|
(with-current-buffer fallback-buffer
|
||||||
(dolist (win (get-buffer-window-list fallback-buffer nil t))
|
(with-silent-modifications
|
||||||
(set-window-fringes win 0 0)
|
(unless (eq major-mode '+doom-dashboard-mode)
|
||||||
(set-window-margins
|
(+doom-dashboard-mode))
|
||||||
win (max 0 (/ (- (window-total-width win) +doom-dashboard--width) 2))))
|
(erase-buffer)
|
||||||
(with-current-buffer fallback-buffer
|
(setq default-directory old-pwd)
|
||||||
(with-silent-modifications
|
(let ((+doom-dashboard--height (window-height (get-buffer-window fallback-buffer))))
|
||||||
(unless (eq major-mode '+doom-dashboard-mode)
|
(insert (make-string (max 0 (- (truncate (/ +doom-dashboard--height 2)) 16)) ?\n))
|
||||||
(+doom-dashboard-mode))
|
(dolist (widget-name +doom-dashboard-widgets)
|
||||||
(erase-buffer)
|
(funcall (intern (format "doom-dashboard-widget--%s" widget-name)))
|
||||||
(setq default-directory old-pwd)
|
(insert "\n")))
|
||||||
(let ((+doom-dashboard--height (window-height)))
|
(unless (button-at (point))
|
||||||
(insert (make-string (max 0 (- (truncate (/ +doom-dashboard--height 2)) 16)) ?\n))
|
(goto-char (next-button (point-min))))))))
|
||||||
(dolist (widget-name +doom-dashboard-widgets)
|
;; Update all dashboard windows
|
||||||
(funcall (intern (format "doom-dashboard-widget--%s" widget-name)))
|
(dolist (win (get-buffer-window-list (doom-fallback-buffer) nil t))
|
||||||
(insert "\n")))
|
(set-window-fringes win 0 0)
|
||||||
(unless (button-at (point))
|
(set-window-margins
|
||||||
(goto-char (next-button (point-min))))))))
|
win (max 0 (/ (- (window-total-width win) +doom-dashboard--width) 2)))))
|
||||||
t)
|
t)
|
||||||
|
|
||||||
;; widgets
|
;; widgets
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue