Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/arduino/Arduino.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristian Maglie <c.maglie@arduino.cc>2017-10-16 18:26:02 +0300
committerMartino Facchin <m.facchin@arduino.cc>2020-04-07 15:09:06 +0300
commit385a6738e928b83d319c13209214977c54eacc3e (patch)
tree49aa0fb83fa64c70d4e28caf860f6b183282db83
parent5e8895c4759e22eece4296a9819a27f9e1489b38 (diff)
autocompletion: factored filtering of completions
-rw-r--r--app/src/cc/arduino/autocomplete/ClangCompletionProvider.java17
1 files changed, 9 insertions, 8 deletions
diff --git a/app/src/cc/arduino/autocomplete/ClangCompletionProvider.java b/app/src/cc/arduino/autocomplete/ClangCompletionProvider.java
index 57283e4b1..7ca7b937c 100644
--- a/app/src/cc/arduino/autocomplete/ClangCompletionProvider.java
+++ b/app/src/cc/arduino/autocomplete/ClangCompletionProvider.java
@@ -115,7 +115,14 @@ public class ClangCompletionProvider extends LanguageAwareCompletionProvider {
e.printStackTrace();
return res;
}
+
+ String enteredText = getAlreadyEnteredText(textarea);
+
for (ArduinoCompletion cc : allCc) {
+ // Filter completions based on already entered text
+ if (!cc.getCompletion().getTypedText().startsWith(enteredText)) {
+ continue;
+ }
if (cc.type.equals("Function")) {
List<Parameter> params = new ArrayList<>();
@@ -135,10 +142,6 @@ public class ClangCompletionProvider extends LanguageAwareCompletionProvider {
}
fancyParameters += ")";
- if (!cc.getCompletion().getTypedText().startsWith(getAlreadyEnteredText(textarea))) {
- continue;
- }
-
FunctionCompletion compl = new FunctionCompletion(this,
cc.getCompletion().getTypedText(),
cc.getCompletion().getResultType());
@@ -180,10 +183,8 @@ public class ClangCompletionProvider extends LanguageAwareCompletionProvider {
}
fancyParameters += ")";
//System.out.println("TEMPLATE: " + template);
- if (typedText.startsWith(getAlreadyEnteredText(textarea))) {
- TemplateCompletion compl = new TemplateCompletion(this, typedText, fancyParameters + " : " + returnType , template);
- res.add(compl);
- }
+ TemplateCompletion compl = new TemplateCompletion(this, typedText, fancyParameters + " : " + returnType , template);
+ res.add(compl);
}
return res;
} catch (Exception e) {