Sprite transforms in RandR

Keith Packard keithp at keithp.com
Sat Dec 4 15:06:35 PST 2010


To make per-crtc pixmaps actually useful for things like extended or
rotated desktops, I've added a couple of matrices to each crtc to
transform the sprite position and image. I suspect these will need
documentation beyond the following:

+┌───
+    RRSetCrtcSpriteTransform
+       crtc: CRTC
+       position-transform: TRANSFORM
+       image-transform: TRANSFORM
+└───
+       Sets the sprite transforms for the specified crtc, any sprites
+       presented on this crtc will have their positions transformed
+       by the position-transform matrix. Sprite images displayed on the crtc
+       will be transformed by the image-transform matrix.
+
+┌───
+    RRGetCrtcSpriteTransform
+       crtc: CRTC
+      ▶
+       position-transform: TRANSFORM
+       image-transform: TRANSFORM
+└───
+       Gets the sprite transforms for the specified crtc.
+

In any case, the position piece of this is complete, and the image piece
is done save the actual image transforms -- the matrix gets all the way
From the client to the cursor code.

Protocol changes:

        git://people.freedesktop.org/~keithp/randrproto master

Library changes:

        git://people.freedesktop.org/~keithp/libXrandr master

xrandr changes:

        git://people.freedesktop.org/~keithp/xrandr master

xserver changes:

        git://people.freedesktop.org/~keithp/xserver randr-1.4-subwork

This also includes all of the protocol and library bits for the rest of
the proposed RandR changes, but the server implementation hasn't been
merged to this branch yet.

On to the per-crtc pixmap and setcrtcconfigs pieces. Hoping to have this
merged over today.

-- 
keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20101204/8fa1abc8/attachment.pgp>


More information about the xorg-devel mailing list