Linux机器上的SWT TableViewer监听器冲突

时间:2015-06-30 11:13:00

标签: java linux eclipse-plugin swt eclipse-rcp

在Ubuntu 14.04中运行我的项目时,我有一个特殊的问题。 这是场景:

我有ViewPart个容器TableViewer。 TableViewer附加了ISelectionChangedListener,以便它可以跟踪表中行的选择。

TableViewer表还有一个TableCursor,它有两个连接的监听器:KeyAdapter来监听键盘按钮和MenuDetectListener

我遇到的问题是,当我想要使用shift键和鼠标单击选择表中的多行时,会触发键侦听器,但选择侦听器不起作用。因此无法选择多行

在另一种情况下,当我想右键单击一行以打开菜单项时,仅触发选择侦听器,但菜单检测侦听器不会激活。只有当我再次单击同一行时,菜单检测侦听器才会激活,因为选择侦听器不活动。

这让我相信听众之间存在冲突。但是,我只在Linux机器上观察到这一点,而它在Windows上工作正常。

我理解这个问题在我的案例中非常独特,但是我想知道是否有人在此之前遇到过类似问题,并且是否有解决方法。

SWT插件依赖项:org.eclipse.swt.gtk.linux.x86_64_3.102.1.v20140206-1358.jar

0 个答案:

没有答案