O ideal é que haja um evento que possamos responder e que isso aconteça automaticamente, mas parece que esse ainda é um problema em aberto:
link
Veja também: link
Então, vou combinar as seguintes respostas:
1. Encontrar teclado & amp; IDs do trackpad
Encontre os IDs para o seu teclado / trackpad ou o que você quiser desabilitar usando o seguinte comando. O meu é 12 para o teclado e 13 para o Touchpad. Anote.
xinput list
2. Encontre seu ID de exibição
Execute o comando followiing para encontrar a tela conectada, é o ID que é seguido por "conectado". O meu é "eDP1".
xrandr
3. Escreva o script do modo tablet
sudo nano /usr/local/bin/tablet-mode.sh
Preencha com o seguinte script. Mude 12 e 13 para os seus IDs do teclado / trackpad e altere eDP1 para o seu ID de exibição.
#!/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
Conceda a ele direitos executáveis:
sudo chmod +x /usr/local/bin/tablet-mode.sh
4. Escreva o script do modo portátil
sudo nano /usr/local/bin/laptop-mode.sh
Preencha com:
#!/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
Dê a ele direitos executáveis:
sudo chmod +x /usr/local/bin/laptop-mode.sh
5. Crie o ícone do modo tablet
sudo nano /usr/share/applications/tablet-mode.desktop
Preencha com:
[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. Crie o ícone do modo laptop
sudo nano /usr/share/applications/laptop-mode.desktop
Preencha com:
[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
Você provavelmente precisará fazer login novamente para obter os ícones.