[maemo-commits] [maemo-commits] r11953 - in projects/haf/trunk/hildon-desktop: . src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Tue May 29 16:03:39 EEST 2007
Author: jobi
Date: 2007-05-29 16:03:36 +0300 (Tue, 29 May 2007)
New Revision: 11953

Modified:
   projects/haf/trunk/hildon-desktop/ChangeLog
   projects/haf/trunk/hildon-desktop/src/hd-home-window.c
   projects/haf/trunk/hildon-desktop/src/hd-panel-window.c
Log:

2007-05-29  Johan Bilien  <johan.bilien at nokia.com>

	* src/hd-home-window.c: don't redirect the window here
	* src/hd-panel-window.c:
	- redirect the home window
	- only track the desktop window if XComposite is available
	in the server



Modified: projects/haf/trunk/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-desktop/ChangeLog	2007-05-29 12:45:12 UTC (rev 11952)
+++ projects/haf/trunk/hildon-desktop/ChangeLog	2007-05-29 13:03:36 UTC (rev 11953)
@@ -1,3 +1,11 @@
+2007-05-29  Johan Bilien  <johan.bilien at nokia.com>
+
+	* src/hd-home-window.c: don't redirect the window here
+	* src/hd-panel-window.c:
+	- redirect the home window
+	- only track the desktop window if XComposite is available
+	in the server
+
 2007-05-29  Lucas Rocha  <lucas.rocha at nokia.com>
 
 	* src/hd-applications-menu.c: change the keyboard navigation behavior

Modified: projects/haf/trunk/hildon-desktop/src/hd-home-window.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-home-window.c	2007-05-29 12:45:12 UTC (rev 11952)
+++ projects/haf/trunk/hildon-desktop/src/hd-home-window.c	2007-05-29 13:03:36 UTC (rev 11953)
@@ -30,11 +30,6 @@
 #include <hildon/hildon-help.h>
 #endif
 
-#ifdef HAVE_X_COMPOSITE
-#include <X11/extensions/Xrender.h>
-#include <X11/extensions/Xcomposite.h>
-#endif
-
 #ifdef HAVE_LIBOSSO
 #include <libosso.h>
 #endif
@@ -711,12 +706,6 @@
 
   GTK_WIDGET_CLASS (hd_home_window_parent_class)->realize (widget);
 
-#ifdef HAVE_X_COMPOSITE
-  XCompositeRedirectWindow (GDK_DISPLAY (),
-                            GDK_WINDOW_XID (widget->window),
-                            CompositeRedirectAutomatic);
-#endif
-
   wm = hd_wm_get_singleton ();
   g_object_set (wm,
                 "desktop-window", (gint)GDK_WINDOW_XID (widget->window),
@@ -728,11 +717,6 @@
 hd_home_window_unrealize (GtkWidget *widget)
 {
   HDWM *wm;
-#ifdef HAVE_X_COMPOSITE
-  XCompositeUnredirectWindow (GDK_DISPLAY (),
-                              GDK_WINDOW_XID (widget->window),
-                              CompositeRedirectAutomatic);
-#endif
 
   wm = hd_wm_get_singleton ();
   g_object_set (wm,

Modified: projects/haf/trunk/hildon-desktop/src/hd-panel-window.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-panel-window.c	2007-05-29 12:45:12 UTC (rev 11952)
+++ projects/haf/trunk/hildon-desktop/src/hd-panel-window.c	2007-05-29 13:03:36 UTC (rev 11953)
@@ -448,6 +448,10 @@
       if (format == None)
         return;
 
+      XCompositeRedirectWindow (GDK_DISPLAY (),
+                                desktop_window,
+                                CompositeRedirectAutomatic);
+
       priv->home_picture = XRenderCreatePicture (GDK_DISPLAY (),
                                                  desktop_window,
                                                  format,
@@ -473,7 +477,7 @@
 #endif
 
 static void
-hd_panel_window_set_style (HDPanelWindow *window, 
+hd_panel_window_set_style (HDPanelWindow *window,
                            HildonDesktopPanelWindowOrientation orientation)
 {
   switch (orientation)
@@ -562,21 +566,21 @@
   hd_panel_window_set_style (HD_PANEL_WINDOW (object), orientation);
 
   gtk_widget_set_app_paintable (GTK_WIDGET (object), TRUE);
-  
+
   return object;
 }
- 
+
 static void
 hd_panel_window_class_init (HDPanelWindowClass *klass)
 {
   GObjectClass *object_class;
   GtkWidgetClass *widget_class;
   HildonDesktopPanelWindowClass *panel_window_class;
-  
+
   object_class = G_OBJECT_CLASS (klass);
   widget_class = GTK_WIDGET_CLASS (klass);
   panel_window_class = HILDON_DESKTOP_PANEL_WINDOW_CLASS (klass);
-  
+
   object_class->constructor = hd_panel_window_constructor;
   panel_window_class->orientation_changed = hd_panel_window_orientation_changed;
 
@@ -617,13 +621,16 @@
 hd_panel_window_init (HDPanelWindow *window)
 {
 #ifdef HAVE_X_COMPOSITE
-  HDWM *wm;
+  if (HD_PANEL_WINDOW_GET_CLASS (window)->composite)
+    {
+      HDWM *wm;
 
-  wm = hd_wm_get_singleton ();
+      wm = hd_wm_get_singleton ();
 
-  g_signal_connect_swapped (wm, "notify::desktop-window",
-                            G_CALLBACK (hd_panel_window_desktop_window_changed),
-                            window);
+      g_signal_connect_swapped (wm, "notify::desktop-window",
+                                G_CALLBACK (hd_panel_window_desktop_window_changed),
+                                window);
+    }
 
   window->priv = HD_PANEL_WINDOW_GET_PRIVATE (window);
 #endif


More information about the maemo-commits mailing list