HP Spectre x360 在平板模式下禁用触摸板 - Ubuntu 15.10

HP Spectre x360 在平板模式下禁用触摸板 - Ubuntu 15.10

所以我安装了 ubuntu,解决了声音问题和其他一些问题,但是当我将屏幕向后旋转以使笔记本电脑处于平板电脑模式时,触摸板仍然处于活动状态。Ubuntu 会自动禁用按键(我认为这是在我升级到 15.10 时发生的),但它不会禁用鼠标垫。在平板电脑模式下,我也没有屏幕键盘。

我尝试查找,但找到的都是其他笔记本电脑(主要是联想和戴尔型号)的,而且我对 acpi 的东西了解不够多,无法弄清楚如何让它在我的笔记本电脑上工作。有人有什么建议吗?我知道如何从命令行手动禁用触摸板并启用屏幕键盘,但我希望当我将屏幕向后旋转时它会自动发生。

答案1

理想情况下,我们可以对某个事件做出响应并让其自动发生,但这似乎仍然是一个悬而未决的问题:
https://bugs.launchpad.net/ubuntu/+source/udev/+bug/1535008
另请参阅:https://askubuntu.com/a/732830/519324

因此我将结合以下答案:

1. 查找键盘和触控板 ID
使用以下命令查找键盘/触控板或任何您想要禁用的设备的 ID。我的键盘 ID 为 12,触控板 ID 为 13。记下来。

xinput list

2. 查找您的显示 ID

运行以下命令查找已连接的屏幕,它是后面带有“已连接”的 ID。我的是“eDP1”。

xrandr

3. 编写平板模式脚本

sudo nano /usr/local/bin/tablet-mode.sh

填写以下脚本。将 12 和 13 更改为您的键盘/触控板 ID,将 eDP1 更改为您的显示器 ID。

#!/bin/bash
xinput set-int-prop 12 "Device Enabled" 8 0 #Disable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 0 #Disable Pad
xrandr --output eDP1 --rotate inverted #Rotate screen
onboard & #Turn on onscreen keyboard

赋予其可执行权限:

sudo chmod +x /usr/local/bin/tablet-mode.sh

4. 编写笔记本模式脚本

sudo nano /usr/local/bin/laptop-mode.sh

填充:

#!/bin/bash
xinput set-int-prop 12 "Device Enabled" 8 1 #Enable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 1 #Enable Pad
xrandr --output eDP1 --rotate normal #Rotate screen back
killall onboard #Turn off onscreen keyboard

赋予其可执行权限:

sudo chmod +x /usr/local/bin/laptop-mode.sh

5. 创建平板模式图标

sudo nano /usr/share/applications/tablet-mode.desktop

填充:

[Desktop Entry]
Type=Application
Terminal=false
Name=Tablet Mode
Icon=/usr/share/icons/Adwaita/32x32/actions/media-playback-stop.png
Exec=/usr/local/bin/tablet-mode.sh

6. 创建笔记本电脑模式图标

sudo nano /usr/share/applications/laptop-mode.desktop

填充:

[Desktop Entry]
Type=Application
Terminal=false
Name=Laptop Mode
Icon=/usr/share/icons/Adwaita/32x32/actions/media-playback-stop.png
Exec=/usr/local/bin/laptop-mode.sh

您可能需要重新登录才能获取图标。

答案2

我的 Pavilion X360 也遇到了类似的问题,因此我采取了以下解决方法:禁用键盘和触摸板,并旋转屏幕,以便将其用作平板电脑。这可能对您有用。

首先我创建了一个图标。

sudo vim /usr/share/applications/Keyboard-OFF.desktop

[Desktop Entry]
Type=Application
Terminal=true
Name=Tablet Mode
Icon=/usr/share/icons/Adwaita/32x32/actions/media-playback-stop.png
Exec=/bin/KeyboardOff.sh

随意更改我用来左右暂停停止的图标,这样我就可以向不同方向旋转屏幕并将它们固定到栏上。

然后

xinput list

找到你的键盘/触控板的 ID,或者你想禁用的任何东西,记下来。我的键盘是 12,触控板是 13

用于显示运行

xrandr

找到你的显示器我​​的是eDP1

然后

sudo vim /bin/KeyboardOff.sh

将 12 和 13 更改为您的 ID 将 eDP1 更改为您的显示器

#!/bin/bash
echo "EnterPasswordHere" | sudo -S xinput set-int-prop 12 "Device Enabled" 8 0 #Disable Keyboard
echo "EnterPasswordHere" | sudo -S xinput set-int-prop 13 "Device Enabled" 8 0 #Disable Pad
echo "EnterPasswordHEre" | sudo -S xrandr --output eDP1 --rotate inverted
onboard & #Turn on onscreen keyboard
echo ""
echo "Keyboard is off"

然后创建并固定另一个以将其重新打开

sudo vim /usr/share/applications/Keyboard-ON.desktop

[Desktop Entry]
Type=Application
Terminal=true
Name=Laptop Mode On
Icon=/usr/share/icons/Adwaita/32x32/actions/media-playback-pause.png
Exec=/bin/KeyboardOn.sh

sudo vim /bin/KeyboardOn.sh

#!/bin/bash
echo "YourPasswordHere" | sudo -S xinput set-int-prop 12 "Device Enabled" 8 1
echo "YourPasswordHere" | sudo -S xinput set-int-prop 13 "Device Enabled" 8 1
echo "YourPasswordHere" | sudo -S xrandr --output eDP1 --rotate normal
echo ""
echo "Keyboard is back on"
exit

记得将 12 和 13 以及 eDP1 更改为您的键盘/键盘,并在末尾显示 0 或 1 来打开和关闭它,您还可以通过将 --rotate normal 更改为 --rotate right 或 left 来创建更多图标以向左和向右旋转

我知道这并不能具体回答你的问题,但我发现选择这些而不是进入平板电脑模式似乎更容易,因为平板电脑模式现在似乎有点不稳定。

希望这对你或其他遇到此问题的人有所帮助。抱歉我的回答有点粗鲁。

相关内容