Eclipse插件绑定CTRL + SPACE无法正常工作

时间:2010-06-08 12:20:37

标签: java editor eclipse-plugin

我要从Eclipse 3.4.0到3.5.1(Galileo)更新eclipse插件(编辑器)。

内容辅助存在问题。

在我键入CTRL + SPACE的地方,没有任何反应。但是当我将CTRL + SPACE的绑定更改为Eclipse中的另一个绑定(Preferences-> Keys)时,它可以正常工作(CTRL + SPACE适用于我的编辑器)。

以下是听众:

public class CompletionVerifyKeyListener implements VerifyKeyListener{

    private ISourceViewer sourceViewer = null ;
    private ITextListener textListener = null ;
    private QuickAssistAssistant qaa = null ;


    public CompletionVerifyKeyListener(ISourceViewer sourceViewer, ITextListener textListener, QuickAssistAssistant qaa) {
        this.sourceViewer = sourceViewer ;
        this.textListener = textListener ;
        this.qaa = qaa ;
    }

    @Override
    public void verifyKey(VerifyEvent arg0) {

        System.out.println("Code: " + arg0.keyCode);
        System.out.println("StateMask: " + arg0.stateMask);

        if (arg0.keyCode == 32 && (arg0.stateMask != 0)){
            this.sourceViewer.addTextListener(this.textListener) ;
            AutoCompletion ac = new AutoCompletion(this.sourceViewer, this.qaa) ;
            ac.showIfAvailable() ;
        }
    }

}

当CTRL + SPACE在Eclipse中绑定时,StateMask保持为0,但是当我更改它时,StateMask为262144(SWT.CTRL)。

我读过这个:http://wiki.eclipse.org/FAQ_How_do_I_add_Content_Assist_to_my_editor%3F但我不明白。也许我要添加createActions方法(但我不知道在哪里)。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

Ctrl + Space可能与另一个命令冲突。您是否在错误日志视图中看到有关冲突的任何内容?