diff --git a/kmkernel.cpp b/kmkernel.cpp index ef2df54e7..699f1ec8e 100644 --- a/kmkernel.cpp +++ b/kmkernel.cpp @@ -177,7 +177,7 @@ KMKernel::KMKernel (QObject *parent, const char *name) : mFolderCollectionMonitor = new FolderCollectionMonitor( this ); connect( mFolderCollectionMonitor->monitor(), SIGNAL(collectionMoved(Akonadi::Collection,Akonadi::Collection,Akonadi::Collection)), SLOT(slotCollectionMoved(Akonadi::Collection,Akonadi::Collection,Akonadi::Collection)) ); - + connect( mFolderCollectionMonitor->monitor(), SIGNAL(collectionRemoved(Akonadi::Collection)), SLOT(slotCollectionRemoved(Akonadi::Collection))); Akonadi::Session *session = new Akonadi::Session( "KMail Kernel ETM", this ); folderCollectionMonitor()->setSession( session ); @@ -1751,6 +1751,13 @@ void KMKernel::stopAgentInstance() } } +void KMKernel::slotCollectionRemoved(const Akonadi::Collection& col) +{ + KConfigGroup group( KMKernel::config(), MailCommon::FolderCollection::configGroupName( col ) ); + group.deleteGroup(); + group.sync(); +} + void KMKernel::slotCollectionMoved( const Akonadi::Collection &collection, const Akonadi::Collection &source, const Akonadi::Collection &destination ) { //TODO add undo/redo move collection diff --git a/kmkernel.h b/kmkernel.h index 0637f2463..97cbf34a4 100644 --- a/kmkernel.h +++ b/kmkernel.h @@ -440,7 +440,6 @@ public slots: void slotRunBackgroundTasks(); void slotConfigChanged(); - void slotCollectionMoved( const Akonadi::Collection &collection, const Akonadi::Collection &source, const Akonadi::Collection &destination ); signals: void configChanged(); @@ -464,6 +463,9 @@ private slots: void akonadiStateChanged( Akonadi::ServerManager::State ); void slotProgressItemCompletedOrCanceled( KPIM::ProgressItem * item); void instanceError(const Akonadi::AgentInstance& instance, const QString & message); + void slotCollectionMoved( const Akonadi::Collection &collection, const Akonadi::Collection &source, const Akonadi::Collection &destination ); + void slotCollectionRemoved(const Akonadi::Collection& col); + private: void migrateFromKMail1(); void openReader( bool onlyCheck );