解决Linux平台下使用触摸便携屏触摸功能异常
Linux平台下使用触摸副屏的状况编程时老感觉一块显示屏不够用,最近趁双11买了块触摸便携屏。通过笔记本的雷电口用typeC线连到便携屏上的typeC口,在windows平台下使用正常,但Linux平台下触摸副屏时鼠标指针响应在主屏上!安装xinputxinput软件可以解决触摸屏映射错误的问题。不同的linux平台下安装xinput的方式不尽相同,我用的是manjaro,manjaro平台下安装
Linux平台下使用触摸副屏的状况
编程时老感觉一块显示屏不够用,最近趁双11买了块触摸便携屏。通过笔记本的雷电口用typeC线连到便携屏上的typeC口,在windows平台下使用正常,但Linux平台下触摸副屏时鼠标指针响应在主屏上!
安装xinput
xinput软件可以解决触摸屏映射错误的问题。不同的linux平台下安装xinput的方式不尽相同,我用的是manjaro,manjaro平台下安装xinput的方法如下。
yay -S xorg-xinput xorg-server xorg-xrandr libxrandr
查看便携屏信息
xrandr
执行xrandr后会显示当前所有显示屏的详细信息如下,我这显示屏的信息是“Screen 0是主屏、DisplayPort-0是副屏”,请注意将DisplayPort-0信息复制下来!
查看触摸屏ID
xinput list
执行xinput list后的信息如下,请注意留心“TouchScreen”的id,请注意将id信息复制下来!
更改触摸与显示映射
请注意TouchScreen有两个ID,如上图触摸屏id有15和16两个。执行下面的命令更改触摸与显示映射:
xinput map-to-output "15" "DisplayPort-0"
执行命令后请测试触摸功能是否正常,若不正常那么更换id再执行如下命令:
xinput map-to-output "16" "DisplayPort-0"
添加开机自启动脚本
检查sh文件路径:
which sh
我这显示的内容如下“/usr/bin/sh”
vim touchscreen.sh
文件内容要参考sh路径和之前测试的xinput配置命令进行编辑,内容如下:
#!/usr/bin/sh
sleep 10s
xinput map-to-output "14" "DisplayPort-0"
请注意,上面这个文件bash、sleep、xinput都要根据自己的电脑进行合适的配置。
- sh文件,不同的linux平台下sh路径不同
- sleep,若不设置会造成显示驱动没加载就执行xinput,从而造成xinput执行失败。
- xinput,要设置正确的触摸屏id和显示器名称。
注意事项
注意,电脑休眠后TouchScreen的ID会发生变化,从而造成配置失灵,若遇到这种情况,只好重新查询ID和使用xinput重新更改触摸与显示映射。
更多推荐
所有评论(0)