Ловите по dbus сообщения о физическом повороте экрана и делайте всё, что захотите. Через xrandr, например.
Спасибо, я вот первый раз слышу про dbus.
Я уже испытал на MATE поворот тачскрина (экран + сенсор) с помощью команд
xrandr и
xinput. При чем надо сказать, что в MATE они работают правильно, а вот в DKE wayland они у меня нормально не работают: xrandr не поворачивает экран при вводе -o left or -rotation left; а xinput определяет оборудование как wayland-touch. Но, вероятно, так и должно быть.
В общем, используя совсем простой набор команд:
#xinput set-prop "Wacom ISDv4 E6 Finger" 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1
#xrandr -o left
-- я смог повернуть тачскрин и все очень корректно заработало, чего для меня вполне, почти достаточно. Лично я был очень рад: изначально мне слабо верилось, что просто повернутая через xinput матрица сенсора будет корректно работать. Возможно, конечно, что какие-то сквозняки остались и потом вылезут: не знаю. Но выглядит все и работает очень прилично.
Соответственно есть еще два вопроса:
1. Можно ли как-то заставить работать прокрутку пальцем в Firefox? Раньше существовало соответствующее расширение, позволявшее включать эту опцию. Но сейчас оно не доступно для скачивания. Но само ее существование говорит о том, что эта опция возможна. Может быть существует какая-то глобальная настройка, позволяющая включать прокрутку пальцем во многих приложениях, где она изначально некорректно работает?
2. Настройка автоповорота в MATE. Как я понимаю, надо "просто" считывать данные с датчика: которые в скрипте будут давать команду xinput и xrandr на поворот сенсора и экрана. Но как подключиться к этому датчику? Вы говорите про dbus: обязательно почитаю. Как я понимаю, iio-sensor-proxy работает через него. Но эта утилита у меня, к сожалению, почему-то не работает. Я ее скачал, консоль показала, что успешно установлен 1 пакет (38 kB).
Но результат такой:
# iio-sensor-proxy
-bash: iio-sensor-proxy: команда не найдена
И, соответственно:
# monitor-sensor
Waiting for iio-sensor-proxy to appear.
Как я догадываюсь, я ее вероятно неправильно использую. А как правильно? Надо какие-то особые пути указывать или какие-то дополнительные действия делать (пишут про какие-то девайсы)? И можно ли как-то иначе обращаться к dbus?