After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 523408 - Xinerarama code needs to sanitize overlapping monitors
Xinerarama code needs to sanitize overlapping monitors
Status: RESOLVED OBSOLETE
Product: gtk+
Classification: Platform
Component: Backend: X11
2.12.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks: randr-tracker
 
 
Reported: 2008-03-19 17:25 UTC by Federico Mena Quintero
Modified: 2009-02-26 01:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22


Attachments
gtk2-bnc343858-buggy-intel-xinerama.diff (4.78 KB, patch)
2008-03-19 17:28 UTC, Federico Mena Quintero
none Details | Review

Description Federico Mena Quintero 2008-03-19 17:25:02 UTC
This started as https://bugzilla.novell.com/show_bug.cgi?id=343858

Xinerama/RandR don't have a concept of a primary monitor, and leave it up to clients to decide on that policy.  Most clients simply use "monitor 0" as the primary monitor.

However, when there are overlapping monitors ("cloned display" for laptops), then clients may not get the correct idea of which is the laptop's monitor and which is the external display.

In particular, the Intel 915 driver in xorg had a bug where it would report that a laptop had a VGA monitor plugged in when in fact it didn't, *and* it would list that output before the laptop's LCD display in the Xinerama monitors.  This woul result in GNOME thinking that you had a primary 1024x768 display, when in fact your shiny laptop does 1440x900.

The attached patch is what we have for gtk-2-12 in openSUSE 10.3.  It detects the condition of having only two overlapping monitors, and makes GdkScreen think that there is only a single monitor, with the resolution of the largest of the two.  This fixes the problem for those laptops.  KDE uses a similar patch.

This patch doesn't apply to SVN trunk, as there is extra code for RandR there.  I'm not sure if this patch has the right policy, either, given Søren's recent work on handling RandR setups.
Comment 1 Federico Mena Quintero 2008-03-19 17:28:37 UTC
Created attachment 107637 [details] [review]
gtk2-bnc343858-buggy-intel-xinerama.diff