GNOME Bugzilla – Bug 530969
With overlapping monitors of different resolutions, panel may appear in the middle of some of them
Last modified: 2009-08-11 21:04:13 UTC
Please describe the problem: The top panel only goes 3/4 the length of my screen. The bottom panel work fines. It will only work if i have clone screen on but the revolution is not right then. Screenshot: http://i30.tinypic.com/war66q.png Ive tried to playing with some settings in apps -> panel -> toplevels -> top_panel_screen0 but nothing will make it full length. Steps to reproduce: 1. Ergo Vista 621 2. Intel Corporation Mobile GM965 chipset 3. Resolution 1280x80 Actual results: The top panel only goes 3/4 the length of the screen. Expected results: The top panel to be full length across. Does this happen every time? Yes Other information:
This is part of a more general problem. Say you have the following RANDR setup where the outputs overlap (resolutions and offsets): VGA - 1024x768 (0, 0) LCD - 1440x1050 (0, 0) A bottom panel will then pick the edge of the first output, placing itself at 768 pixels down (minus the panel height, of course). This makes the panel show up "in the middle" of the LCD in the laptop, which is wrong. The panel needs to handle overlapping monitors with different resolutions by just picking the largest of them, and ignoring the rest. I am working on a patch for this.
Note to self - I can easily reproduce this by setting up RANDR like this: xrandr --output VGA-0 --mode 1024x768 --pos 0x0 xrandr --output DVI-0 --mode 1440x900 --pos 0x0
Created attachment 129962 [details] [review] gnome-panel-bgo530969-sanitize-overlapping-monitors.diff This fixes the problem. Our strategy is to find the subsets of overlapping monitors, and "compress" each such set to being like if there were a single monitor with the biggest resolution of each of that set's monitors. Say we have four monitors A, B, C, D where B and D overlap. In that case, we'll generate a new list that looks like A, MAX(B, D), C with three monitors.
I've pushed a branch with these patches here: git://gitorious.org/gnome-panel/gnome-panel.git Look for the bgo530969-sanitize-overlapped-monitors branch.