branch: elpa/magit
commit 0ea29a615a33743e08a457402a4cbea37a4a4a88
Author: Jonas Bernoulli <jo...@bernoul.li>
Commit: Jonas Bernoulli <jo...@bernoul.li>

    magit-discard: Refresh after discarding all untracked files
---
 CHANGELOG           |  2 ++
 lisp/magit-apply.el | 12 ++++++++----
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 286bfcf9aa..7ca944d60c 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -9,6 +9,8 @@ Bugfixes:
   that to immediately be displayed at the top of windows displaying
   log buffers.  #5403
 
+- Refreshing was skipped after discarding all untracked files.
+
 * v4.3.7    2025-07-01
 
 - Refreshing a buffer causes its content to be recreated, which can
diff --git a/lisp/magit-apply.el b/lisp/magit-apply.el
index fcf119f2cb..7584e89c49 100644
--- a/lisp/magit-apply.el
+++ b/lisp/magit-apply.el
@@ -490,10 +490,7 @@ of a side, then keep that side without prompting."
     (pcase (list (magit-diff-type) (magit-diff-scope))
       (`(committed   ,_) (user-error "Cannot discard committed changes"))
       (`(undefined   ,_) (user-error "Cannot discard this change"))
-      (`(untracked list) (magit-discard-files--delete
-                          (magit-with-toplevel
-                            (magit-untracked-files nil nil "--directory"))
-                          nil))
+      (`(untracked list) (magit-discard-untracked))
       (`(,_      region) (magit-discard-region s))
       (`(,_        hunk) (magit-discard-hunk   s))
       (`(,_       hunks) (magit-discard-hunks  s))
@@ -501,6 +498,13 @@ of a side, then keep that side without prompting."
       (`(,_       files) (magit-discard-files  s))
       (`(,_        list) (magit-discard-files  s)))))
 
+(defun magit-discard-untracked ()
+  (magit-discard-files--delete
+   (magit-with-toplevel
+     (magit-untracked-files nil nil "--directory"))
+   nil)
+  (magit-refresh))
+
 (defun magit-discard-region (section)
   (magit-confirm 'discard "Discard region")
   (magit-discard-apply section 'magit-apply-region))

Reply via email to