From 115deab3f995d526baa1d8ffa4d4b46371a9a710 Mon Sep 17 00:00:00 2001 From: George Gastaldi Date: Wed, 28 Aug 2013 09:18:46 -0300 Subject: [PATCH] Minor completion bugs --- .../SelectComponentCompletionStrategy.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/shell/impl/src/main/java/org/jboss/forge/addon/shell/aesh/completion/SelectComponentCompletionStrategy.java b/shell/impl/src/main/java/org/jboss/forge/addon/shell/aesh/completion/SelectComponentCompletionStrategy.java index 377506e51e..0187d3853e 100644 --- a/shell/impl/src/main/java/org/jboss/forge/addon/shell/aesh/completion/SelectComponentCompletionStrategy.java +++ b/shell/impl/src/main/java/org/jboss/forge/addon/shell/aesh/completion/SelectComponentCompletionStrategy.java @@ -48,8 +48,6 @@ public void complete(final CompleteOperation completeOperation, final InputCompo choices.add(convert); } } - // Copied from FileLister - // TODO Review if (choices.size() > 1) { String startsWith = Parser.findStartsWith(choices); @@ -58,12 +56,20 @@ public void complete(final CompleteOperation completeOperation, final InputCompo String substring = startsWith.substring(typedValue.length()); String candidate = Parser.switchSpacesToEscapedSpacesInWord(substring); completeOperation.addCompletionCandidate(candidate); - completeOperation.setOffset(completeOperation.getCursor() - typedValue.length()); + completeOperation.setOffset(completeOperation.getCursor()); completeOperation.doAppendSeparator(false); } else { - completeOperation.addCompletionCandidates(choices); + if (choices.contains(typedValue)) + { + completeOperation.addCompletionCandidate(typedValue); + } + else + { + completeOperation.addCompletionCandidates(choices); + + } if (!completeOperation.getCompletionCandidates().isEmpty() && !typedValue.isEmpty()) { completeOperation.setOffset(completeOperation.getCursor() - typedValue.length());