[SM-Commit] GIT changes to master grimoire by Flavien Bridault (1bd4920334938a0ab5ddac7f6e87b2d8b228d5af)

Arwed von Merkatz v.merkatz at gmx.net
Thu Aug 24 13:26:58 EDT 2006


On Thu, Aug 24, 2006 at 07:24:30PM +0200, Flavien Bridault wrote:
> Le jeudi 24 août 2006 à 19:07 +0200, Arwed von Merkatz a écrit :
> > On Thu, Aug 24, 2006 at 12:04:46PM -0500, Flavien Bridault wrote:
> > > GIT changes to master grimoire by Flavien Bridault <vlaaad at sourcemage.org>:
> > > 
> > >  gnome2-apps/gdesklets/DETAILS                                          |    2 
> > >  gnome2-apps/gdesklets/HISTORY                                          |    5 
> > >  gnome2-apps/gdesklets/PRE_BUILD                                        |    3 
> > >  gnome2-apps/gdesklets/eggtrayicon.diff                                 |   89 +++++++++
> > >  gnome2-libs/gnome-python-extras/DETAILS                                |    2 
> > >  gnome2-libs/gnome-python-extras/HISTORY                                |    5 
> > >  gnome2-libs/gnome-python-extras/PRE_BUILD                              |    3 
> > >  gnome2-libs/gnome-python-extras/eggtrayicon.diff                       |   95 ++++++++++
> > >  gnome2-libs/gnome-python-extras/gnome-python-extras-2.14.2.tar.bz2.sig |binary
> > >  9 files changed, 202 insertions(+), 2 deletions(-)
> > > 
> > > New commits:
> > > commit 5cd00b03da775ace8f325d7b490c20c964960810
> > > Author: Flavien Bridault <vlaaad at sourcemage.org>
> > > Commit: Flavien Bridault <vlaaad at sourcemage.org>
> > > 
> > >     gdesklets: patched to get a transparent tray icon
> > > 
> > > commit e6d9d7f3d2df322de5533a66d56f4793a61245c3
> > > Author: Flavien Bridault <vlaaad at sourcemage.org>
> > > Commit: Flavien Bridault <vlaaad at sourcemage.org>
> > > 
> > >     gnome-python-extras: patched to get transparent tray icons (for instance with listen or exaile)
> > >                          added missing signature
> > 
> > Same question about those two.
> 
> Comes from the same bug, backported by my little hands. :-)
> 
> Do you think this requires a prompt ?

Since it's accepted and applied upstream, it's imo ok to include it in
the spells by default.

> > 
> > > diff --git a/gnome2-apps/gdesklets/DETAILS b/gnome2-apps/gdesklets/DETAILS
> > > index 5945c7a..4902b7c 100755
> > > --- a/gnome2-apps/gdesklets/DETAILS
> > > +++ b/gnome2-apps/gdesklets/DETAILS
> > > @@ -7,7 +7,7 @@ SOURCE_DIRECTORY=$BUILD_DIRECTORY/gDeskl
> > >        LICENSE[0]=GPL
> > >          WEB_SITE=http://www.gdesklets.org/
> > >           ENTERED=20030821
> > > -         UPDATED=20050402
> > > +      PATCHLEVEL=1
> > >          KEYWORDS="gnome2"
> > >             SHORT="gDesklets provides an advanced architecture for desktop applets"
> > >  cat << EOF
> > > diff --git a/gnome2-apps/gdesklets/HISTORY b/gnome2-apps/gdesklets/HISTORY
> > > index f272aea..54fffd0 100644
> > > --- a/gnome2-apps/gdesklets/HISTORY
> > > +++ b/gnome2-apps/gdesklets/HISTORY
> > > @@ -1,3 +1,8 @@
> > > +2006-08-24 Flavien Bridault <vlaaad at sourcemage.org>
> > > +	* eggtrayicon.diff: added to get transparent tray icons
> > > +	* PRE_BUILD: added to apply patch
> > > +	* DETAILS: PATCHLEVEL++
> > > +
> > >  2006-05-21 Robin Cook <rcook at wyrms.net>
> > >  	* DETAILS: removed BUILD_API
> > >  	  updated WEB_SITE
> > > diff --git a/gnome2-apps/gdesklets/PRE_BUILD b/gnome2-apps/gdesklets/PRE_BUILD
> > > new file mode 100755
> > > index 0000000..ee3ce16
> > > --- /dev/null
> > > +++ b/gnome2-apps/gdesklets/PRE_BUILD
> > > @@ -0,0 +1,3 @@
> > > +default_pre_build  &&
> > > +cd $SOURCE_DIRECTORY/utils  &&
> > > +patch -p0 < $SCRIPT_DIRECTORY/eggtrayicon.diff
> > > diff --git a/gnome2-apps/gdesklets/eggtrayicon.diff b/gnome2-apps/gdesklets/eggtrayicon.diff
> > > new file mode 100644
> > > index 0000000..3e61e42
> > > --- /dev/null
> > > +++ b/gnome2-apps/gdesklets/eggtrayicon.diff
> > > @@ -0,0 +1,89 @@
> > > +--- eggtrayicon.c.old	2006-08-24 18:27:53.000000000 +0200
> > > ++++ eggtrayicon.c	2006-08-24 18:30:25.000000000 +0200
> > > +@@ -41,6 +41,7 @@
> > > + 
> > > + static void egg_tray_icon_realize   (GtkWidget *widget);
> > > + static void egg_tray_icon_unrealize (GtkWidget *widget);
> > > ++static void egg_tray_icon_add (GtkContainer *container, GtkWidget    *widget);
> > > + 
> > > + static void egg_tray_icon_update_manager_window (EggTrayIcon *icon);
> > > + 
> > > +@@ -58,12 +59,15 @@
> > > + {
> > > +   GObjectClass *gobject_class = (GObjectClass *)klass;
> > > +   GtkWidgetClass *widget_class = (GtkWidgetClass *)klass;
> > > ++  GtkContainerClass *container_class = (GtkContainerClass *)klass;
> > > + 
> > > +   gobject_class->get_property = egg_tray_icon_get_property;
> > > + 
> > > +   widget_class->realize   = egg_tray_icon_realize;
> > > +   widget_class->unrealize = egg_tray_icon_unrealize;
> > > + 
> > > ++  container_class->add = egg_tray_icon_add;
> > > ++
> > > +   g_object_class_install_property (gobject_class,
> > > +                                    PROP_ORIENTATION,
> > > +                                    g_param_spec_enum ("orientation",
> > > +@@ -283,6 +287,36 @@
> > > +     }
> > > + }
> > > + 
> > > ++static gboolean
> > > ++transparent_expose_event (GtkWidget *widget, GdkEventExpose *event, gpointer user_data)
> > > ++{
> > > ++  gdk_window_clear_area (widget->window, event->area.x, event->area.y,
> > > ++			 event->area.width, event->area.height);
> > > ++  return FALSE;
> > > ++}
> > > ++
> > > ++static void
> > > ++make_transparent_again (GtkWidget *widget, GtkStyle *previous_style,
> > > ++			gpointer user_data)
> > > ++{
> > > ++  gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
> > > ++}
> > > ++
> > > ++static void
> > > ++make_transparent (GtkWidget *widget, gpointer user_data)
> > > ++{
> > > ++  if (GTK_WIDGET_NO_WINDOW (widget) || GTK_WIDGET_APP_PAINTABLE (widget))
> > > ++    return;
> > > ++
> > > ++  gtk_widget_set_app_paintable (widget, TRUE);
> > > ++  gtk_widget_set_double_buffered (widget, FALSE);
> > > ++  gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
> > > ++  g_signal_connect (widget, "expose_event",
> > > ++		    G_CALLBACK (transparent_expose_event), NULL);
> > > ++  g_signal_connect_after (widget, "style_set",
> > > ++			  G_CALLBACK (make_transparent_again), NULL);
> > > ++}	
> > > ++
> > > + static void
> > > + egg_tray_icon_realize (GtkWidget *widget)
> > > + {
> > > +@@ -296,6 +330,8 @@
> > > +   if (GTK_WIDGET_CLASS (egg_tray_icon_parent_class)->realize)
> > > +     GTK_WIDGET_CLASS (egg_tray_icon_parent_class)->realize (widget);
> > > + 
> > > ++  make_transparent (widget, NULL);
> > > ++
> > > +   screen = gtk_widget_get_screen (widget);
> > > +   display = gdk_screen_get_display (screen);
> > > +   xdisplay = gdk_x11_display_get_xdisplay (display);
> > > +@@ -323,7 +359,15 @@
> > > + 
> > > +   /* Add a root window filter so that we get changes on MANAGER */
> > > +   gdk_window_add_filter (root_window,
> > > +-                         egg_tray_icon_manager_filter, icon);
> > > ++                         egg_tray_icon_manager_filter, icon);
> > > ++}
> > > ++ 
> > > ++static void
> > > ++egg_tray_icon_add (GtkContainer *container, GtkWidget *widget)
> > > ++{
> > > ++   g_signal_connect (widget, "realize",
> > > ++ 		    G_CALLBACK (make_transparent), NULL);
> > > ++   GTK_CONTAINER_CLASS (egg_tray_icon_parent_class)->add (container, widget);
> > > + }
> > > + 
> > > + EggTrayIcon*
> > > diff --git a/gnome2-libs/gnome-python-extras/DETAILS b/gnome2-libs/gnome-python-extras/DETAILS
> > > index 4bde1a4..e6f9599 100755
> > > --- a/gnome2-libs/gnome-python-extras/DETAILS
> > > +++ b/gnome2-libs/gnome-python-extras/DETAILS
> > > @@ -8,7 +8,7 @@ SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL
> > >        LICENSE[0]=GPL
> > >          WEB_SITE=http://www.gnome.org
> > >           ENTERED=20010922
> > > -         UPDATED=20050530
> > > +      PATCHLEVEL=1
> > >          KEYWORDS="python gnome2 libs"
> > >             SHORT="Extra Python bindings for GNOME"
> > >  cat << EOF
> > > diff --git a/gnome2-libs/gnome-python-extras/HISTORY b/gnome2-libs/gnome-python-extras/HISTORY
> > > index cf18604..60e9915 100644
> > > --- a/gnome2-libs/gnome-python-extras/HISTORY
> > > +++ b/gnome2-libs/gnome-python-extras/HISTORY
> > > @@ -1,3 +1,8 @@
> > > +2006-08-24 Flavien Bridault <vlaaad at sourcemage.org>
> > > +	* eggtrayicon.diff: added to get transparent tray icons
> > > +        * PRE_BUILD: added to apply patch
> > > +        * DETAILS: PATCHLEVEL++
> > > +
> > >  2006-07-23 Robin Cook <rcook at wyrms.net>
> > >  	* DETAILS: updated VERSION to 2.14.2
> > >  	* PRE_BUILD: removed
> > > diff --git a/gnome2-libs/gnome-python-extras/PRE_BUILD b/gnome2-libs/gnome-python-extras/PRE_BUILD
> > > new file mode 100755
> > > index 0000000..559ed83
> > > --- /dev/null
> > > +++ b/gnome2-libs/gnome-python-extras/PRE_BUILD
> > > @@ -0,0 +1,3 @@
> > > +default_pre_build  &&
> > > +cd $SOURCE_DIRECTORY/egg/tray  &&
> > > +patch -p0 < $SCRIPT_DIRECTORY/eggtrayicon.diff
> > > diff --git a/gnome2-libs/gnome-python-extras/eggtrayicon.diff b/gnome2-libs/gnome-python-extras/eggtrayicon.diff
> > > new file mode 100644
> > > index 0000000..1651a73
> > > --- /dev/null
> > > +++ b/gnome2-libs/gnome-python-extras/eggtrayicon.diff
> > > @@ -0,0 +1,95 @@
> > > +Index: eggtrayicon.c
> > > +===================================================================
> > > +RCS file: /cvs/gnome/libegg/libegg/tray/eggtrayicon.c,v
> > > +retrieving revision 1.8
> > > +diff -u -r1.8 eggtrayicon.c
> > > +--- eggtrayicon.c	16 Jun 2005 13:27:40 -0000	1.8
> > > ++++ eggtrayicon.c	22 Feb 2006 21:35:25 -0000
> > > +@@ -67,6 +67,9 @@
> > > + static void egg_tray_icon_realize   (GtkWidget *widget);
> > > + static void egg_tray_icon_unrealize (GtkWidget *widget);
> > > + 
> > > ++static void egg_tray_icon_add (GtkContainer *container,
> > > ++			       GtkWidget    *widget);
> > > ++
> > > + #ifdef GDK_WINDOWING_X11
> > > + static void egg_tray_icon_update_manager_window    (EggTrayIcon *icon,
> > > + 						    gboolean     dock_if_realized);
> > > +@@ -113,6 +116,7 @@
> > > + {
> > > +   GObjectClass *gobject_class = (GObjectClass *)klass;
> > > +   GtkWidgetClass *widget_class = (GtkWidgetClass *)klass;
> > > ++  GtkContainerClass *container_class = (GtkContainerClass *)klass;
> > > + 
> > > +   parent_class = g_type_class_peek_parent (klass);
> > > + 
> > > +@@ -121,6 +125,8 @@
> > > +   widget_class->realize   = egg_tray_icon_realize;
> > > +   widget_class->unrealize = egg_tray_icon_unrealize;
> > > + 
> > > ++  container_class->add = egg_tray_icon_add;
> > > ++
> > > +   g_object_class_install_property (gobject_class,
> > > + 				   PROP_ORIENTATION,
> > > + 				   g_param_spec_enum ("orientation",
> > > +@@ -367,6 +373,36 @@
> > > + 
> > > + #endif
> > > + 
> > > ++static gboolean
> > > ++transparent_expose_event (GtkWidget *widget, GdkEventExpose *event, gpointer user_data)
> > > ++{
> > > ++  gdk_window_clear_area (widget->window, event->area.x, event->area.y,
> > > ++			 event->area.width, event->area.height);
> > > ++  return FALSE;
> > > ++}
> > > ++
> > > ++static void
> > > ++make_transparent_again (GtkWidget *widget, GtkStyle *previous_style,
> > > ++			gpointer user_data)
> > > ++{
> > > ++  gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
> > > ++}
> > > ++
> > > ++static void
> > > ++make_transparent (GtkWidget *widget, gpointer user_data)
> > > ++{
> > > ++  if (GTK_WIDGET_NO_WINDOW (widget) || GTK_WIDGET_APP_PAINTABLE (widget))
> > > ++    return;
> > > ++
> > > ++  gtk_widget_set_app_paintable (widget, TRUE);
> > > ++  gtk_widget_set_double_buffered (widget, FALSE);
> > > ++  gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
> > > ++  g_signal_connect (widget, "expose_event",
> > > ++		    G_CALLBACK (transparent_expose_event), NULL);
> > > ++  g_signal_connect_after (widget, "style_set",
> > > ++			  G_CALLBACK (make_transparent_again), NULL);
> > > ++}	
> > > ++
> > > + static void
> > > + egg_tray_icon_realize (GtkWidget *widget)
> > > + {
> > > +@@ -381,6 +417,8 @@
> > > +   if (GTK_WIDGET_CLASS (parent_class)->realize)
> > > +     GTK_WIDGET_CLASS (parent_class)->realize (widget);
> > > + 
> > > ++  make_transparent (widget, NULL);
> > > ++
> > > +   screen = gtk_widget_get_screen (widget);
> > > +   display = gdk_screen_get_display (screen);
> > > +   xdisplay = gdk_x11_display_get_xdisplay (display);
> > > +@@ -411,6 +449,14 @@
> > > +   gdk_window_add_filter (root_window,
> > > + 			 egg_tray_icon_manager_filter, icon);
> > > + #endif
> > > ++}
> > > ++
> > > ++static void
> > > ++egg_tray_icon_add (GtkContainer *container, GtkWidget *widget)
> > > ++{
> > > ++  g_signal_connect (widget, "realize",
> > > ++		    G_CALLBACK (make_transparent), NULL);
> > > ++  GTK_CONTAINER_CLASS (parent_class)->add (container, widget);
> > > + }
> > > + 
> > > + EggTrayIcon *
> > > diff --git a/gnome2-libs/gnome-python-extras/gnome-python-extras-2.14.2.tar.bz2.sig b/gnome2-libs/gnome-python-extras/gnome-python-extras-2.14.2.tar.bz2.sig
> > > new file mode 100644
> > > index 0000000..fae0b58
> > > Binary files /dev/null and b/gnome2-libs/gnome-python-extras/gnome-python-extras-2.14.2.tar.bz2.sig differ
> > > _______________________________________________
> > > SM-Commit mailing list
> > > SM-Commit at lists.ibiblio.org
> > > http://lists.ibiblio.org/mailman/listinfo/sm-commit
> > > 
> > 
> -- 
> Flavien Bridault
> 
> Disk, Graphics, Graphics-libs sections Guru
> Source Mage GNU/Linux - http://www.sourcemage.org
> 
> irc: vlaaad
> jabber: vlaaad at amessage.be



> _______________________________________________
> SM-Commit mailing list
> SM-Commit at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/sm-commit


-- 
Arwed v. Merkatz                              Source Mage GNU/Linux developer
                                                    http://www.sourcemage.org



More information about the SM-Commit mailing list