summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Src/Zle/compcore.c8
-rw-r--r--Src/Zle/complist.c2
-rw-r--r--Src/Zle/zle_tricky.c3
4 files changed, 9 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 420eb261d..f3af39aab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-03-07 Oliver Kiddle <opk@zsh.org>
+
+ * 38043: Src/Zle/compcore.c, Src/Zle/complist.c,
+ Src/Zle/zle_tricky.c: allow any completion widget to cycle matches
+ for menu completion to fix reverse menu completion
+
2016-03-07 Peter Stephenson <p.stephenson@samsung.com>
* 38111: Src/parse.c: remove redundant return values from
diff --git a/Src/Zle/compcore.c b/Src/Zle/compcore.c
index ae3a64074..ae7068fc9 100644
--- a/Src/Zle/compcore.c
+++ b/Src/Zle/compcore.c
@@ -30,10 +30,6 @@
#include "complete.mdh"
#include "compcore.pro"
-/* The last completion widget called. */
-
-static Widget lastcompwidget;
-
/* Flags saying what we have to do with the result. */
/**/
@@ -471,8 +467,7 @@ before_complete(UNUSED(Hookdef dummy), int *lst)
/* If we are doing a menu-completion... */
- if (minfo.cur && menucmp && *lst != COMP_LIST_EXPAND &&
- (menucmp != 1 || !compwidget || compwidget == lastcompwidget)) {
+ if (minfo.cur && menucmp && *lst != COMP_LIST_EXPAND) {
do_menucmp(*lst);
return 1;
}
@@ -481,7 +476,6 @@ before_complete(UNUSED(Hookdef dummy), int *lst)
onlyexpl = listdat.valid = 0;
return 1;
}
- lastcompwidget = compwidget;
/* We may have to reset the cursor to its position after the *
* string inserted by the last completion. */
diff --git a/Src/Zle/complist.c b/Src/Zle/complist.c
index 162436b55..8aeb6c3b8 100644
--- a/Src/Zle/complist.c
+++ b/Src/Zle/complist.c
@@ -3399,7 +3399,7 @@ domenuselect(Hookdef dummy, Chdata dat)
do_single(*(minfo.cur));
}
if (wasnext || broken) {
- menucmp = 2;
+ menucmp = 1;
showinglist = ((validlist && !nolist) ? -2 : 0);
minfo.asked = 0;
if (!noselect) {
diff --git a/Src/Zle/zle_tricky.c b/Src/Zle/zle_tricky.c
index cc4b7d673..a89b2a376 100644
--- a/Src/Zle/zle_tricky.c
+++ b/Src/Zle/zle_tricky.c
@@ -100,8 +100,7 @@ mod_export int usemenu, useglob;
/**/
mod_export int wouldinstab;
-/* != 0 if we are in the middle of a menu completion. May be == 2 to force *
- * menu completion even if using different widgets. */
+/* != 0 if we are in the middle of a menu completion. */
/**/
mod_export int menucmp;