Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
KDE:KDE3
kde3-compiz
kde-auto-comp.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File kde-auto-comp.diff of Package kde3-compiz
Index: compiz-0.8.6/kde/window-decorator-kde4/decorator.cpp =================================================================== --- compiz-0.8.6.orig/kde/window-decorator-kde4/decorator.cpp +++ compiz-0.8.6/kde/window-decorator-kde4/decorator.cpp @@ -83,6 +83,15 @@ KWD::PluginManager::PluginManager (KShar "kwin3_oxygen" : "kwin3_plastik"; } +static int redirectError; + +static int +redirectErrorHandler (Display *dpy, + XErrorEvent *e) +{ + redirectError++; + return 0; +} KWD::Decorator::Decorator () : KApplication (), @@ -164,8 +173,16 @@ KWD::Decorator::Decorator () : XChangeProperty (QX11Info::display(), mCompositeWindow, Atoms::enlightmentDesktop, XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &data, 1); + redirectError = 0; + int (*oldErrorHandler) (Display *, XErrorEvent *) = + XSetErrorHandler (redirectErrorHandler); XCompositeRedirectSubwindows (QX11Info::display(), mCompositeWindow, - CompositeRedirectManual); + CompositeRedirectManual); + syncX (); + XSetErrorHandler (oldErrorHandler); + if (redirectError) + XCompositeRedirectSubwindows (QX11Info::display(), mCompositeWindow, + CompositeRedirectAutomatic); XMapWindow (QX11Info::display(), mCompositeWindow); } Index: compiz-0.8.6/kde/window-decorator/decorator.cpp =================================================================== --- compiz-0.8.6.orig/kde/window-decorator/decorator.cpp +++ compiz-0.8.6/kde/window-decorator/decorator.cpp @@ -188,6 +188,16 @@ dbusHandleMessage (DBusConnection *conne return result; } +static int redirectError; + +static int +redirectErrorHandler (Display *dpy, + XErrorEvent *e) +{ + redirectError++; + return 0; +} + KWD::Decorator::Decorator (void) : DCOPObject ("KWinInterface"), KApplication (), mConfig (0), @@ -242,8 +252,16 @@ KWD::Decorator::Decorator (void) : DCOPO CopyFromParent, CWOverrideRedirect, &attr); + redirectError = 0; + int (*oldErrorHandler) (Display *, XErrorEvent *) = + XSetErrorHandler (redirectErrorHandler); XCompositeRedirectSubwindows (qt_xdisplay (), mCompositeWindow, CompositeRedirectManual); + syncX (); + XSetErrorHandler (oldErrorHandler); + if (redirectError) + XCompositeRedirectSubwindows (qt_xdisplay (), mCompositeWindow, + CompositeRedirectAutomatic); XMapWindow (qt_xdisplay (), mCompositeWindow); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor