mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-13 22:10:08 +00:00
[GdkScreenX11] Add heuristic for pre XRandR 1.3 drivers
Currently gdk_screen_get_primary_monitor just returns the first monitor, in this case but both the panel and now gnome-shell use an additional heuristic to prefer LVDS as primary if present. Move this heuristic to gdk_screen_get_primary_monitor to avoid duplicating it all over the place. The fallback heuristic is also used when no primary output is set. https://bugzilla.gnome.org/show_bug.cgi?id=614894
This commit is contained in:
parent
e13ab6c53a
commit
5651cbc4b4
@ -771,7 +771,7 @@ init_randr13 (GdkScreen *screen)
|
||||
XRROutputInfo *output =
|
||||
XRRGetOutputInfo (dpy, resources, resources->outputs[i]);
|
||||
|
||||
if (resources->outputs[i] == primary_output)
|
||||
if (primary_output != None && resources->outputs[i] == primary_output)
|
||||
{
|
||||
screen_x11->primary_monitor = i;
|
||||
}
|
||||
@ -785,6 +785,12 @@ init_randr13 (GdkScreen *screen)
|
||||
continue;
|
||||
}
|
||||
|
||||
/* No RandR1.3+ available or no primary set, fall back to prefer LVDS as primary if present */
|
||||
if (g_ascii_strncasecmp (output->name, "LVDS", 4) == 0)
|
||||
{
|
||||
screen_x11->primary_monitor = i;
|
||||
}
|
||||
|
||||
if (output->crtc)
|
||||
{
|
||||
GdkX11Monitor monitor;
|
||||
|
Loading…
Reference in New Issue
Block a user