2008-03-09 Erwann Chenede - <[email protected]> gnome-2-20 OPENSOLARIS_2008_05
authorerwannc
Sun, 09 Mar 2008 19:35:07 +0000
branchgnome-2-20
changeset 10828 6fff0d48bb72
parent 10827 4c1be74574ca
child 10829 44fa05f7cbaa
child 11055 69372be05374
2008-03-09 Erwann Chenede - <[email protected]> * patches/gnome-session-09-compiz-integration.diff: make compiz session aware. bug 6672099 * base-specs/gnome-session.spec: added patch
ChangeLog
base-specs/gnome-session.spec
patches/gnome-session-09-compiz-integration.diff
--- a/ChangeLog	Sun Mar 09 10:39:57 2008 +0000
+++ b/ChangeLog	Sun Mar 09 19:35:07 2008 +0000
@@ -1,3 +1,9 @@
+2008-03-09 Erwann Chenede - <[email protected]>
+
+	* patches/gnome-session-09-compiz-integration.diff: make 
+	  compiz session aware. bug 6672099
+	* base-specs/gnome-session.spec: added patch
+
 2008-03-09  Damien Carbery <[email protected]>
 
         * cron-script.sh: Add section to build spec-files-other modules and add
--- a/base-specs/gnome-session.spec	Sun Mar 09 10:39:57 2008 +0000
+++ b/base-specs/gnome-session.spec	Sun Mar 09 19:35:07 2008 +0000
@@ -36,8 +36,10 @@
 Patch7:       gnome-session-07-busy-cursor.diff
 %if %option_with_sun_branding
 #owner:erwannc date:2005-05-11 type:branding
-Patch8:      gnome-session-08-solaris-branding.diff
+Patch8:       gnome-session-08-solaris-branding.diff
 %endif
+#owner:erwannc date:2008-03-07 type:feature bugster:6672099
+Patch9:	      gnome-session-09-compiz-integration.diff 
 
 URL:          http://www.gnome.org
 BuildRoot:    %{_tmppath}/%{name}-%{version}-build
@@ -75,6 +77,7 @@
 
 cp %SOURCE1 gnome-session/gnome-splash.png
 %endif
+%patch9 -p1
 
 %build
 %ifos linux
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnome-session-09-compiz-integration.diff	Sun Mar 09 19:35:07 2008 +0000
@@ -0,0 +1,58 @@
+diff -rup gnome-session-2.20.1/gnome-session/gnome-wm ../gnome-session-2.20.1/gnome-session/gnome-wm
+--- gnome-session-2.20.1/gnome-session/gnome-wm	2007-10-15 21:49:11.000000000 +0200
++++ ../gnome-session-2.20.1/gnome-session/gnome-wm	2008-03-07 21:48:04.655755000 +0100
+@@ -1,7 +1,8 @@
+ #!/bin/sh
+ 
+ # The user can specify his prefered WM by setting the WINDOW_MANAGER
+-# environment variable.
++# environment variable or from the
++# /desktop/gnome/applications/window_manager/default gconf key.
+ #
+ # If this is not set, we search a list of known windowmanagers and use
+ # the first one that is found in the users's PATH
+@@ -37,6 +38,21 @@ for n in "$@" ; do
+   esac
+ done
+ 
++# Get previously set window manager in gconf if not specified in cmdline
++if [ ! "$DEFWM" ]; then
++  DEFWM=`gconftool-2 -g /desktop/gnome/applications/window_manager/default 2>/dev/null`
++fi
++
++if [ -z "$DEFWM" -o "x$DEFWM" = "xgnome-wm" ]; then
++  DEFWM=`gconftool-2 -g /desktop/gnome/applications/window_manager/default 2>/dev/null`
++fi
++
++# If not exist, set to metacity.
++if [ ! -x "$DEFWM" ]; then
++    gconftool-2 -s /desktop/gnome/applications/window_manager/default /usr/bin/metacity --type string
++    DEFWM=/usr/bin/metacity
++fi
++
+ # WINDOW_MANAGER overrides all
+ 
+ if [ -z "$WINDOW_MANAGER" ] ; then
+@@ -118,16 +134,19 @@ fi
+ 
+ case `basename $WINDOW_MANAGER` in
+   compiz)
+-    export LIBGL_ALWAYS_INDIRECT=1
+     gtk-window-decorator &
+-    OPT3=glib
+-    OPT4=gconf
++    OPT3=--indirect-rendering
++    OPT4=ccp
+     ;;
+   beryl)
+     emerald &
+     ;;
+ esac
+ 
++# Store the selected WM with gconf
++gconftool-2 -t string -s /desktop/gnome/applications/window_manager/current "$WINDOW_MANAGER"
++
++
+ exec $WINDOW_MANAGER $OPT1 $OPT2 $OPT3 $OPT4
+ 
+ echo "ERROR: No window manager could run!"