首页 > 解决方案 > 如何删除键绑定

问题描述

我在plugin.xml中注册了一个标准命令,其中包含一个处理程序和键绑定,如下所示:

<extension point="org.eclipse.ui.bindings">
  <scheme
        id="AcmeSchema"
        name="ACME Schema">
  </scheme>
  <key
        commandId="org.acme.module.myCommand"
        contextId="org.eclipse.ui.contexts.dialogAndWindow"
        schemeId="AcmeSchema"
        sequence="M1+M2+M3+F6">
  </key>
</extension>

一切正常,键绑定通过IBindingService#openKeyAssistDialog.

现在我想禁用该命令。(我通过向activeWhen相应的处理程序添加一个来做到这一点。)但仍然显示键绑定。我尝试通过活动隐藏命令,但它仍然显示。键绑定本身没有 avisibleWhen或类似的东西。

这里的问题是,即使命令在任何地方都不可见,它仍然可以通过快捷键触发。并且由于其启用的内部规则未得到满足,因此执行该命令将失败。

如何删除不再活动的命令的键绑定?

标签: javaeclipse-plugin

解决方案


推荐阅读