--- xorg-server-1.9.3/hw/kdrive/ephyr/Makefile.orig 2011-02-19 21:45:47.399607891 +1100 +++ xorg-server-1.9.3/hw/kdrive/ephyr/Makefile 2011-02-19 22:06:03.312828607 +1100 @@ -63,10 +63,9 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libxephyr_hostdri_la_LIBADD = am__libxephyr_hostdri_la_SOURCES_DIST = ephyrdriext.c ephyrdriext.h \ - ephyrdri.c ephyrdri.h XF86dri.c xf86dri.h ephyrglxext.c \ - ephyrglxext.h ephyrhostglx.c ephyrhostglx.h -am__objects_1 = ephyrdriext.lo ephyrdri.lo XF86dri.lo ephyrglxext.lo \ - ephyrhostglx.lo + ephyrdri.c ephyrdri.h XF86dri.c xf86dri.h \ + ephyrhostglx.c ephyrhostglx.h +am__objects_1 = ephyrdriext.lo ephyrdri.lo XF86dri.lo ephyrhostglx.lo am_libxephyr_hostdri_la_OBJECTS = $(am__objects_1) libxephyr_hostdri_la_OBJECTS = $(am_libxephyr_hostdri_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) @@ -476,7 +475,7 @@ \ -I/usr/include/X11/dri \ -I$(top_srcdir) \ - -I$(top_srcdir)/exa + -I$(top_srcdir)/exa $(DRI_CFLAGS) LIBXEPHYR_HOSTXV = libxephyr-hostxv.la LIBXEPHYR_HOSTDRI = libxephyr-hostdri.la @@ -497,8 +496,6 @@ ephyrdri.h \ XF86dri.c \ xf86dri.h \ - ephyrglxext.c \ - ephyrglxext.h \ ephyrhostglx.c \ ephyrhostglx.h @@ -522,8 +519,8 @@ $(LIBXEPHYR_HOSTXV) \ $(LIBXEPHYR_HOSTDRI) \ $(top_builddir)/exa/libexa.la \ - $(top_builddir)/dix/libmain.la $(top_builddir)/dix/libdix.la $(top_builddir)/hw/kdrive/src/libkdrive.la $(top_builddir)/hw/kdrive/src/libkdrivestubs.la $(top_builddir)/fb/libfb.la $(top_builddir)/mi/libmi.la $(top_builddir)/fb/libfb.la $(top_builddir)/mi/libmi.la $(top_builddir)/xfixes/libxfixes.la $(top_builddir)/Xext/libXext.la $(top_builddir)/dbe/libdbe.la $(top_builddir)/record/librecord.la $(top_builddir)/randr/librandr.la $(top_builddir)/render/librender.la $(top_builddir)/damageext/libdamageext.la $(top_builddir)/miext/damage/libdamage.la $(top_builddir)/miext/shadow/libshadow.la $(top_builddir)/Xi/libXi.la $(top_builddir)/xkb/libxkb.la $(top_builddir)/xkb/libxkbstubs.la $(top_builddir)/composite/libcomposite.la $(top_builddir)/os/libos.la $(top_builddir)/hw/kdrive/linux/liblinux.la -lpixman-1 -lXfont -lXau -lXdmcp -lm -lrt -ldl \ - -lX11 -lXext -lXau -lXdmcp -lXv + $(top_builddir)/dix/libmain.la $(top_builddir)/dix/libdix.la $(top_builddir)/hw/kdrive/src/libkdrive.la $(top_builddir)/hw/kdrive/src/libkdrivestubs.la $(top_builddir)/fb/libfb.la $(top_builddir)/mi/libmi.la $(top_builddir)/fb/libfb.la $(top_builddir)/mi/libmi.la $(top_builddir)/xfixes/libxfixes.la $(top_builddir)/Xext/libXext.la $(top_builddir)/dbe/libdbe.la $(top_builddir)/record/librecord.la $(top_builddir)/randr/librandr.la $(top_builddir)/render/librender.la $(top_builddir)/damageext/libdamageext.la $(top_builddir)/miext/damage/libdamage.la $(top_builddir)/miext/shadow/libshadow.la $(top_builddir)/Xi/libXi.la $(top_builddir)/xkb/libxkb.la $(top_builddir)/xkb/libxkbstubs.la $(top_builddir)/composite/libcomposite.la $(top_builddir)/os/libos.la $(top_builddir)/hw/kdrive/linux/liblinux.la -lpixman-1 ../../../../libfontenc-1.1.0/src/.libs/libfontenc.a -lz ../../../../libXfont-1.4.3/src/.libs/libXfont.a -lXau -lXdmcp -lm -lrt -ldl \ + -lX11 -lXext /usr/lib/libXv.a Xephyr_DEPENDENCIES = \ libxephyr.la \ @@ -690,7 +687,6 @@ include ./$(DEPDIR)/ephyr_draw.Plo include ./$(DEPDIR)/ephyrdri.Plo include ./$(DEPDIR)/ephyrdriext.Plo -include ./$(DEPDIR)/ephyrglxext.Plo include ./$(DEPDIR)/ephyrhostglx.Plo include ./$(DEPDIR)/ephyrhostvideo.Plo include ./$(DEPDIR)/ephyrinit.Po --- xorg-server-1.9.3/hw/kdrive/ephyr/ephyr.c.orig 2011-02-19 22:02:58.142839199 +1100 +++ xorg-server-1.9.3/hw/kdrive/ephyr/ephyr.c 2011-02-19 22:03:33.392835121 +1100 @@ -656,7 +656,9 @@ } if (!ephyrNoDRI) { ephyrDRIExtensionInit (pScreen) ; +#ifdef GLXEXT ephyrHijackGLXExtension () ; +#endif } #endif --- xorg-server-1.9.3/hw/kdrive/ephyr/hostx.c.orig 2010-06-28 09:43:05.000000000 +1000 +++ xorg-server-1.9.3/hw/kdrive/ephyr/hostx.c 2011-02-19 21:57:28.626203779 +1100 @@ -57,6 +57,7 @@ #include #include #include +#include #ifdef XF86DRI #include #endif /* XF86DRI */ @@ -286,13 +287,20 @@ static void hostx_set_fullscreen_hint (void) { - Atom atom_WINDOW_STATE, atom_WINDOW_STATE_FULLSCREEN; + Atom atom_WINDOW_STATE, atom_WINDOW_STATE_FULLSCREEN, atom_MOTIF_WM_HINTS; int index; + PropMotifWmHints motif_hints; + + memset (&motif_hints, 0, sizeof(motif_hints)); + motif_hints.flags = MWM_HINTS_DECORATIONS; + motif_hints.decorations = 0; atom_WINDOW_STATE = XInternAtom(HostX.dpy, "_NET_WM_STATE", False); atom_WINDOW_STATE_FULLSCREEN = XInternAtom(HostX.dpy, "_NET_WM_STATE_FULLSCREEN",False); + atom_MOTIF_WM_HINTS + = XInternAtom(HostX.dpy, "_MOTIF_WM_HINTS", False); for (index = 0 ; index < HostX.n_screens ; index++) { @@ -300,6 +308,10 @@ atom_WINDOW_STATE, XA_ATOM, 32, PropModeReplace, (unsigned char *)&atom_WINDOW_STATE_FULLSCREEN, 1); + XChangeProperty (HostX.dpy, HostX.screens[index].win, + atom_MOTIF_WM_HINTS, atom_MOTIF_WM_HINTS, 32, + PropModeReplace, (unsigned char *)&motif_hints, + PROP_MOTIF_WM_HINTS_ELEMENTS); } } @@ -1435,6 +1447,7 @@ int hostx_has_glx (void) { +#ifdef GLXEXT Display *dpy=hostx_get_display () ; int event_base=0, error_base=0 ; @@ -1442,6 +1455,9 @@ return FALSE ; } return TRUE ; +#else + return FALSE ; +#endif } #endif /* XF86DRI */