Index: stickynotes/stickynotes.c
===================================================================
RCS file: /cvs/gnome/gnome-applets/stickynotes/stickynotes.c,v
retrieving revision 1.68
diff -u -b -B -r1.68 stickynotes.c
--- stickynotes/stickynotes.c	21 Dec 2005 16:43:17 -0000	1.68
+++ stickynotes/stickynotes.c	26 Dec 2005 18:03:44 -0000
@@ -167,6 +167,8 @@
 	stickynote_set_locked(note, FALSE);
 
 	gtk_widget_realize (note->w_window);
+        /* Make the note semi-transparent */
+        stickynote_set_transparent(note);
 
 	/* gnome_popup_menu_*() are deprecated. Rewrite to use gtk_menu_popup_*()? */
 	/* Connect a popup menu to all buttons and title */
@@ -600,6 +602,30 @@
 				   x, y, width, height);
 		gtk_window_iconify(GTK_WINDOW (note->w_window));
 	}
+}
+
+#define COMPOSITE_OPAQUE 0xffffffff
+#define COMPOSITE_OPACITY_PROP "_NET_WM_WINDOW_OPACITY"
+#define STICKYNOTE_OPACITY 0.75
+
+void
+stickynote_set_transparent (StickyNote *note)
+{
+        unsigned int opacity = 0;
+        Display *dpy = NULL;
+
+        g_return_if_fail (note != NULL);
+        g_return_if_fail (note->w_window != NULL);
+        g_return_if_fail (GTK_IS_WINDOW(note->w_window));
+
+        opacity = (unsigned int) (STICKYNOTE_OPACITY * COMPOSITE_OPAQUE);
+
+        dpy = gdk_x11_drawable_get_xdisplay (GDK_WINDOW(GTK_WIDGET(note->w_window)->window));
+        g_return_if_fail (dpy != NULL);
+
+        g_debug ("Setting note window XComposite opacity to %u", opacity);
+        XChangeProperty (dpy, GDK_WINDOW_XWINDOW(GDK_WINDOW(GTK_WIDGET(note->w_window)->window)), XInternAtom (dpy, COMPOSITE_OPACITY_PROP, False),  XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &opacity, 1L);
+        XSync (dpy, False);
 }
 
 /* Add a sticky note */
Index: stickynotes/stickynotes.h
===================================================================
RCS file: /cvs/gnome/gnome-applets/stickynotes/stickynotes.h,v
retrieving revision 1.17
diff -u -b -B -r1.17 stickynotes.h
--- stickynotes/stickynotes.h	9 Jan 2005 15:42:42 -0000	1.17
+++ stickynotes/stickynotes.h	26 Dec 2005 18:03:44 -0000
@@ -81,6 +81,7 @@
 void stickynote_set_font(StickyNote *note, const gchar* font_str, gboolean save);
 void stickynote_set_locked(StickyNote *note, gboolean locked);
 void stickynote_set_visible(StickyNote *note, gboolean visible);
+void stickynote_set_transparent(StickyNote *win);
 
 void stickynote_change_properties(StickyNote *note);
 
