Gnome, кажется, очень подходит для сенсорных устройств, есть ли способ автоматического поворота экрана, когда я переворачиваю ноутбук / планшет?
Это программное обеспечение , как сообщали, работало над многими 2 в 1 устройства. Но необходимо выполнить последнее ядро и гнома.
Править: Я знаю, что это не отвечает на Ваш вопрос непосредственно, так как у нас есть различные компьютеры, и Вы интересуетесь Gnome, но я хотел отправить это где-нибудь для помощи другим.
Следующее работало на меня для Ubuntu 16.10 (Единица) на Призраке x360 (озеро Kaby). Я подозреваю, что подобная обработка должна работать на другие ноутбуки.
Как в ответе @Yalokly, установке iio-sensor-proxy
:
sudo apt-get install iio-sensor-proxy
Это может быть кучей проблем для получения работы. Вы знаете, что это работает если, когда Вы работаете monitor-sensor
материал происходит при вращении устройства. Вот repo, где Вы могли бы найти некоторую информацию о поиске и устранении неисправностей. Я испытал некоторые затруднения при получении его движение. Обновление моего ядра от 4,8 до 4,10 работало на меня. Ищите учебное руководство онлайн. Как многие другие, у меня есть ошибка, где датчик, контролирующий только, работает после того, как компьютер был приостановлен - возобновленный, по крайней мере, однажды.
Единица не делает авторотации и материала режима планшета самостоятельно. Я объединил сценарии отсюда и здесь так, чтобы:
onboard
программа запущена в трех ориентациях 'планшета' и уничтожена для ориентации 'ноутбука' (дополнительный: Я нашел полезным включить автовсплывающее окно в текстовом режиме во встроенных предпочтениях),Вот сценарий:
#!/bin/sh
# IH: this script is taken from a combo of:
# https://linuxappfinder.com/blog/auto_screen_rotation_in_ubuntu
# https://askubuntu.com/questions/757900/hp-spectre-x360-disable-touchpad-in-tablet-mode-ubuntu-15-10
# Auto rotate screen based on device orientation
# Receives input from monitor-sensor (part of iio-sensor-proxy package)
# Screen orientation and launcher location is set based upon accelerometer position
# Launcher will be on the left in a landscape orientation and on the bottom in a portrait orientation
# This script should be added to startup applications for the user
# Clear sensor.log so it doesn't get too long over time
> sensor.log
# Launch monitor-sensor and store the output in a variable that can be parsed by the rest of the script
monitor-sensor >> sensor.log 2>&1 &
# Parse output or monitor sensor to get the new orientation whenever the log file is updated
# Possibles are: normal, bottom-up, right-up, left-up
# Light data will be ignored
while inotifywait -e modify sensor.log; do
# Read the last line that was added to the file and get the orientation
ORIENTATION=$(tail -n 1 sensor.log | grep 'orientation' | grep -oE '[^ ]+$')
# Set the actions to be taken for each possible orientation
case "$ORIENTATION" in
normal)
xrandr --output eDP-1 --rotate normal
gsettings set com.canonical.Unity.Launcher launcher-position Left
xinput set-int-prop 12 "Device Enabled" 8 1 #Enable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 1 #Enable Pad
killall onboard
;;
bottom-up)
xrandr --output eDP-1 --rotate inverted
gsettings set com.canonical.Unity.Launcher launcher-position Left
xinput set-int-prop 12 "Device Enabled" 8 0 #Disable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 0 #Disable Pad
onboard &
;;
right-up)
xrandr --output eDP-1 --rotate right
gsettings set com.canonical.Unity.Launcher launcher-position Bottom
xinput set-int-prop 12 "Device Enabled" 8 0 #Disable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 0 #Disable Pad
onboard &
;;
left-up)
xrandr --output eDP-1 --rotate left
gsettings set com.canonical.Unity.Launcher launcher-position Bottom
xinput set-int-prop 12 "Device Enabled" 8 0 #Disable Keyboard
xinput set-int-prop 13 "Device Enabled" 8 0 #Disable Pad
onboard &
;;
esac
done
Примечание: Мой экран называют eDP-1
, Ваш можно назвать чем-то другим. Выполненный xrandr
узнать имя и изменить эти четыре экземпляра в вышеупомянутом сценарии.
Сохраните это где-нибудь как auto-rotate.sh
, сделайте это исполняемым файлом (chmod a+x auto-rotate.sh
), и добавьте его для Запущения Приложений.
Я использовал @Ian код Hincks, но у меня есть немного предложения для, делают это полезный. У меня есть ряд Dell Inspiron 13 7000, и эта машина имеет Светочувствительный датчик для балансировки яркой подсветки. Я должен был изменить сборку строки "ориентации", потому что изменения светочувствительного датчика являются quicks, и загрязняет полученную ориентацию. Затем я получаю три легких изменения одной строкой ориентации. Если я получаю только одну строку журнала, я освобождаю строку ориентации. Поэтому я увеличил получение журнала до 4 строк и изменил grep regex для получения последней ориентации. Затем новая строка ОРИЕНТАЦИИ будет:
ORIENTATION=$(tail -n 4 sensor.log | grep 'orientation' | grep -oEm 1 '[^ ]+ Спасибо @Ian Hincks для Вашего кода!
)
Спасибо @Ian Hincks для Вашего кода!
fdisk -l
шоу?
– user116708
7 September 2016 в 06:32