触摸屏鼠标在 ThinkCentre 91Z 上“锁定”了吗?

触摸屏鼠标在 ThinkCentre 91Z 上“锁定”了吗?

我有一台联想 ThinkCentre 91Z 一体机,配有 AMD 显卡和 ILITEK 多点触控。我使用的是 ubuntu 12.10 和最新的催化剂驱动程序,它似乎运行正常。

我有一个与此处提到的问题类似的问题http://ubuntuforums.org/archive/index.php/t-2064976.html

我正在浏览器(chrome、chromium、firefox、opera)中测试此问题,但其他地方也会出现此问题。当我在屏幕上单击时,几分钟内一切似乎都正常,然后触摸屏鼠标单击似乎卡在单击(按住)某个位置,单击其他任何地方实际上都会选择屏幕的某个区域(如单击和拖动)。这限制了很多功能,之后某些页面无法滚动等。如果我注销并再次登录,一切都会解决。

我对触摸屏配置/驱动程序/兼容性一无所知,所以我不知道该去哪里找。有什么想法吗?

答案1

我实际上创建了您链接的帖子(http://ubuntuforums.org/archive/index.php/t-2064976.html),并且我认为我应该分享我对这个问题的非常非常粗糙和肮脏的解决方案。

遇到这个问题很久之后却无法真正解决它,我终于放弃了,并创建了一个非常简单的 python 脚本,它将使用 xinput 监视所有鼠标事件,然后在每次释放鼠标时触发一个新的鼠标 10 事件。

起初我试图只寻找不匹配的鼠标按下动作(一次又一次的鼠标按下),但不知何故,有时似乎会在没有发生这种情况的情况下出现错误,为什么我只是在每次释放鼠标时触发一个鼠标事件。

您可能还需要对代码进行一些修改,以便它监听来自您的显示器而不是我的 Acer 的事件(运行 xinput 查找名称)。该脚本还要求您安装 xdotool(您应该能够通过 apt-get 获取它),这是一个用于触发输入事件的简单工具。

无论如何,我希望这会有所帮助,直到找到真正的解决方案:)

#!/usr/bin/env python 
import subprocess 
proc=subprocess.Popen(["xinput","--test", 'Acer T231H'], stdout=subprocess.PIPE) 
while True: 
        line = proc.stdout.readline().split(' ')
        if line[0] == "button" and line[1] == "release":
            subprocess.call(['xdotool', 'mousedown', '10'])

相关内容