Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMickael Istria2016-10-10 11:38:32 +0000
committerMickael Istria2016-10-10 11:38:32 +0000
commit9e656456ff6f9c7668d31c6ddd646ba6b5f56115 (patch)
treeb807ed9979b81b7db58335fa0bd1ed5559d9d49b
parent5a8947b3e4afc04e5afb2fe27ca9e071b3b35234 (diff)
downloadeclipse.platform.text-9e656456ff6f9c7668d31c6ddd646ba6b5f56115.tar.gz
eclipse.platform.text-9e656456ff6f9c7668d31c6ddd646ba6b5f56115.tar.xz
eclipse.platform.text-9e656456ff6f9c7668d31c6ddd646ba6b5f56115.zip
Bug 505632 - Generic Editor should support completion trigger characters
Change-Id: Iae5e5c76e6d4006df4ffbc5a499ffdc3256a1f0f Signed-off-by: Mickael Istria <mistria@redhat.com>
-rw-r--r--org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/CompositeContentAssistProcessor.java34
-rw-r--r--org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/ExtensionBasedTextViewerConfiguration.java1
2 files changed, 33 insertions, 2 deletions
diff --git a/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/CompositeContentAssistProcessor.java b/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/CompositeContentAssistProcessor.java
index d4d64acee51..fece897bd62 100644
--- a/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/CompositeContentAssistProcessor.java
+++ b/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/CompositeContentAssistProcessor.java
@@ -12,7 +12,9 @@ package org.eclipse.ui.internal.genericeditor;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.eclipse.jface.text.ITextViewer;
import org.eclipse.jface.text.contentassist.ICompletionProposal;
@@ -60,12 +62,40 @@ public class CompositeContentAssistProcessor implements IContentAssistProcessor
@Override
public char[] getCompletionProposalAutoActivationCharacters() {
- return null;
+ Set<Character> res = new HashSet<>();
+ for (IContentAssistProcessor processor : this.fContentAssistProcessors) {
+ char[] chars = processor.getCompletionProposalAutoActivationCharacters();
+ if (chars != null) {
+ for (char c : chars) {
+ res.add(c);
+ }
+ }
+ }
+ return toCharArray(res);
+ }
+
+ private char[] toCharArray(Set<Character> chars) {
+ char[] res = new char[chars.size()];
+ int i = 0;
+ for (Character c : chars) {
+ res[i] = c;
+ i++;
+ }
+ return res;
}
@Override
public char[] getContextInformationAutoActivationCharacters() {
- return null;
+ Set<Character> res = new HashSet<>();
+ for (IContentAssistProcessor processor : this.fContentAssistProcessors) {
+ char[] chars = processor.getContextInformationAutoActivationCharacters();
+ if (chars != null) {
+ for (char c : chars) {
+ res.add(c);
+ }
+ }
+ }
+ return toCharArray(res);
}
@Override
diff --git a/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/ExtensionBasedTextViewerConfiguration.java b/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/ExtensionBasedTextViewerConfiguration.java
index 713c8730d3b..af4ecb55335 100644
--- a/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/ExtensionBasedTextViewerConfiguration.java
+++ b/org.eclipse.ui.genericeditor/src/org/eclipse/ui/internal/genericeditor/ExtensionBasedTextViewerConfiguration.java
@@ -75,6 +75,7 @@ public final class ExtensionBasedTextViewerConfiguration extends TextSourceViewe
res.setContextInformationPopupOrientation(ContentAssistant.CONTEXT_INFO_BELOW);
res.setProposalPopupOrientation(ContentAssistant.PROPOSAL_REMOVE);
res.enableColoredLabels(true);
+ res.enableAutoActivation(true);
res.setContentAssistProcessor(processor, IDocument.DEFAULT_CONTENT_TYPE);
res.setInformationControlCreator(new AbstractReusableInformationControlCreator() {
@Override

Back to the top