pixman: Branch 'master'

Søren Sandmann Pedersen sandmann at kemper.freedesktop.org
Fri Feb 29 15:48:29 PST 2008


 TODO |   32 +++++++++++++++++++++++++++++++-
 1 file changed, 31 insertions(+), 1 deletion(-)

New commits:
commit 476f10237e432321d7f456b4df9fd206b78d8827
Author: Søren Sandmann <sandmann at redhat.com>
Date:   Fri Feb 29 18:32:44 2008 -0500

    Update TODO

diff --git a/TODO b/TODO
index 2c3c150..184f823 100644
--- a/TODO
+++ b/TODO
@@ -1,3 +1,26 @@
+  - Things to keep in mind if breaking ABI:
+
+      - There should be a guard #ifndef I_AM_EITHER_CAIRO_OR_THE_X_SERVER
+
+      - X server will require 16.16 essentially forever. Can we get
+        the required precision by simply adding offset_x/y to the
+        relevant rendering API?
+
+      - pixman_image_set_indexed() should copy its argument, and X
+        should be ported over to use a pixman_image as the
+        representation of a Picture, rather than creating one on each
+        operation.
+
+      - We should get rid of pixman_set_static_pointers()
+
+      - We should get rid of the various trapezoid helper functions().
+        (They only exist because they are theoretically available to
+        drivers).
+
+      - Regions should become 32 bit
+
+      - There should only be one trap rasterization API.
+
   - Make pixman_region_point_in() survive a NULL box, then fix up
     pixman-compose.c
 
@@ -33,7 +56,7 @@
         IC_SHIFT to 5 for all machines.
 
   - Consider whether calling regions region16 is really such a great
-    idea Vlad wants 32 bit regions for Cairo. This will break X server
+    idea. Vlad wants 32 bit regions for Cairo. This will break X server
     ABI, but should otherwise be mostly harmless, though a
     pixman_region_get_boxes16() may be useful.
 
@@ -43,6 +66,13 @@
   - Add an image cache to prevent excessive malloc/free. Note that pixman
     needs to be thread safe when used from cairo.
 
+  - Moving to 24.8 coordinates. This is tricky because X is still
+    defined as 16.16 and will be basically forever. It's possible we
+    could do this by adding extra offset_x/y parameters to the
+    trapezoid calls. The X server could then just call the API with
+    (0, 0). Cairo would have to make sure that the delta *within* a
+    batch of trapezoids does not exceed 16 bit.
+
   - Review the pixman_format_code_t enum to make sure it will support
     future formats. Some formats we will probably need:
 


More information about the xorg-commit mailing list