diff options
Diffstat (limited to 'dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java')
-rw-r--r-- | dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java b/dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java index 7577808..c76bd14 100644 --- a/dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java +++ b/dicore3/command/src/main/java/io/dico/dicore/command/RootCommandAddress.java @@ -217,9 +217,14 @@ public class RootCommandAddress extends ModifiableCommandAddress implements ICom try { ICommandAddress target = getCommandTarget(context, buffer); - List<String> out = target.hasCommand() - ? target.getCommand().tabComplete(sender, target, location, buffer.getUnaffectingCopy()) - : Collections.emptyList(); + + List<String> out; + if (target.hasCommand()) { + context.targetAcquired(target, target.getCommand(), buffer); + out = target.getCommand().tabCompleteWithContext(context, location); + } else { + out = Collections.emptyList(); + } int cursor = buffer.getCursor(); String input; @@ -230,7 +235,7 @@ public class RootCommandAddress extends ModifiableCommandAddress implements ICom } boolean wrapped = false; - for (String child : target.getChildren().keySet()) { + for (String child : target.getChildrenMainKeys()) { if (child.toLowerCase().startsWith(input)) { if (!wrapped) { out = new ArrayList<>(out); |