[maemo-commits] [maemo-commits] r10506 - in projects/haf/trunk/sapwood: . src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Fri Mar 9 18:20:36 EET 2007
Author: tko
Date: 2007-03-09 18:20:35 +0200 (Fri, 09 Mar 2007)
New Revision: 10506

Added:
   projects/haf/trunk/sapwood/HACKING
Removed:
   projects/haf/trunk/sapwood/NEWS.pixbuf
   projects/haf/trunk/sapwood/src/ChangeLog
   projects/haf/trunk/sapwood/src/README.pixbuf
   projects/haf/trunk/sapwood/src/README.server
Modified:
   projects/haf/trunk/sapwood/AUTHORS
   projects/haf/trunk/sapwood/ChangeLog
Log:
Clean up and remove obsolete documentation. Document the internals.

2007-03-09  Tommi Komulainen  <tommi.komulainen at nokia.com>

	* AUTHORS
	* NEWS.pixbuf
	* src/ChangeLog
	* src/README.pixbuf
	* src/README.server: clean up and remove obsolete documentation
	* HACKING: add documentation about the internals


Modified: projects/haf/trunk/sapwood/AUTHORS
===================================================================
--- projects/haf/trunk/sapwood/AUTHORS	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/AUTHORS	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,3 +1,8 @@
+sapwood
+-------
+Tommi Komulainen <tommi.komulainen at nokia.com>
+
+pixmap/pixbuf
+-------------
 The Rasterman <raster at redhat.com>
 Owen Taylor <otaylor at redhat.com>
-Tommi Komulainen <tommi.komulainen at nokia.com>

Modified: projects/haf/trunk/sapwood/ChangeLog
===================================================================
--- projects/haf/trunk/sapwood/ChangeLog	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/ChangeLog	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,3 +1,12 @@
+2007-03-09  Tommi Komulainen  <tommi.komulainen at nokia.com>
+
+	* AUTHORS
+	* NEWS.pixbuf
+	* src/ChangeLog
+	* src/README.pixbuf
+	* src/README.server: clean up and remove obsolete documentation
+	* HACKING: add documentation about the internals
+
 2007-03-08  Tommi Komulainen  <tommi.komulainen at nokia.com>
 
 	* README: replace with more detailed and relevant information

Added: projects/haf/trunk/sapwood/HACKING
===================================================================
--- projects/haf/trunk/sapwood/HACKING	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/HACKING	2007-03-09 16:20:35 UTC (rev 10506)
@@ -0,0 +1,347 @@
+Subversion
+==========
+ svn co https://stage.maemo.org/svn/maemo/projects/haf/trunk/sapwood
+ cd sapwood
+ ./autogen.sh
+ make
+ [ become root ]
+ make install
+
+
+Bugs
+====
+Please report bugs to maemo.org bugzilla:
+https://maemo.org/bugzilla/enter_bug.cgi?product=haf&component=sapwood
+
+
+Patches
+=======
+Please send patches to maemo.org bugzilla:
+https://maemo.org/bugzilla/enter_bug.cgi?product=haf&component=sapwood
+
+To make patch review process as smooth as possible, please follow the
+following guidelines. It'll help avoid unnecessary roundtrips.
+
+* Follow the existing (GNU) coding style.
+* Prepare patches with equivalent of 'diff -up' preferrably against the
+  latest trunk, for example:
+
+   svn diff -x -up
+
+  http://www.xenomai.org/index.php/Teaching_-p_to_svn_diff
+
+* Prepare a ChangeLog entry for every change. Include all modified files,
+  functions, variables, structs, etc. in the ChangeLog entry.
+* Attach the patch in bugzilla and include the ChangeLog entry as attachment
+  comment.
+
+
+Files
+=====
+
+sapwood-main.c
+--------------
+theme engine module entry points
+
+sapwood-rc-style.h
+sapwood-rc-style.c
+------------------
+GtkRcStyle method implementations, gtkrc parser
+
+sapwood-style.h
+sapwood-draw.c
+--------------
+GtkStyle declarations and method implementations
+
+theme-pixbuf.h
+--------------
+structs and enumerations, ThemePixbuf declarations
+
+sapwood-render.c
+----------------
+ThemePixbuf implementation
+
+sapwood-pixmap.h
+sapwood-pixmap.c
+----------------
+client side protocol implementation and pixmap handling
+
+sapwood-proto.h
+sapwood-proto.c
+---------------
+socket path
+
+sapwood-server.c
+----------------
+pixmap server implementation
+
+
+Basic flow
+==========
+Below is a typical control flow for the theme engine calls displayed as a sort
+of stack trace. [Square brackets] indicate a jump to different library or
+source file, indentation indicates the stack depth, the symbols are function
+names.
+
+
+libsapwood.so                                                   sapwood-server
+-----------------------------------------------------------------------------------------------------
+[gtk]              gtk_paint_box
+[sapwood-draw.c]     draw_box
+                       draw_simple_image
+                         match_theme_image
+[sapwood-render.c]       theme_pixbuf_render
+                           theme_pixbuf_get_geometry
+                           | theme_pixbuf_get_pixmap
+                           |   pixmap_cache_value_new (GCache)
+[sapwood-pixmap.c]         |     sapwood_pixmap_get_for_file
+                           |       pixbuf_proto_request ------> client_sock_callback
+                           |                                      process_buffer
+                           |                                        pixbuf_open_response_new (GCache)
+                           |                                          gdk_pixbuf_new_from_file
+                           |                                          extract_pixmaps
+                           |                                            extract_pixmap_single
+                           |                                              gdk_pixmap_new
+                           |                            <------     write
+                           | sapwood_pixmap_get_geometry
+                           sapwood_pixmap_render_rects
+[gdk]                        gdk_draw_rectangle
+
+
+
+Data structures
+===============
+Below is a rough mapping between gtkrc declarations and theme engine data
+structures. See theme-pixbuf.h for details.
+
+gtkrc                              data structures
+--------------------------------------------------------------------------------
+engine "sapwood" {                 SapwoodRcStyle {
+  image { ... }                      img_list : GList* /* list of ThemeImages */
+
+  image {                            ThemeImage {
+                                       match_data : ThemeMatchData {
+    function = BOX                       function : guint16 /* mandatory */
+    state = NORMAL                       state : GtkStateType
+    detail = "buttondefault"             detail : char*
+    shadow = NONE                        shadow : GtkShadowType
+    gap_side = TOP                       gap_side : GtkPositionType
+    arrow_direction = UP                 arrow_direction : GtkArrowType
+    orientation VERTICAL                 orientation : GtkOrientation
+    position = UP, LEFT, DOWN            position : ThemePositionFlags
+
+                                         /* bitmask, which of the above are set */
+                                         flags : ThemeMatchFlags
+                                       }
+
+    shaped = FALSE                     background_shaped : boolean
+    
+                                       background : ThemePixbuf {
+    file = "image.png"                   dirname, basename : char*
+    border = { 2, 2, 0, 0 }              border_{left,right,top,bottom} : guint8
+    stretch = TRUE                       stretch : boolean
+
+                                         /* pointer to 3x3 image grid */
+                                         pixmap : SapwoodPixmap*
+
+                                         /* reference count */
+                                         refcnt : guint
+                                       }
+                                       overlay : ThemePixbuf {
+    overlay_file
+    overlay_border                       [as above]
+    overlay_stretch
+                                       }
+                                       gap_start : ThemePixbuf {
+    gap_start_file
+    gap_start_border                     [as above]
+    gap_start_stretch
+                                       }
+                                       gap : ThemePixbuf {
+    gap_file
+    gap_border                           [as above]
+    gap_stretch
+                                       }
+                                       gap_end : ThemePixbuf {
+    gap_end_file
+    gap_end_border                       [as above]
+    gap_end_stretch
+                                       }
+
+                                       /* reference count */
+                                       refcount : guint
+  }                                  }
+}                                  }
+--------------------------------------------------------------------------------
+
+
+TOKEN_*
+-------
+Parser tokens. Be mindful of changing the values of the tokens as changes will
+invalidate existing 'gtkrc.cache' files causing strange effects.
+
+
+ThemePixbuf		( gtkrc: file = "..." border = { ... } stretch = ... )
+-----------
+Reference counted reference to a single image file. There are around 500
+images used in maemo themes, quarks and bitfields are used to reduce memory
+consumption.  Always holds the image filenames, the images themselves are
+loaded on demand.
+
+
+ThemeMatchData		( gtkrc: function = ... state = ... )
+--------------
+Set of rules used for finding the right image to match the painting commands.  
+
+
+ThemeImage		( gtkrc: image { ... } )
+----------
+Reference counted, holds references to background, overlay and gap images.
+
+
+SapwoodPixmap
+-------------
+Struct holding the pixmap information from the server, including the 3x3 grid
+of images (see README) and their corresponding bitmasks. The structs are
+cached with GCache so each client gets only single reference from the server.
+
+
+Rationales
+==========
+The goals for sapwood is to support bitmap based theming with acceptable
+performance and memory consumption. The pixbuf engine sapwood is based on
+supports bitmap based theming as well, but has performance problems and
+is wasting memory.
+
+
+Performance
+-----------
+To improve performance all images are converted to display format (565 RGB)
+once and X core commands are used when painting. The assumption is that X
+server is suitable optimized for these operations. Use of pixmaps loses the
+ability to do gradients or 8bit alpha, but improves performance. (Using X
+Render extension with 24/32 bit RGB(A) images should be straightforward and
+enable 8bit alpha, scaling, and possibly gradients, with some loss of
+performance.)
+
+
+Memory
+------
+To reduce memory consumption all images are loaded in memory only once and
+reference counted between clients. A central server process (sapwood-server)
+is owning the pixmaps and is responsible for handling the reference counting.
+
+Client/server
+~~~~~~~~~~~~~
+A separate server process was chosen for simplicity. While it adds one more
+process, it is conceptually much more simple than any distributed reference
+counting mechanism.
+
+For simplicity reasons also, the server is not automatically started (similar
+to GConf daemon) as it would introduce new error conditions and complicate
+startup sequence with possible race conditions.
+
+The communication between client and server is (abstract) UNIX sockets, for
+simplicity and reliability. D-Bus would be overkill, X client messages,
+property changes, and selection owners are limited and/or complicated to use
+properly. X based mechanisms and POSIX message queues do not appear to have
+'client disconnected' notification which is important for releasing the
+references when the client exits, possibly uncleanly. Abstract UNIX sockets
+do not need to be manually removed from the file system.
+
+The server listens to UNIX socket in "$TMPDIR/sapwood-$DISPLAY"
+(g_get_tmp_dir() and gdk_display_get_name()) The protocol between client and
+server is as follows, see sapwood-proto.h
+
+PixbufOpenRequest:
+  C -> S:
+    guint8  op;                   /* == PIXBUF_OP_OPEN (1) */
+    guint8  _pad1;
+    guint16 length;               /* == sizeof(PixbufOpenRequest) + strlen(filename) + 1 */
+  
+    guint8  border_left;          /* border values from gtkrc */
+    guint8  border_right;
+    guint8  border_top;
+    guint8  border_bottom;
+    guchar  filename[0];          /* null terminated, absolute filename */
+  
+  S -> C:
+    guint32 id;                   /* id for closing the pixbuf */
+    guint16 width;                /* image dimensions */
+    guint16 height;
+    guint32 pixmap[3][3];         /* XIDs for pixmaps and masks for each part */
+    guint32 pixmask[3][3];        /* 0 if not applicable (full opacity)       */
+  
+    on error:
+     char dummy;                  /* == '-' */
+
+PixbufCloseRequest:
+  C -> S:
+    guint8  op;                   /* == PIXBUF_OP_CLOSE (2) */
+    guint8  _pad1;
+    guint16 length;               /* == sizeof(PixbufCloseRequest) */
+  
+    guint32 id;                   /* the id as returned for PixbufOpenRequest */
+
+  No reply.
+
+
+Caching
+~~~~~~~
+For reference counting some caching mechanism is neeed, and GCache seemed to
+fit the bill and save the trouble of doing it manually. In hindsight GCache
+has slightly strange semantics and may be obscuring the implementation
+somewhat.
+
+GDK + XSHM
+~~~~~~~~~~
+sapwood-server (when started with the maemo specific startup script) disables
+XSHM use in gdk, which saves around 100kB RAM. As the pixmap data is
+transferred only once from the sapwood-server to the X server, this has little
+impact on performance.
+
+This is dependent on a minor modification to gdk:
+
+diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
+index fd48807..3f56025 100644
+--- a/gdk/x11/gdkdisplay-x11.c
++++ b/gdk/x11/gdkdisplay-x11.c
+@@ -149,7 +149,7 @@ gdk_display_open (const gchar *display_name)
+   display = g_object_new (GDK_TYPE_DISPLAY_X11, NULL);
+   display_x11 = GDK_DISPLAY_X11 (display);
+ 
+-  display_x11->use_xshm = TRUE;
++  display_x11->use_xshm = g_getenv ("GDK_DISABLE_XSHM") == NULL;
+   display_x11->xdisplay = xdisplay;
+ 
+ #ifdef HAVE_X11R6  
+
+
+background_shaped
+-----------------
+When we know the theme does not use shaped bitmaps for menus or windows, we
+can avoid preparing and setting the window shape mask completely. This is a
+minor improvement at the expense of bad painting artefacts when the images do
+not have alpha channel but gtkrc has shaped=TRUE. The need for explicit flag
+could be removed by checking whether the SapwoodPixmap has masks.
+
+
+Limitations
+===========
+* No support for multiple displays. Currently the assumption of single display is
+  spread in many places on the client side. In order to support multiple
+  displays GdkDisplay needs to passed around the caching scheme all the way to
+  the UNIX socket path handling.
+* Widgets using different visual/colormaps will receive BadMatch when painted.
+  Due to the way X works and the pixmaps are handled, fixing this does not
+  seem wortwhile.
+  https://maemo.org/bugzilla/show_bug.cgi?id=179
+* Caching is based on absolute filenames. If a file is updated on disk it is
+  not reloaded until after all references to it (in sapwood-server) are
+  removed.
+
+
+Future work
+===========
+* Support 8bit alpha. Should be straightforward to implement, though means
+  touching virtually all pixmap handling parts.

Deleted: projects/haf/trunk/sapwood/NEWS.pixbuf
===================================================================
--- projects/haf/trunk/sapwood/NEWS.pixbuf	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/NEWS.pixbuf	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,8 +0,0 @@
-Overview of Changes in 2.2.0 (since 1.9.0)
-==========================================
-* Add a .pc file [Seth Nickell]
-* Various crash fixes [Luca Barbato, Hongli Lai, 
-  Shivaram Upadhyayula, Peter Zelezny)
-* Build fixes [Havoc Pennington]
-* Metal theme drawing improvements [Owen Taylor]
-* Improve installation docs [Owen, Piotr Sawuk]

Deleted: projects/haf/trunk/sapwood/src/ChangeLog
===================================================================
--- projects/haf/trunk/sapwood/src/ChangeLog	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/src/ChangeLog	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,252 +0,0 @@
-Fri Sep  6 20:32:45 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-draw.c: Account for the possibility of detail == NULL
-	(#89561, Hongli Lai, Luca Barbato)
-
-Sun Apr 21 14:10:04 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-rc-style.c pixbuf.h pixbuf-draw.c: Add a fake STEPPER
-	function that is used for drawing scrollbar steppers,
-	so that themes that want to draw the button and arrow
-	separately can override the default handling.
-
-	* pixbuf-draw.c: Remove draw_polygon() since it was
-	just a cut-and-paste of the default one. Remove
-	some unused code.
-
-2002-03-07  James Henstridge  <james at daa.com.au>
-
-	* Makefile.am (libpixmap_la_LIBADD): link pixbuf engine against
-	the gtk+ libraries, so that it can be used with programs that
-	dlopen gtk+ without the RTLD_GLOBAL flag (such as scripting
-	languages and mozilla).
-
-Thu Feb  7 00:21:21 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-render.c (pixbuf_render): Add gradient
-	rendering -- if the source width/height is zero,
-	render a gradient from the surrounding values.
-
-Mon Jan 28 15:34:43 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-render.c (compute_hint): Fix hint computation
-	again.
-
-Mon Jan 28 12:17:07 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-render.c (compute_hint): Fix problems in computing
-	MISSING hint.
-
-Sun Jan 27 23:58:13 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* pixbuf-render.c (compute_hint): Optimize the case
-	where a component is entirely transparent by skipping
-	drawing it.
-
-	* pixbuf-rc-style.c (theme_parse_image): Catch case
-	where background or overlay border/stretch are specified
-	without a background image.
-
-	* pixbuf-render.c (theme_pixbuf_destroy): Actually free
-	the structure and filename.
-
-=================== Move back into gtk-engines ====================
-	
-Sat Jan 19 02:45:17 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* src/pixbuf-render.c (theme_pixbuf_compute_hints): Catch
-	invalid borders, and warn.
-
-Sat Jan 19 00:32:14 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* examples/*: Add an extrodinarily ugly example.
-
-	* src/pixbuf-draw.c (draw_simple_image): Never shape
-	the window, even if we are allowed to. Shaping is
-	ugly -- if the widget isn't NO_WINDOW (most are),
-	you'll just have to draw it rectangular.
-
-	* src/pixbuf-render.c (pixbuf_render): Always use
-	gdk_pixbuf_render_alpha() with FULL_ALPHA() as the
-	type.
-
-	* pixbuf.h src/pixbuf-render.c (theme_pixbuf_compute_hints): To
-	speed up scaling, cache whether pixbufs have constant rows
-	or constant columns.
-
-	* src/pixbuf-render.c (pixbuf_render): Speed up scaling
-	by using the hints from compute_hints().
-
-Fri Jan 18 20:49:48 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in: Use pkg-config to get the binray version
-	of GTK+ that we use for an install path.
-
-Fri Jan 18 18:14:11 2002  Owen Taylor  <otaylor at redhat.com>
-
-	* src/pixbuf-draw.c (draw_focus): Fix for changes to draw_focus.
-
-2001-09-21  Hans Breuer  <hans at breuer.org>
-
-	* src/pixbuf-rc-style-c :  GtkRcStyle::parse has a GtkSettings
-	parameter now. Pass it through theme_parse_file () to use it
-	gtk_rc_find_pixmap_in_path ()
-
-	* src/pixbuf-draw.c : the font field from GtkStyle is private
-	now, use accessor gtk_style_get_font ()
-
-	* makefile.msc : compile on win32, use it if you have a _real_
-	fast computer or want to see gtk in slow motion :-)
-
-Thu May  3 05:36:06 2001  Owen Taylor  <otaylor at redhat.com>
-
-        * pixbuf.h: Fix trailing comma on enumeration. (#54071)
-
-2001-03-05  Michael Natterer  <mitch at gimp.org>
-
-	* src/pixbuf-draw.c: made the "parent_class" pointer static.
-
-	(Owen, I just commented out the draw methods which don't exist any
-	more to make it compile).
-
-2001-02-20  Sven Neumann  <sven at convergence.de>
-
-	* src/pixbuf-draw.c (draw_vline): use draw_vline method of 
-	parent_class, not draw_hline
-
-Wed Nov 15 21:56:28 2000  Owen Taylor  <otaylor at redhat.com>
-
-	* src/pixbuf-*: A few updates for GTypePlugin.
-
-Tue Jul 18 12:13:19 2000  Owen Taylor  <otaylor at redhat.com>
-
-        Updates to work with GTK+-2.0 theme engine architecture.
-	It won't even sort of work with GTK+-1.2 any more.
-
-	* configure.in src/Makefile.am: Look for GTK+-2.0, 
-	install engine into GTK+-2.0 location.
-	
-	* src/pixbuf-style.h src/pixbuf-rc-style.[ch]: New
-	files for GtkRcStyle and GtkStyle subclasses. Parsing,
-	etc, moves to pixbuf-rc-style.[ch]
-
-	* src/pixbuf-draw.c: Chain up to parent implementation
-	when images aren't found for a certain element.
-
-Sun Jul  9 18:15:58 2000  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in (ACLOCAL): Add -Wall for gcc.
-
-	* src/pixbuf-render.c (pixbuf_render): Fix problem
-	using gdk_rectangle_intersect() from GTK+-1.2.
-
-	* src/pixbuf-render.c src/pixbuf-draw.c: Remove 
-	direct access to pixbuf internals.
-
-Mon Mar  6 11:44:58 2000  Owen Taylor  <otaylor at redhat.com>
-
-        * docs/gap-geometry.fig: Moved into docs/ subdir
-	
-        * Makefile.am configure.in autogen.sh src/Makefile.am: 
-	automakify
-	 
-	* src/pixbuf.h src/pixbuf-render.c src/pixbuf-draw.c
-	src/pixbuf-main.c: Move sources into subdir and
-	rename.
-
-Mon Mar  6 11:02:07 2000  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_pixbuf.c: Handle drawing transparency without a
-	mask correctly.
-
-	* pixmap_theme_main.c pixmap_theme_draw.c: Remove duplicate
-	includes.
-	
-Sun Feb  6 21:34:30 2000  Owen Taylor  <otaylor at redhat.com>
-
-	* Started ChangeLog for pixbuf engine, check sources
-	into CVS.
-
-========== ChangeLog for pixmap engine ===================
-
-1999-11-22  Martin Baulig  <martin at home-of-linux.org>
-
-	* pixmap_theme_main.c (theme_duplicate_style): Really copy the
-	`src_data->img_list', not just the pointer that points to it.
-
-Tue Oct  5 15:13:29 1999  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_draw.c (apply_theme_image): Don't set
-	background pixmap on pixmaps.
-
-1999-02-14  Raja R Harinath  <harinath at cs.umn.edu>
-
-	* Theme/gtk/Makefile.am.in (Makefile.am): Handle the case when
-	files are deleted.
-
-Thu Feb 11 21:16:53 1999  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_main.c (theme_data_unref): Free the
-	theme data structure as well as the contents.
-
-1999-02-03  Raja R Harinath  <harinath at cs.umn.edu>
-
-	* Theme/gtk/Makefile.am.in: New file.  Theme/gtk/Makefile.am is
-	generated from this file when new *.png files are added.
-
-1999-01-23  Miguel de Icaza  <miguel at nuclecu.unam.mx>
-
-	* pixmap_theme_main.c (theme_init): Turn on pixmap cache. 
-
-Mon Jan 18 13:37:23 1999  Owen Taylor  <otaylor at redhat.com>
-
-	* Theme/gtk/gtkrc: Give buttons a gray background
-	color so they look a little less funny when initially
-	drawing.
-
-Wed Jan 13 18:58:25 1999  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_draw.c: Fixed pervasive mis-bracketing
-	that was causing drawing if the drawn region and
-	clipping region did NOT intersect, and a couple
-	of errors in computing source and destination 
-	regions.
-
-1998-11-09  Federico Mena Quintero  <federico at nuclecu.unam.mx>
-
-	* pixmap_theme_draw.c: #include <math.h>
-
-1998-11-07  Raja R Harinath  <harinath at cs.umn.edu>
-
-	* Theme/gtk/Makefile.am (theme_DATA): 
-	Update to new directory contents.
-	* configure.in: Remove.
-
-Fri Nov  6 17:26:12 1998  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_main.c: Removed some debugging 
-	printf's. 
-
-	* Theme/gtk/notebook1.c Theme/gtk/menubar.png: new
-	bigger pixmaps to reduce pixelation.
-
-	* Theme/gtk/gtkrc: Reorganized to use several styles
-	instead of one huge style. Change clist backgrounds
-	to be prettier.
-
-Thu Nov  5 10:23:46 1998  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_draw.c (draw_shadow_gap): Fixed hard-coded
-	gap_side of '0'.
-
-Mon Nov  2 14:46:02 1998  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_draw.c (apply_theme_image_shadow_gap): Removed
-	several hundred lines of duplicated code with a bit of
-	reoriganization.
-
-Wed Oct 28 16:18:04 1998  Owen Taylor  <otaylor at redhat.com>
-
-	* pixmap_theme_main.c (theme_symbols): Removed lots
-	and lots of white space.
-

Deleted: projects/haf/trunk/sapwood/src/README.pixbuf
===================================================================
--- projects/haf/trunk/sapwood/src/README.pixbuf	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/src/README.pixbuf	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,17 +0,0 @@
-The code in this directory is a GTK+ theme engine based on the earlier
-pixmap theme engine.
-
-The config files are meant to be compatible, but instead of rendering
-using Imlib, it renders using GdkPixbuf.  This makes the memory
-management much more understandable, and also allows us to use
-GdkPixbuf's high quality scaling.
-
-Most of the code was reworked/rewritten in the process to make it more
-understandable and maintainable.
-
-There are lots of bugs here, a considersable number of bugs. But it's
-cleaned up a great deal from the older pixmap engine. Please don't
-make it uglier again.
-
-Owen Taylor <otaylor at redhat.com>
-6 February 2000
\ No newline at end of file

Deleted: projects/haf/trunk/sapwood/src/README.server
===================================================================
--- projects/haf/trunk/sapwood/src/README.server	2007-03-09 16:19:02 UTC (rev 10505)
+++ projects/haf/trunk/sapwood/src/README.server	2007-03-09 16:20:35 UTC (rev 10506)
@@ -1,22 +0,0 @@
-Protocol
-========
-
-Server listens to unix socket in "$TMPDIR/sapwood-$DISPLAY"
-(g_get_tmp_dir() and gdk_display_get_name ())
-
-C -> S: 
-  guint8  border_left;
-  guint8  border_right;
-  guint8  border_top;
-  guint8  border_bottom;
-  guchar  filename[0];          /* null terminated, absolute filename */
-
-S -> C:
-  guint16 width;
-  guint16 height;
-  guint32 pixmap[3][3];         /* XIDs for pixmaps and masks for each part */
-  guint32 pixmask[3][3];        /* 0 if not applicable (full opacity)       */
-
-  on error:
-   char dummy;                  /* == '-' */
-


More information about the maemo-commits mailing list