Fix major kompmgr flickering on sesson startup

Note that there is still a (small) single flicker that occurs as the composition is engaged,
however this is an Xorg design defect and can only be fixed by loading composition support in kdm


git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1246526 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 13 years ago
parent 4f1f76a2d3
commit a3d5ebbdd7

@ -2567,6 +2567,21 @@ void Workspace::helperDialog( const TQString& message, const Client* c )
void Workspace::startKompmgr() void Workspace::startKompmgr()
{ {
// See if the desktop is loaded yet
Atom type;
int format;
unsigned long length, after;
unsigned char* data_root;
Atom prop_root;
prop_root = XInternAtom(qt_xdisplay(), "_XROOTPMAP_ID", False);
if( XGetWindowProperty( qt_xdisplay(), qt_xrootwin(), prop_root, 0L, 1L, False, AnyPropertyType, &type, &format, &length, &after, &data_root) == Success && data_root != NULL ) {
// Root pixmap is available; OK to load...
}
else {
// Try again a bit later!
TQTimer::singleShot( 200, this, TQT_SLOT(startKompmgr()) );
return;
}
if (!kompmgr || kompmgr->isRunning()) if (!kompmgr || kompmgr->isRunning())
return; return;
if (!kompmgr->start(KProcess::OwnGroup, KProcess::Stderr)) if (!kompmgr->start(KProcess::OwnGroup, KProcess::Stderr))

Loading…
Cancel
Save