diff --git a/modules/tools/magit/config.el b/modules/tools/magit/config.el index 6bf623d91..cf440a5e2 100644 --- a/modules/tools/magit/config.el +++ b/modules/tools/magit/config.el @@ -36,7 +36,15 @@ available.") (add-hook! '(magit-mode-hook magit-popup-mode-hook) #'hide-mode-line-mode) ;; properly kill leftover magit buffers on quit - (define-key magit-status-mode-map [remap magit-mode-bury-buffer] #'+magit/quit)) + (define-key magit-status-mode-map [remap magit-mode-bury-buffer] #'+magit/quit) + + (defun +magit|update-vc () + "Update vc in all verson-controlled buffers when magit refreshes." + (dolist (buf (buffer-list)) + (with-current-buffer buf + (vc-refresh-state)))) + (add-hook 'magit-post-refresh-hook #'+magit|update-vc)) + (def-package! magit-todos diff --git a/modules/ui/doom-modeline/config.el b/modules/ui/doom-modeline/config.el index 81c5cd9cb..ceba2594c 100644 --- a/modules/ui/doom-modeline/config.el +++ b/modules/ui/doom-modeline/config.el @@ -529,6 +529,7 @@ directory, the file name, and its state (modified, read-only or non-existent)." (add-hook 'after-revert-hook #'+doom-modeline--update-vcs) (add-hook 'after-save-hook #'+doom-modeline--update-vcs) (add-hook 'find-file-hook #'+doom-modeline--update-vcs t) +(advice-add #'vc-refresh-state :after #'+doom-modeline--update-vcs) (def-modeline-segment! vcs "Displays the current branch, colored based on its state."