emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master 8c7a7fc 028/348: When reading file names, check preselect


From: Oleh Krehel
Subject: [elpa] master 8c7a7fc 028/348: When reading file names, check preselect and initial-input compat
Date: Sat, 8 Apr 2017 11:03:17 -0400 (EDT)

branch: master
commit 8c7a7fc54053ce4d1b57df22f2f552fda0a37dd9
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>

    When reading file names, check preselect and initial-input compat
    
    * ivy.el (ivy--reset-state): Prefer the directory of `initial-input',
      rather than the directory of `preselect'.
    
    Re #514
---
 ivy.el | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/ivy.el b/ivy.el
index 8e03cc1..865a936 100644
--- a/ivy.el
+++ b/ivy.el
@@ -1451,13 +1451,16 @@ This is useful for recursive `ivy-read'."
              (require 'dired)
              (when preselect
                (let ((preselect-directory (file-name-directory preselect)))
-                 (unless (or (null preselect-directory)
-                             (string= preselect-directory
-                                      default-directory))
-                   (setq ivy--directory preselect-directory))
-                 (setf
-                  (ivy-state-preselect state)
-                  (setq preselect (file-name-nondirectory preselect)))))
+                 (if (not (equal (expand-file-name preselect-directory)
+                                 (expand-file-name ivy--directory)))
+                     (setf (ivy-state-preselect state) (setq preselect nil))
+                   (unless (or (null preselect-directory)
+                               (string= preselect-directory
+                                        default-directory))
+                     (setq ivy--directory preselect-directory))
+                   (setf
+                    (ivy-state-preselect state)
+                    (setq preselect (file-name-nondirectory preselect))))))
              (setq coll (ivy--sorted-files ivy--directory))
              (when initial-input
                (unless (or require-match



reply via email to

[Prev in Thread] Current Thread [Next in Thread]