KWallet problem for daemon process

Jason 'vanRijn' Kasper vr at
Fri Aug 17 13:03:31 BST 2007

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 

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?  =:)


 -[ Jason 'vanRijn' Kasper    // ]-
 -[ KDE PIM Developer         //  ]-
 -[ bash fun -> :(){ :|:&};:  //  Numbers 6:22-26 ]-

More information about the kde-core-devel mailing list