Bug#608411: libgnome-desktop-2-17: "Span" style for desktop background doesn't zoom.

Thomas Vaughan tevaughan at gmail.com
Fri Dec 31 00:57:23 UTC 2010


On Thu, Dec 30, 2010 at 16:59, Josselin Mouette <joss at debian.org> wrote:
> Le jeudi 30 décembre 2010 à 10:31 -0700, Thomas E. Vaughan a écrit :
>> The problem is that, unless the image has *exactly* the
>> right dimensions, there will be constant-color bars in the
>> background on either side of the multi-monitor background.
>
> Well, that’s the meaning of “span”. If you want the picture to be
> zoomed, use the “zoom” style.

No, I think that you have it wrong.

The Zoom style zooms independently for each monitor, so that you have
two copies of the image in the overall display.

The Span style is intended to span the same image across multiple
monitors, so that each monitor shows a different portion of the same
background image.

The problem is that the Span style is not properly implemented. It
should use the zoom functionality, but applied to the whole desktop
(area of all monitors). That's what my patch does, and it works
beautifully. You should test the behavior both with and without the
patch on a dual-monitor system to see what I mean. Pick a background
image that doesn't happen to be exactly the dimension of the overall
desktop.

>> --- gnome-desktop-2.30.2/libgnome-desktop/gnome-bg.c.orig     2010-12-30 10:13:04.000000000 -0700
>> +++ gnome-desktop-2.30.2/libgnome-desktop/gnome-bg.c  2010-12-30 09:45:52.000000000 -0700
>> @@ -748,7 +748,7 @@
>>
>>       switch (placement) {
>>       case GNOME_BG_PLACEMENT_SPANNED:
>> -                new = pixbuf_scale_to_fit (pixbuf, width, height);
>> +                new = pixbuf_scale_to_min (pixbuf, width, height);
>>               break;
>>       case GNOME_BG_PLACEMENT_ZOOMED:
>>               new = pixbuf_scale_to_min (pixbuf, width, height);
>                        ^^^^^^^^^^^^^^^^^^^
> See? In zoom style it already behaves as you want it to.

No, there is code elsewhere in the file that guarantees that these two
cases do not produce the same results when my patch is applied. Try it
out; don't just assume that you know what will happen.

-- 
Thomas E. Vaughan

"For not everything does have a final cause, given the existence of
chance events. What Aquinas actually says, as we have seen, is that
every *agent* has a final cause; that is to say, that everything that
serves as an efficient cause points to or is directed at some specific
effect or range of effects as its natural end."

(From _Aquinas: A Beginner's Guide_ by Edward Feser)






More information about the pkg-gnome-maintainers mailing list