[PATCH 00/15] weston scaling support

Bill Spitzak spitzak at gmail.com
Thu May 30 07:47:11 PDT 2013


On 05/30/2013 12:42 AM, Alexander Larsson wrote:

>> The compositor will produce regions that are not integers in surface
>> space. For instance the damage from an overlapping window atop a surface
>> who's scale is not an integer will produce a region that is fractional
>> in that lower surface's space.
>
> Damage from clients is in surface space, which will be in integer
> fraction of the output space. Its true that it may be a fractional
> coordinate of the buffer space of a window below it, but it will be an
> integer coordinate in both windows *surface* space and the output space.
> So, you can clip the output drawing to integer coordinates (well, you
> have to, can't draw half an output pixel) and let the actual scaling to
> fractional coordinates happen purely in the implementation of the
> drawing operation.

I recommend that damage from clients be in "drawing space", since they 
are probably closely related to the drawing code anyway. This has the 
advantage that integers always mean buffer pixels and you can get any 
integer location in the buffer.

What I was talking about is damage in the compositor from an overlapping 
rectangle of another surface. This is not going to be an integer in 
either surface space or buffer space.




More information about the wayland-devel mailing list