|
@@ -30,6 +30,7 @@ import com.dmdirc.commandparser.CommandManager;
|
30
|
30
|
import com.dmdirc.commandparser.commands.IntelligentCommand;
|
31
|
31
|
import com.dmdirc.config.IdentityManager;
|
32
|
32
|
import com.dmdirc.ui.input.AdditionalTabTargets;
|
|
33
|
+import com.dmdirc.ui.input.TabCompleter;
|
33
|
34
|
import com.dmdirc.ui.interfaces.InputWindow;
|
34
|
35
|
|
35
|
36
|
import java.util.List;
|
|
@@ -172,22 +173,27 @@ public final class NowPlayingCommand extends ChatCommand implements IntelligentC
|
172
|
173
|
@Override
|
173
|
174
|
public AdditionalTabTargets getSuggestions(final int arg,
|
174
|
175
|
final List<String> previousArgs) {
|
175
|
|
- final AdditionalTabTargets res = new AdditionalTabTargets();
|
176
|
|
-
|
177
|
|
- res.excludeAll();
|
178
|
|
-
|
|
176
|
+
|
179
|
177
|
if (arg == 0) {
|
|
178
|
+ final AdditionalTabTargets res = TabCompleter.
|
|
179
|
+ getIntelligentResults(arg, previousArgs, 0);
|
180
|
180
|
res.add("--sources");
|
181
|
181
|
res.add("--source");
|
|
182
|
+ return res;
|
182
|
183
|
} else if (arg == 1 && previousArgs.get(0).equalsIgnoreCase("--source")) {
|
|
184
|
+ final AdditionalTabTargets res = new AdditionalTabTargets();
|
|
185
|
+ res.excludeAll();
|
183
|
186
|
for (MediaSource source : parent.getSources()) {
|
184
|
187
|
if (source.getState() != MediaSourceState.CLOSED) {
|
185
|
188
|
res.add(source.getAppName());
|
186
|
189
|
}
|
187
|
190
|
}
|
|
191
|
+ return res;
|
|
192
|
+ } else if (arg > 1 && previousArgs.get(0).equalsIgnoreCase("--source")) {
|
|
193
|
+ return TabCompleter.getIntelligentResults(arg, previousArgs, 2);
|
|
194
|
+ } else {
|
|
195
|
+ return TabCompleter.getIntelligentResults(arg, previousArgs,
|
|
196
|
+ previousArgs.get(0).equalsIgnoreCase("--sources") ? 1 : 0);
|
188
|
197
|
}
|
189
|
|
-
|
190
|
|
- return res;
|
191
|
198
|
}
|
192
|
|
-
|
193
|
199
|
}
|