Sono interessato dal BUG: https://bugs.launchpad.net/ubuntu/+source/unity-greeter/+bug/874241 Altrimenti, se come me hai un laptop collegato a un secondo monitor ad alta risoluzione, LIGHTDM a la fase di accesso, rispecchia i display in entrambe le schermate e assegna loro una risoluzione comune (1024X768) nel mio caso, invece di estendere il desktop (schermata principale con il messaggio di benvenuto e secondaria con solo un logo, come menzionato nel libro delle specifiche UX di Multiple Monitors per 12.04).
Ecco il mio xrandr -q
@L502X:~$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1848, maximum 8192 x 8192
LVDS1 connected 1366x768+309+1080 (normal left inverted right x axis y axis) 344mm x 193mm
1366x768 60.0*+
1360x768 59.8 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 287mm
1920x1080 60.0*+
1600x1200 60.0
1680x1050 60.0
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1280x800 59.8
1024x768 60.0
800x600 60.3 56.2
640x480 60.0
DP1 disconnected (normal left inverted right x axis y axis)
Ho provato a forzare lightdm ad eseguire alcuni comandi xrandr al fine di impostare la giusta risoluzione per ciascun monitor ed estendere il desktop, quindi ho creato un semplice script chiamato /usr/share/lightdmxrand.sh :
#!/bin/sh
xrandr --output HDMI1 --primary --mode 1920x1080 --output LVDS1 --mode 1366x768 --below HDMI1
E disse a lightdm di eseguirlo: /etc/lightdm/lightdm.conf
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-setup-script=/usr/bin/numlockx on
display-setup-script=/usr/share/lightdmxrandr.sh
riavviato lightdm: sudo restart lightdm
E la schermata di accesso dell'unità greeter era corretta. Schermi con le rispettive risoluzioni corrette e se sposto il mouse su uno schermo, viene messo a fuoco con la casella di accesso e il pannello, mentre lo schermo sfocato visualizza solo un logo Ubuntu (proprio come specificato nel libro delle specifiche MM UX). Fantastico!
Questa soluzione alternativa funziona perfettamente finché il monitor esterno è collegato al laptop. Nella situazione in cui non è collegato, nella fase di accesso, ottengo: un ERRORE MODALITÀ GRAFICA BASSO (Stai funzionando in modalità grafica bassa, lo schermo, i dispositivi di input ... non sono stati rilevati ..). Normale, perché xrandr
tenta di eseguire l'output su un monitor non collegato.
La domanda qui è come dovrei modificare lo script in modo tale che quando il monitor esterno non è collegato xrandr
esce solo sullo schermo del laptop e ignora qualsiasi monitor esterno. PER ESEMPIO:
If (xrandr -q | grep 'HDMI1 connected') != NULL (HDMI1 is connected )
then xrandr --output HDMI1 --primary --mode 1920x1080 --output LVDS1 --mode 1366x768 --below HDMI1
else xrandr --output LVDS1 --mode 1366x768 (or do nothing - because the resolution of the laptop screen is correct when no external monitor is connected)
Grazie in anticipo.