web-dev-qa-db-fra.com

Changer la façon dont la rotation automatique de l'écran fonctionne dans la coque GNOME

J'ai récemment acquis un cahier convertible de Lenovo Yoga 3 11 ". Cela fonctionne bien avec une touche imminente avec Ubuntu Gnome LTS 16.04.2 - WiFi, Bluetooth, même suspendre et reprendre le travail sans aucun problème jusqu'à présent.

J'ai remarqué que Gnome 3 permet même à l'écran de faire pivoter automatiquement en fonction des capteurs de rotation intégrés. Le yoga 3 11 "offre des capteurs de rotation via iio-sensor-proxy qui est déjà installé par défaut dans Ubuntu Gnome. Comme cela se produit, l'orientation rapportée par iio-sensor-proxy semble être éteint de 90 °.

Tournez automatiquement l'écran sur Dell 13 7000 avec 15.04 (GNOME) a une solution en termes d'un script de shell personnalisé qui gère la rotation de l'écran. Je préférerais ne pas utiliser cette solution car elle désactive le bouton "Désactiver la rotation de l'écran" dans Gnome Shell.

J'ai déjà fait des recherches et j'ai constaté que iio-sensor-proxy devrait causer udev pour déclencher un événement utilisé par GNOME 3 pour définir l'orientation de l'écran via xrandr. Je ne peux cependant pas trouver un moyen de dire soit udev _ ou gnome 3 que l'accéléromètre est monté dans une orientation différente de l'écran, ce qui nécessite que les instructions soient traduites entre les deux.

Donc, la question est la suivante: comment cela peut-il être fait? Le remappage d'orientation doit être possible dans l'une des iio-sensor-proxy, udev _ ou gnome 3, et je ne me soucie pas de beaucoup de choses là où cela se fait. Je ne semble pas trouver de fichiers de configuration, je peux facilement changer pour atteindre ce dont j'ai besoin.

En tant que solution de contournement pour l'instant, j'utilise le script à partir de la question Ask Ubuntu liée ci-dessus, avec des modifications pour tenir compte du problème d'affichage/accéléromètre malaligné. Pour que cela fonctionne, je dois désactiver la rotation automatique de l'écran dans gnome 3. Bien que cette solution permet également de démarrer et de tuer automatiquement onboard (clavier à l'écran) en fonction de l'orientation actuelle, il est en quelque sorte défaite le but de Le réglage de rotation de l'écran GNOME 3.

8
hoe

De Site Github Iio-Sensor-Proxy Lorsque l'accéléromètre n'est pas monté de la même manière que l'écran, nous devons modifier les lectures de l'accéléromètre pour vous assurer que l'orientation calculée correspond à l'écran une.

iio-sensor-proxy lit ces informations de l'appareil ACCEL_MOUNT_MATRIX Propriété Udev. Voir 60-sensor.hwdb Pour plus de détails.

2