                   (funcall (intern (format "doom-dashboard-widget--%s" widget-name)))
                   (insert "\n"))
                 +doom-dashboard-widgets))
-        (setq default-directory old-pwd)
-        (setq mode-line-format +doom-dashboard-modeline))))
+        (setq default-directory old-pwd
+              mode-line-format +doom-dashboard-modeline)
+        (unless (button-at (point))
+          (goto-char (point-min))
+          (goto-char (next-button (point))))
+        (read-only-mode +1))))
   t)
 
 (defun doom-dashboard-widget--banner ()

(defvar +doom-dashboard--height 0)
(defvar +doom-dashboard--old-fringe-indicator fringe-indicator-alist)



(def-package! all-the-icons :when (display-graphic-p))

                mode-line-format)))
    (let ((old-pwd (or dir default-directory)))
      (with-current-buffer (doom-fallback-buffer)
        (read-only-mode -1)
        (+doom-dashboard-mode)
        ;; (add-hook 'evil-insert-state-entry-hook #'+doom-dashboard|clear-on-insert nil t)
        ;; (add-hook 'after-change-major-mode-hook #'+doom-dashboard|clear-on-insert nil t)
        (setq +doom-dashboard-edited-p nil
              fringe-indicator-alist (mapcar (lambda (i) (cons (car i) nil))
                                             fringe-indicator-alist))
        (erase-buffer)
        (let* ((+doom-dashboard--width  (window-width (get-buffer-window (doom-fallback-buffer))))
               (+doom-dashboard--height (window-height (get-buffer-window (doom-fallback-buffer)))))
