Home > Software design >  Eclipse RCP Content Assist not working with auto activated characters
Eclipse RCP Content Assist not working with auto activated characters

Time:12-09

I define my own editor and have completion proposals like this

    public IContentAssistant getContentAssistant(ISourceViewer sv) {
    ContentAssistant ca = new ContentAssistant();
    IContentAssistProcessor pr = new TagCompletionProcessor();
    ca.setContentAssistProcessor(pr, IDocument.DEFAULT_CONTENT_TYPE);
    return ca;
}

   @Override
   public char[] getCompletionProposalAutoActivationCharacters() {
      String str = "._abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
      return str.toCharArray();
   }

So when I am pressing ctrl-space enter it will work, but I want it should always trigger computeCompletionProposals when any of the above characters are entered.

<extension
         point="org.eclipse.ui.editors">
      <editor
            id="testingpluginproject.editors.XMLEditor"
            name="Sample XML Editor"
            icon="icons/sample.png"
            extensions="xxml"
            class="testingpluginproject.editors.XMLEditor"
            contributorClass="org.eclipse.ui.texteditor.BasicTextEditorActionContributor">
      </editor>
   </extension>

So what I am missing?

CodePudding user response:

You must call the ContentAssistant enableAutoActivation method to enable auto activation:

ca.enableAutoActivation(true);

You might also want to look at implementing IContentAssistProcessorExtension rather than just IContentAssistProcessor as it provides a better isCompletionProposalAutoActivation method.

  • Related