连接第二个屏幕时鼠标分辨率会发生变化

连接第二个屏幕时鼠标分辨率会发生变化

问题

我的 16.04 笔记本电脑有 1366x768 显示屏,一切都很完美。当我连接外接显示器(1920x1200)时,一切都很完美,但鼠标灵敏度(我可以称之为解决或者精确)。
光标在缓慢移动时会在像素之间“跳跃”,我发现很难指向小区域。
换句话说:指针精度不高.
使用鼠标或触摸板时都会发生这种情况。

我在另一台 16.04 PC 上使用另一个鼠标和一个高分辨率显示器(1920x1080)时也看到了同样的问题(“像素跳跃”),所以我猜这是高分辨率显示器才具有的“特性”。

我尝试过 #1

xset -q|grep accel输出acceleration: 5/1 threshold: 5

通过对 xset 参数进行修改,我发现xset -m 1 5效果稍好一些,但根本没有解决“精度”问题(仍然跳跃像素)。

我尝试过的方法 #2

xinput我尝试在插入外部显示器时寻找参数变化:xinput list输出很多设备,然后我使用以下方法对它们进行测试:xinput list-props

连接第二台显示器时唯一改变的是:

xinput list-props "Atmel Atmel maXTouch Digitizer"

唯一改变的参数是:

Coordinate Transformation Matrix (144):
1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000

Coordinate Transformation Matrix (144):
0.415703, 0.000000, 0.000000, 0.000000, 0.640000, 0.000000, 0.000000, 0.000000, 1.000000

问题

  1. 我可以阻止这种情况发生吗?
  2. 我可以Coordinate Transformation Matrix用 xinput 修改参数吗?
  3. 是否可以同时针对不同的显示分辨率实现不同的指针行为?我的意思是:高分辨率实现“快速”,低分辨率实现“流畅”?

谢谢!

答案1

两个月后,我回答了我自己的问题,我再次研究了这个问题并找到了解决方案。

xinput --list --short输出两个与触摸板相关的驱动:

Atmel Atmel maXTouch Digitizer id=11
ETPS/2 Elantech Touchpad id=14

连接外部显示器时唯一发生变化的是。使用(144 是坐标变换矩阵道具)id=11更改其参数并没有改变光标行为,然后我尝试使用其他驱动程序进行破解并成功:xinput set-prop 11 144 1 0 0 0 1 0 0 0 1

xinput set-prop 14 144 .5 0 0 0 .5 0 0 0 1
xinput set-prop 14 273 25

这样,我就能够在缓慢移动时提高光标精度(通过坐标变换矩阵,道具 144),并在手指在触摸板上快速移动时保持较高的加速度(设备加速度缩放,道具 273)。

我认为这些信息对于其他全高清用户可能也有用。

相关内容