在 Kubuntu 14.04 (KDE 4.13.0) 中,我使用 imwheel 1.0.0pre12-9 将我的罗技 M510 的额外拇指按钮映射到某些程序的一些有用的击键。这工作正常,当我的电脑开机时它会很好地启动,它甚至会在挂起到 RAM 后继续运行。
问题是,当 tv-browser.org 弹出自动通知时,imwheel 经常停止。我在 KWin 中将这些通知配置为始终显示在顶部,还启用了焦点转移预防。TVB也不是唯一杀imwheel的节目。
如果我几秒钟没有移动鼠标,imwheel 将在 TVB 通知中幸存下来。如果我当时正在积极使用鼠标(滚动/左键单击/拖动),则会出现其中一个弹出窗口,此后 imwheel 的额外映射将失效。
我从控制台运行 imwheel:没有显示任何错误。imwheel 的进程仍在运行,但不再执行任何操作。它大约每小时发生一次,所以我几乎不能依赖当前发出命令的拇指按钮,我将其编程为或在 Firefox 中根据默认配置绕过 imwheel 发出例如返回。
我的问题:
- 还有其他人遇到过这个问题吗?
- 在这种复杂的情况下如何以及在哪里获得帮助?
- 我应该报告一个针对 KWin 的错误吗?在 launchpad 或 kde 的上游?
- 谁在维护 imwheel?只有2004 年的过时http://imwheel.sf.net
- 你能推荐一个更新的替代软件来将鼠标拇指按钮映射到 Kubuntu/KDE 中的击键吗?
感谢您的时间和建议
编辑:
找到了更多几乎可靠地杀死 imwheel 的方法。
在 Firefox 中,当我将一个小的下载/图像保存到我的硬盘时,会出现绿色箭头图标的动画。如果我在该动画的两秒内单击我的拇指按钮(应该通过 Ctrl+W 关闭当前选项卡),该选项卡将不会关闭并且 imwheel 在任何地方都已失效(也在其他程序/窗口中)
切换窗口或桌面后,我启用了一些奇特的 3D 效果。如果我在这样的动画之后点击其中一个拇指按钮的速度太快,imwheel 就会失效。
作为一个疯狂的猜测,我会说,imwheel 以某种方式试图提供它派生的关键事件,这些事件从拇指按钮按下转换为一些图形覆盖,这不是一个完整的窗口本身,当然不应该获得键盘-重点。
最后,我发现“imwheel --kill”可以更快地重新激活它(而不是注销并再次登录)。我什至将其映射到全局键盘快捷键。
编辑2:
调试显示,imwheel 正在取消抓取按钮 4 到 9,然后永远等待,再也不会抓取它们。只有使用 -k 重新启动才能将其恢复。
最简单的方案是将映射的拇指按钮发送到已配置的窗口,该窗口位于后台且没有焦点。调试输出显示,imwheel 针对具有焦点的窗口进行测试,而不考虑鼠标在另一个窗口上的位置。没有任何普通规则适用于此窗口,但我在 ~/.imwheelrc 的末尾做了一个排除规则,如下所示:
".*" @Priority=-1000 @Exclude
匹配每个窗口。
删除/评论此最终排除规则可以解决我的问题。imwheel 不会再崩溃了。
从命令行运行 imwheel 时,使用选项“-d -D”查看调试信息。
我最近也被这个问题困扰了,它似乎是imwheel 中的一个错误
@Exclude
,与. 显然,在激活排除后负责恢复密钥抓取的代码从未执行过。上面的链接中有一个补丁,这里也有。显然,该错误自 2004 年以来就已为人所知:D