summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Fourdan <fourdan.olivier@wanadoo.fr>2004-09-26 22:07:59 +0000
committerOlivier Fourdan <fourdan.olivier@wanadoo.fr>2004-09-26 22:07:59 +0000
commit7c089f109bbed457eab61ea214ffdb91d3451a40 (patch)
tree53429dbfa36b145c806547dac829b4e0229275a5
parent580e8d327f3c040d46d0a6601def4a451697b0e8 (diff)
downloadxfwm4-7c089f109bbed457eab61ea214ffdb91d3451a40.tar.gz
Various tweaking
(Old svn revision: 11993)
-rw-r--r--COMPOSITOR77
-rw-r--r--Makefile.am2
-rw-r--r--Makefile.in2
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac2
-rw-r--r--ltmain.sh3
-rw-r--r--src/compositor.c6
-rw-r--r--xfwm4.spec.in2
8 files changed, 90 insertions, 6 deletions
diff --git a/COMPOSITOR b/COMPOSITOR
new file mode 100644
index 000000000..b48f9c422
--- /dev/null
+++ b/COMPOSITOR
@@ -0,0 +1,77 @@
+Compositing manager notes.
+==========================
+
+xfwm4 now features a compositing manager. This code is new and has received only
+a moderate amount of testing, so it's disabled by default.
+
+If you want to stay safe, keep it disabled. If you still want to try the
+compositor extensions with xfwm4, here follows how to enable the compositing
+manager.
+
+1) Enabling the compositor manager in xfwm4
+-------------------------------------------
+
+To enable the compositing manager in xfwm4, add --enable-compositor when running
+the configure script.
+
+eg:
+
+sh configure --prefix=/usr --sysconfdir=/etc --enable-compositor
+
+[...]
+checking for xcomposite >= 1.0 xfixes xdamage xrender... yes
+checking COMPOSITOR_CFLAGS... -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/usr/X11R6/include
+checking COMPOSITOR_LIBS... -L/usr/X11R6/lib -lXcomposite -lXdamage -lXfixes -lXrender -lX11 -lXext
+[...]
+
+2) Enabling the compositor extension in the Xserver
+---------------------------------------------------
+
+At this time, the compositor extensions are included in the X.org Xserver. I do
+not know if there are any plan to include these extension in XFree86, nor when
+it's planned.
+
+The following tips apply to the X.org Xserver X11R6.8.x
+
+- Edit the xorg.conf configure file (usually in /etc/X11/xorg.conf)
+- Add the following section:
+
+Section "Extensions"
+ Option "Composite" "Enable"
+EndSection
+
+- Save the configuration file and restart the Xserver.
+
+3) Tips
+-------
+
+The following tips are from my own experience. I am not connected to any graphic
+card vendor.
+
+If you have usefull tips to improve XRender performance for your favorite video
+card, feel free to submit your own tips.
+
+3.1 NVidia
+~~~~~~~~~~
+
+The XRender extension can be very CPU consuming. The NVidia binary closed source
+drivers are able to perform the rendering in hardware.
+
+If you have an NVidia video card and the NVidia binary closed source drivers,
+you can enable the XRender in hardwareby adding the following option to your
+xorg.conf file:
+
+ Option "RenderAccel" "true"
+
+in the device section:
+
+eg:
+Section "Device"
+ Identifier "Videocard0"
+ Driver "nvidia"
+ VendorName "Videocard vendor"
+ BoardName "NVIDIA GeForce 4 (generic)"
+ Option "RenderAccel" "true"
+EndSection
+
+
diff --git a/Makefile.am b/Makefile.am
index ce549cba8..0206f9a07 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
@SET_MAKE@
-EXTRA_DIST = example.gtkrc-2.0 xfwm4.spec
+EXTRA_DIST = example.gtkrc-2.0 xfwm4.spec COMPOSITOR
SUBDIRS = po doc icons src mcs-plugin defaults themes
diff --git a/Makefile.in b/Makefile.in
index 15603e253..e9bab7f99 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -225,7 +225,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-EXTRA_DIST = example.gtkrc-2.0 xfwm4.spec
+EXTRA_DIST = example.gtkrc-2.0 xfwm4.spec COMPOSITOR
SUBDIRS = po doc icons src mcs-plugin defaults themes
ACLOCAL_AMFLAGS = -I m4
all: config.h
diff --git a/configure b/configure
index 8bfef734c..789a127c2 100755
--- a/configure
+++ b/configure
@@ -1824,7 +1824,7 @@ fi
# Define the identity of the package.
PACKAGE=xfwm4
- VERSION=4.1.16
+ VERSION=4.1.90
cat >>confdefs.h <<_ACEOF
diff --git a/configure.ac b/configure.ac
index 62df7e34a..8085b009f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -7,7 +7,7 @@ AC_INIT([src/main.c])
AC_PREREQ(2.52)
-AM_INIT_AUTOMAKE([xfwm4], [4.1.16])
+AM_INIT_AUTOMAKE([xfwm4], [4.1.90])
AM_CONFIG_HEADER([config.h])
diff --git a/ltmain.sh b/ltmain.sh
index c13e957f7..23f82e3b7 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -33,6 +33,9 @@ basename="s,^.*/,,g"
# function.
progpath="$0"
+# RH: define SED for historic ltconfig's generated by Libtool 1.3
+[ -z "$SED" ] && SED=sed
+
# The name of this program:
progname=`echo "$progpath" | $SED $basename`
modename="$progname"
diff --git a/src/compositor.c b/src/compositor.c
index 4b4e727c7..9895f2785 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1156,14 +1156,18 @@ add_win (DisplayInfo *display_info, Window id, Client *c, Window prev)
{
ScreenInfo *screen_info;
CWindow *new;
+ Status test;
gboolean inserted = FALSE;
TRACE ("entering add_win: 0x%lx", id);
new = g_new0 (CWindow, 1);
+ gdk_error_trap_push ();
myDisplayGrabServer (display_info);
- if (!XGetWindowAttributes (display_info->dpy, id, &new->attr))
+ test = XGetWindowAttributes (display_info->dpy, id, &new->attr);
+
+ if (gdk_error_trap_pop () || !test)
{
g_free (new);
myDisplayUngrabServer (display_info);
diff --git a/xfwm4.spec.in b/xfwm4.spec.in
index 1208841b3..2eb81a2c4 100644
--- a/xfwm4.spec.in
+++ b/xfwm4.spec.in
@@ -33,7 +33,7 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
-%doc example.gtkrc-2.0 README INSTALL TODO COPYING AUTHORS
+%doc example.gtkrc-2.0 README INSTALL TODO COPYING AUTHORS COMPOSITOR
%{_bindir}
%{_libdir}/xfce4
%{_datadir}/applications