[Xfce4-commits] <xfce4-panel:devel> * Add hack in wrapper to avoid an argb window when using the systray. Sockets don't work when using windows with different depths.

Nick Schermer nick at xfce.org
Tue Aug 11 20:22:52 CEST 2009


Updating branch refs/heads/devel
         to e3b8c5561b51382f2ce1fb1a775ff149bf89af44 (commit)
       from 6e6dd036240a2aab463423e3b26cd818a7f7c788 (commit)

commit e3b8c5561b51382f2ce1fb1a775ff149bf89af44
Author: Nick Schermer <nick at xfce.org>
Date:   Sat Aug 9 22:54:01 2008 +0200

    * Add hack in wrapper to avoid an argb window
      when using the systray. Sockets don't work when
      using windows with different depths.

 panel/panel-plugin-external.c |    5 ++++-
 wrapper/main.c                |    2 +-
 wrapper/wrapper-plug.c        |   10 +++++++++-
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/panel/panel-plugin-external.c b/panel/panel-plugin-external.c
index 8b41b0f..dc6ce55 100644
--- a/panel/panel-plugin-external.c
+++ b/panel/panel-plugin-external.c
@@ -56,6 +56,9 @@ static void         panel_plugin_external_set_screen_position (XfcePanelPluginPr
                                                                XfceScreenPosition            screen_position);
 static void         panel_plugin_external_save                (XfcePanelPluginProvider      *provider);
 static void         panel_plugin_external_set_sensitive       (PanelPluginExternal          *external);
+static void         panel_plugin_external_set_property        (PanelPluginExternal          *external,
+                                                               const gchar                  *property,
+                                                               const GValue                 *value);
 
 
 
@@ -403,7 +406,7 @@ panel_plugin_external_get_id (XfcePanelPluginProvider *provider)
 static void
 panel_plugin_external_set_property (PanelPluginExternal *external,
                                     const gchar         *property,
-                                    GValue              *value)
+                                    const GValue        *value)
 {
   QueuedData *data;
   
diff --git a/wrapper/main.c b/wrapper/main.c
index 24391e6..d38d341 100644
--- a/wrapper/main.c
+++ b/wrapper/main.c
@@ -43,7 +43,7 @@
 
 
 
-static gchar   *opt_name = NULL;
+gchar          *opt_name = NULL;
 static gchar   *opt_display_name = NULL;
 static gchar   *opt_id = NULL;
 static gchar   *opt_filename = NULL;
diff --git a/wrapper/wrapper-plug.c b/wrapper/wrapper-plug.c
index 30fe467..91dffa4 100644
--- a/wrapper/wrapper-plug.c
+++ b/wrapper/wrapper-plug.c
@@ -21,6 +21,10 @@
 #include <config.h>
 #endif
 
+#ifdef HAVE_STRING_H
+#include <string.h>
+#endif
+
 #include <wrapper/wrapper-plug.h>
 
 
@@ -72,6 +76,8 @@ wrapper_plug_class_init (WrapperPlugClass *klass)
 static void
 wrapper_plug_init (WrapperPlug *plug)
 {
+  extern gchar *opt_name;
+  
   /* init vars */
   plug->background_alpha = 1.00;
   plug->is_selected = FALSE;
@@ -84,7 +90,9 @@ wrapper_plug_init (WrapperPlug *plug)
   g_signal_connect (G_OBJECT (plug), "composited-changed", G_CALLBACK (wrapper_plug_set_colormap), NULL);
 
   /* set the colormap */
-  wrapper_plug_set_colormap (plug);
+  /* HACK: the systray can't handle composited windows! */
+  if (strcmp (opt_name, "systray") != 0)
+    wrapper_plug_set_colormap (plug);
 }
 
 



More information about the Xfce4-commits mailing list