[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 4d72dc1 327/348: ivy.el: Change recursive restore order
From: |
Oleh Krehel |
Subject: |
[elpa] master 4d72dc1 327/348: ivy.el: Change recursive restore order |
Date: |
Sat, 8 Apr 2017 11:04:24 -0400 (EDT) |
branch: master
commit 4d72dc15bd006532561389c6b042b5d4f57d51e4
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>
ivy.el: Change recursive restore order
Bring back the old behavior.
* ivy.el (ivy-recursive-restore): New defun.
(ivy-call): `undwind-protect' to fix #924. Call `ivy-recursive-restore'
for good measure.
Fixes #937
Re #924
---
ivy.el | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/ivy.el b/ivy.el
index 880bd59..1623132 100644
--- a/ivy.el
+++ b/ivy.el
@@ -984,6 +984,12 @@ Example use:
;; do whatever with str - the corresponding file will not be opened
)")
+(defun ivy-recursive-restore ()
+ (when (and ivy-recursive-last
+ ivy-recursive-restore
+ (not (eq ivy-last ivy-recursive-last)))
+ (ivy--reset-state (setq ivy-last ivy-recursive-last))))
+
(defun ivy-call ()
"Call the current action without exiting completion."
(interactive)
@@ -1020,11 +1026,8 @@ Example use:
(funcall action x)
(select-window (ivy--get-window ivy-last))
(prog1 (with-current-buffer (ivy-state-buffer ivy-last)
- (when (and ivy-recursive-last
- ivy-recursive-restore
- (not (eq ivy-last ivy-recursive-last)))
- (ivy--reset-state (setq ivy-last ivy-recursive-last)))
- (funcall action x))
+ (unwind-protect (funcall action x)
+ (ivy-recursive-restore)))
(unless (or (eq ivy-exit 'done)
(equal (selected-window)
(active-minibuffer-window))
@@ -1537,7 +1540,9 @@ customizations apply to the current completion session."
(remove-hook 'post-command-hook #'ivy--exhibit)
(ivy-overlay-cleanup)
(when (setq unwind (ivy-state-unwind ivy-last))
- (funcall unwind)))
+ (funcall unwind))
+ (unless (eq ivy-exit 'done)
+ (ivy-recursive-restore)))
(ivy-call)
(when (> (length (ivy-state-current ivy-last)) 0)
(remove-text-properties 0 1 '(idx) (ivy-state-current ivy-last))))))
- [elpa] master 3b15585 256/348: Fix little typo, (continued)
- [elpa] master 3b15585 256/348: Fix little typo, Oleh Krehel, 2017/04/08
- [elpa] master 7dea0ff 255/348: Use ivy-format-function approach for counsel-faces, Oleh Krehel, 2017/04/08
- [elpa] master 2989f25 268/348: swiper.el (swiper--update-input-ivy): Fix window-end call, Oleh Krehel, 2017/04/08
- [elpa] master c2c0e2d 270/348: ivy.el: Simplify previous commit, Oleh Krehel, 2017/04/08
- [elpa] master 75f9ceb 286/348: Allow spaces in file names when running linux apps., Oleh Krehel, 2017/04/08
- [elpa] master 2f70c56 287/348: Revert "Add missing parameter for ag", Oleh Krehel, 2017/04/08
- [elpa] master 950545b 304/348: counsel.el (counsel-linux-apps-list): Check if dir exists, Oleh Krehel, 2017/04/08
- [elpa] master 65979f6 291/348: Heed non-sort entries in ivy-sort-functions-alist, Oleh Krehel, 2017/04/08
- [elpa] master ce3c0ec 317/348: ivy.el (ivy-completing-read): Adjust :caller, Oleh Krehel, 2017/04/08
- [elpa] master d9d7592 315/348: ivy.el (ivy-completion-in-region): Remove :require-match, Oleh Krehel, 2017/04/08
- [elpa] master 4d72dc1 327/348: ivy.el: Change recursive restore order,
Oleh Krehel <=
- [elpa] master d82dc2c 328/348: counsel.el (counsel-colors--best-contrast-color): Return same color on error, Oleh Krehel, 2017/04/08
- [elpa] master 3fbeaa5 333/348: Define ivy-help-file with defconst, Oleh Krehel, 2017/04/08
- [elpa] master fee9810 336/348: ivy.el (ivy-partial): Fix for :dynamic-collection, Oleh Krehel, 2017/04/08
- [elpa] master 5f04a70 322/348: ivy.el: Move ivy-recursive-last logic to ivy-call, Oleh Krehel, 2017/04/08
- [elpa] master ff3b696 338/348: counsel.el (counsel-find-file): Add new action counsel-find-file-as-root, Oleh Krehel, 2017/04/08
- [elpa] master 8c9f6a3 340/348: swiper.el: Silence byte-compiler, Oleh Krehel, 2017/04/08
- [elpa] master a63a935 339/348: counsel.el (counsel--find-symbol): Fix typo, Oleh Krehel, 2017/04/08
- [elpa] master cba6888 344/348: Bump version to 0.9.0, Oleh Krehel, 2017/04/08
- [elpa] master 83b00ff 346/348: doc/Changelog.org: Fix links, Oleh Krehel, 2017/04/08