diff options
Diffstat (limited to 'kcminit')
-rw-r--r-- | kcminit/main.cpp | 31 | ||||
-rw-r--r-- | kcminit/main.h | 2 |
2 files changed, 21 insertions, 12 deletions
diff --git a/kcminit/main.cpp b/kcminit/main.cpp index f1fbf8987..3a2d7c362 100644 --- a/kcminit/main.cpp +++ b/kcminit/main.cpp @@ -112,16 +112,25 @@ void KCMInit::runModules( int phase ) TQString libName = TQString("kcm_%1").arg(library); + TQString factoryName = service->property("X-TDE-FactoryName", TQVariant::String).toString(); + if (!factoryName.isEmpty()) + { + factoryName = ":" + factoryName; + } + TQString libFactoryName = libName + factoryName; + // try to load the library - if (! alreadyInitialized.contains( libName.ascii() )) { + if (!alreadyInitialized.contains( libFactoryName.ascii() )) { if (!runModule(libName, service)) { libName = TQString("libkcm_%1").arg(library); - if (! alreadyInitialized.contains( libName.ascii() )) { + libFactoryName = libName + factoryName; + if (!alreadyInitialized.contains( libFactoryName.ascii() )) { runModule(libName, service); - alreadyInitialized.append( libName.ascii() ); + alreadyInitialized.append( libFactoryName.ascii() ); } - } else - alreadyInitialized.append( libName.ascii() ); + } else { + alreadyInitialized.append( libFactoryName.ascii() ); + } } } } @@ -171,8 +180,8 @@ KCMInit::KCMInit( TDECmdLineArgs* args ) } - if ( !kapp->dcopClient()->isAttached() ) - kapp->dcopClient()->attach(); + if ( !tdeApp->dcopClient()->isAttached() ) + tdeApp->dcopClient()->attach(); // This key has no GUI apparently TDEConfig config("kcmdisplayrc", true ); @@ -185,15 +194,15 @@ KCMInit::KCMInit( TDECmdLineArgs* args ) TQByteArray params; TQDataStream stream(params, IO_WriteOnly); stream << name << value; - kapp->dcopClient()->send("tdelauncher", "tdelauncher", "setLaunchEnv(TQCString,TQCString)", params); + tdeApp->dcopClient()->send("tdelauncher", "tdelauncher", "setLaunchEnv(TQCString,TQCString)", params); setenv( name, value, 1 ); // apply effect also to itself if( startup ) { runModules( 0 ); - kapp->dcopClient()->send( "ksplash", "", "upAndRunning(TQString)", TQString("kcminit")); + tdeApp->dcopClient()->send( "ksplash", "", "upAndRunning(TQString)", TQString("kcminit")); sendReady(); - TQTimer::singleShot( 300 * 1000, tqApp, TQT_SLOT( quit())); // just in case + TQTimer::singleShot( 300 * 1000, tqApp, TQ_SLOT( quit())); // just in case tqApp->exec(); // wait for runPhase1() and runPhase2() } else @@ -218,7 +227,7 @@ void KCMInit::runPhase2() tqApp->exit( 0 ); } -extern "C" KDE_EXPORT int kdemain(int argc, char *argv[]) +extern "C" TDE_EXPORT int kdemain(int argc, char *argv[]) { // tdeinit waits for kcminit to finish, but during KDE startup // only important kcm's are started very early in the login process, diff --git a/kcminit/main.h b/kcminit/main.h index 9651a8516..5d0bb958a 100644 --- a/kcminit/main.h +++ b/kcminit/main.h @@ -27,7 +27,7 @@ class TDECmdLineArgs; class KCMInit : public TQObject, public DCOPObject { - Q_OBJECT + TQ_OBJECT K_DCOP k_dcop: void runPhase1(); |