summaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
authorSoren Sandmann Pedersen <ssp@dhcp83-218.boston.redhat.com>2007-05-18 13:38:26 -0400
committerSoren Sandmann Pedersen <ssp@dhcp83-218.boston.redhat.com>2007-05-18 13:38:26 -0400
commite1328980457ce6f51ce2649d79feefa616408ce9 (patch)
treea46c7a34a0f326b8a12d298a569deceedc52c98a /TODO
parente12ca669af9143581c4af4c8c885273fc6b12c2d (diff)
Make pixman_image_set_indexed() not copy its argument
Diffstat (limited to 'TODO')
-rw-r--r--TODO32
1 files changed, 30 insertions, 2 deletions
diff --git a/TODO b/TODO
index 20b559d..55746c6 100644
--- a/TODO
+++ b/TODO
@@ -6,6 +6,36 @@
- Go through things marked FIXME
+ - Test if pseudo color still works. It does, but it also shows that
+ copying a pixman_indexed_t on every composite operation is not
+ going to fly. So, for now set_indexed() does not copy the
+ indexed table.
+
+ Also just the malloc() to allocate a pixman image shows up pretty
+ high.
+
+ Options include
+
+ - Make all the setters not copy their arguments
+
+ - Possibly combined with going back to the stack allocated
+ approach that we already use for regions.
+
+ - Keep a cached pixman_image_t around for every picture. It would
+ have to be kept uptodate every time something changes about the
+ picture.
+
+ - Break the X server ABI and simply have the releveant parameter
+ stored in the pixman image. This would have the additional benefits
+ that:
+
+ - We can get rid of the annoying repeat field which is duplicated
+ elsewhere.
+
+ - We can use pixman_color_t and pixman_gradient_stop_t
+ etc. instead of the types that are defined in
+ renderproto.h
+
- Reinstate the FbBits conditional typedef? At the moment we don't
even have the FbBits type; we just use uint32_t everywhere.
@@ -16,5 +46,3 @@
doing things 64-bits at a time is a net loss. To quickly fix
this, I suggest just using 32-bit datatypes by setting
IC_SHIFT to 5 for all machines.
-
- - Test if pseudo color still works