re, all... KPilot uses a daemon process (kpilotDaemon) which remains running for synchronization to take place for our users. It does not currently have any on-screen presence (nor has it ever) other than its system tray icon, which means that it does not have a top-level widget. Our new keyring conduit needs to store a password and retrieve it from the wallet subsystem. It looks like KWallet::Wallet was designed with the assumption that it would only be accessed from processes that have a top-level QWidget and thus a window id. In our case, currently, this is not a true assumption. How should we approach this? It seems like the following are possible solutions: 1) The Wallet subsystem be changed to not require a top-level widget and window id. Not sure what the ramifications of this are or if it's desirable. 2) Our keyring conduit does some hackery to randomly pick a top-level widget like this: WId window = QApplication::topLevelWidgets().at(1)->winId(); This seems like not the right way... =;) Help, please? =:) Thanks!!! --  -[ Jason 'vanRijn' Kasper    //  http://movingparts.net ]-  -[ KDE PIM Developer         //  http://www.kde.org  ]-  -[ bash fun -> :(){ :|:&};:  //  Numbers 6:22-26 ]-