[PATCH 2/2] damageext: Xineramify (v4)

Aaron Plattner aplattner at nvidia.com
Wed Oct 9 14:54:28 PDT 2013


On 10/09/2013 09:56 AM, Aaron Plattner wrote:
> On 10/09/2013 09:29 AM, Adam Jackson wrote:
>> On Tue, 2013-10-08 at 16:43 -0700, Aaron Plattner wrote:
>>> On 10/08/2013 03:28 PM, Aaron Plattner wrote:
>>
>>> Never mind, it looks like this still isn't properly translating the
>>> damage by the root window's position.  Was it intentional that v3 of the
>>> patch dropped the "Properly translate coordinates for window reports in
>>> Xinerama mode" part of v2?
>>
>> I hadn't thought I'd need it, since I hadn't considered the origin not
>> being at +0+0 to be a thing people would do.  Easy enough to revive
>> though.
>
> Well, the physical X screen 1 is at +2560+0.  The reported position of
> damage to the root window resets to (0, 0) as soon as the damage crosses
> from physical screen 0 to physical screen 1, but that damage is
> occurring at (2560, 0) w.r.t. the logical root window as far as clients
> are concerned.
>
>>> Also, the initial damage doesn't cover the whole Xineramified root window:
>>>
>>> $ xdpyinfo | grep dimensions
>>>      dimensions:    4480x1440 pixels (1222x385 millimeters)
>>> $ ./rootdamage
>>> Damage 2560x1440 @ (0, 0)
>>
>> Which tree are you testing against?  In particular, do you also have:
>>
>> commit 7d3d4ae55dd6ee338439e2424ac423b1df80501b
>> Author: Keith Packard <keithp at keithp.com>
>> Date:   Fri Sep 20 14:43:41 2013 -0500
>>
>>       damage: Must translate initial window damage by window offset
>
> Yes, I'm testing with "dix: Add PostDispatchCallback" and "damageext:
> Xineramify (v4)" applied to commit 6a9bd103cb993e873cb82664b677ceed73c0bd85.
>
> I don't *think* our driver is messing up the root window positions
> somehow, but I'll try testing with a different driver.

I verified that the same broken behavior reproduces with nouveau's 
ZaphodHeads option.

Moving an xlogo to the right side of the leftmost screen:

   Damage 104x129 @ (1170, 4)

Moving the same xlogo a few pixels to the right, so it's at the left 
side of the rightmost screen:

   Damage 104x129 @ (5, 8)

-- 
Aaron


More information about the xorg-devel mailing list