File 4_7_BRANCH.diff of Package kdepim4-runtime

--- a/BRANCH_STATUS
+++ b/BRANCH_STATUS
@@ -0,0 +1,2 @@
+current HEAD: 4201f680ca1be87f584f70807a9944a524f3d236
+git diff v4.7.2..origin/KDE/4.7
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6a72fb9..f74c6c5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,7 +38,7 @@ if (NOT DEFINED KDEPIM_RUNTIME_DEV_VERSION)
     set( KDEPIM_RUNTIME_DEV_VERSION "" )
 endif ()
 
-set( KDEPIM_RUNTIME_VERSION "4.7.1${KDEPIM_RUNTIME_DEV_VERSION}" )
+set( KDEPIM_RUNTIME_VERSION "4.7.2${KDEPIM_RUNTIME_DEV_VERSION}" )
 
 ############### search-related options ################
 option(KDEPIM_NO_NEPOMUK "Build without nepomuk dependency" FALSE)
diff --git a/agents/invitations/invitationsagent.desktop b/agents/invitations/invitationsagent.desktop
index d36b304..829d039 100644
--- a/agents/invitations/invitationsagent.desktop
+++ b/agents/invitations/invitationsagent.desktop
@@ -1,6 +1,6 @@
 [Desktop Entry]
 Name=Invitations Dispatcher Agent
-Name[ca]=Agent de fils d'invitacions
+Name[ca]=Agent distribuïdor d'invitacions
 Name[ca@valencia]=Agent de fils d'invitacions
 Name[da]=Invitationsafsendingsagent
 Name[de]=Agent zur Einladungs-Auslieferung
diff --git a/agents/maildispatcher/maildispatcheragent.desktop b/agents/maildispatcher/maildispatcheragent.desktop
index 78e9458..eaf4362 100644
--- a/agents/maildispatcher/maildispatcheragent.desktop
+++ b/agents/maildispatcher/maildispatcheragent.desktop
@@ -1,7 +1,7 @@
 [Desktop Entry]
 Name=Mail Dispatcher Agent
 Name[bs]=Dispačer mail agent
-Name[ca]=Agent de fils de correu
+Name[ca]=Agent distribuïdor de correu
 Name[ca@valencia]=Agent de fils de correu
 Name[da]=Mailafsendingsagent (MDA)
 Name[de]=Agent zur Nachrichten-Auslieferung
diff --git a/agents/maildispatcher/sendjob.cpp b/agents/maildispatcher/sendjob.cpp
index 2d59a2b..52b0e27 100644
--- a/agents/maildispatcher/sendjob.cpp
+++ b/agents/maildispatcher/sendjob.cpp
@@ -301,15 +301,20 @@ void SendJob::Private::doPostJob( bool transportSuccess, const QString &transpor
 void SendJob::Private::slotSentMailCollectionFetched(KJob* job)
 {
   Akonadi::Collection fetchCol;
-  if( job->error() ) {
+  bool ok = false;
+  if( !job->error() ) {
+    const CollectionFetchJob *const fetchJob = qobject_cast<CollectionFetchJob*>( job );
+    if ( !fetchJob->collections().isEmpty() ) {
+        fetchCol = fetchJob->collections().first();
+        ok = true;
+    }
+  }
+  if ( !ok ) {
     if ( !SpecialMailCollections::self()->hasDefaultCollection( SpecialMailCollections::SentMail ) ) {
       abortPostJob();
       return;
     }
     fetchCol = SpecialMailCollections::self()->defaultCollection( SpecialMailCollections::SentMail );
-  } else {
-    const CollectionFetchJob *const fetchJob = qobject_cast<CollectionFetchJob*>( job );
-    fetchCol = fetchJob->collections().first();
   }
   currentJob = new ItemMoveJob( item, fetchCol, q );
   QObject::connect( currentJob, SIGNAL( result( KJob* ) ), q, SLOT( postJobResult( KJob* ) ) );
diff --git a/defaultsetup/defaultcalendar-ce.desktop b/defaultsetup/defaultcalendar-ce.desktop
index 0653ea4..e3fa1da 100644
--- a/defaultsetup/defaultcalendar-ce.desktop
+++ b/defaultsetup/defaultcalendar-ce.desktop
@@ -19,6 +19,7 @@ Name[nl]=Persoonlijke agenda
 Name[pl]=Kalendarz osobisty
 Name[pt]=Calendário Pessoal
 Name[pt_BR]=Calendário pessoal
+Name[ro]=Calendar personal
 Name[ru]=Личный календарь
 Name[sr]=Лични календар
 Name[sr@ijekavian]=Лични календар
diff --git a/defaultsetup/defaultcalendar.desktop b/defaultsetup/defaultcalendar.desktop
index 8cac2ac..cd833dc 100644
--- a/defaultsetup/defaultcalendar.desktop
+++ b/defaultsetup/defaultcalendar.desktop
@@ -19,6 +19,7 @@ Name[nl]=Persoonlijke agenda
 Name[pl]=Kalendarz osobisty
 Name[pt]=Calendário Pessoal
 Name[pt_BR]=Calendário pessoal
+Name[ro]=Calendar personal
 Name[ru]=Личный календарь
 Name[sr]=Лични календар
 Name[sr@ijekavian]=Лични календар
diff --git a/migration/kmail/kmailmigrator.cpp b/migration/kmail/kmailmigrator.cpp
index 3238460..b0300a7 100644
--- a/migration/kmail/kmailmigrator.cpp
+++ b/migration/kmail/kmailmigrator.cpp
@@ -286,6 +286,11 @@ void KMailMigrator::migrateTags()
 #endif
   }
 
+  //Cleanup migrated group
+  Q_FOREACH( const QString &groupName, newlyMigratedTags ) {
+    deleteOldGroup( groupName );
+  }
+
   if ( !newlyMigratedTags.isEmpty() ) {
     tagMigrationConfig.writeEntry( "MigratedTags", migratedTags + newlyMigratedTags );
     tagMigrationConfig.sync();
@@ -437,6 +442,12 @@ void KMailMigrator::cleanupConfigFile()
   }
 
   deleteOldGroup( "FavoriteFolderView" );
+
+  if ( mConfig->hasGroup( "Internal" ) )
+  {
+    KConfigGroup cfgGroup( mConfig, "General" );
+    cfgGroup.deleteEntry( "MsgDictSizeHint" );
+  }
 }
 
 void KMailMigrator::migrateInstanceTrashFolder()
diff --git a/migration/kmail/localfolderscollectionmigrator.cpp b/migration/kmail/localfolderscollectionmigrator.cpp
index 3edc59e..ea9f163 100644
--- a/migration/kmail/localfolderscollectionmigrator.cpp
+++ b/migration/kmail/localfolderscollectionmigrator.cpp
@@ -64,23 +64,41 @@ void LocalFoldersCollectionMigrator::setKMailConfig( const KSharedConfigPtr &con
 
   const KConfigGroup group( config, QLatin1String( "General" ) );
 
-  QString name = group.readEntry( QLatin1String( "inboxFolder" ), i18nc( "mail folder name for role inbox",  "inbox" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::Inbox );
+  if ( group.hasKey( QLatin1String( "inboxFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "inboxFolder" ), i18nc( "mail folder name for role inbox",  "inbox" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::Inbox );
+  } else 
+    d->mSystemFolders.insert( QLatin1String( "inbox" ), SpecialMailCollections::Inbox );
 
-  name = group.readEntry( QLatin1String( "outboxFolder" ), i18nc( "mail folder name for role outbox",  "outbox" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::Outbox );
+  if ( group.hasKey( QLatin1String( "outboxFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "outboxFolder" ), i18nc( "mail folder name for role outbox",  "outbox" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::Outbox );
+  } else 
+    d->mSystemFolders.insert( QLatin1String( "outbox" ), SpecialMailCollections::Outbox );
 
-  name = group.readEntry( QLatin1String( "sentFolder" ), i18nc( "mail folder name for role sent-mail",  "sent-mail" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::SentMail );
+  if ( group.hasKey( QLatin1String( "sentFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "sentFolder" ), i18nc( "mail folder name for role sent-mail",  "sent-mail" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::SentMail );
+  } else 
+    d->mSystemFolders.insert( QLatin1String( "sent-mail" ), SpecialMailCollections::SentMail );
 
-  name = group.readEntry( QLatin1String( "trashFolder" ), i18nc( "mail folder name for role trash",  "trash" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::Trash );
+  if ( group.hasKey( QLatin1String( "trashFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "trashFolder" ), i18nc( "mail folder name for role trash",  "trash" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::Trash );
+  } else 
+    d->mSystemFolders.insert( QLatin1String( "trash" ), SpecialMailCollections::Trash );
 
-  name = group.readEntry( QLatin1String( "draftsFolder" ), i18nc( "mail folder name for role drafts",  "drafts" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::Drafts );
+  if ( group.hasKey( QLatin1String( "draftsFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "draftsFolder" ), i18nc( "mail folder name for role drafts",  "drafts" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::Drafts );
+  } else 
+    d->mSystemFolders.insert( QLatin1String( "drafts" ), SpecialMailCollections::Drafts );
 
-  name = group.readEntry( QLatin1String( "templatesFolder" ), i18nc( "mail folder name for role templates",  "templates" ) );
-  d->mSystemFolders.insert( name, SpecialMailCollections::Templates );
+  if ( group.hasKey( QLatin1String( "templatesFolder" ) ) ) {
+    const QString name = group.readEntry( QLatin1String( "templatesFolder" ), i18nc( "mail folder name for role templates",  "templates" ) );
+    d->mSystemFolders.insert( name, SpecialMailCollections::Templates );
+  } else
+    d->mSystemFolders.insert( QLatin1String( "templates" ), SpecialMailCollections::Templates );
 }
 
 void LocalFoldersCollectionMigrator::migrateCollection( const Collection &collection, const QString &folderId )
diff --git a/resources/imap/subscriptiondialog.cpp b/resources/imap/subscriptiondialog.cpp
index fe36b42..c1f21d5 100644
--- a/resources/imap/subscriptiondialog.cpp
+++ b/resources/imap/subscriptiondialog.cpp
@@ -100,6 +100,7 @@ SubscriptionDialog::SubscriptionDialog( QWidget *parent )
   connect( m_lineEdit, SIGNAL(textChanged(QString)),
            m_filter, SLOT(setSearchPattern(QString)) );
   filterBarLayout->addWidget( m_lineEdit );
+  m_lineEdit->setFocus();
 
 #ifndef KDEPIM_MOBILE_UI
   QCheckBox *checkBox = new QCheckBox( i18n("Subscribed only"), mainWidget );
diff --git a/resources/maildir/retrieveitemsjob.cpp b/resources/maildir/retrieveitemsjob.cpp
index 56d961f..89c3e0e 100644
--- a/resources/maildir/retrieveitemsjob.cpp
+++ b/resources/maildir/retrieveitemsjob.cpp
@@ -146,6 +146,8 @@ void RetrieveItemsJob::entriesProcessed()
   
   if ( !m_transaction ) // no jobs created here -> done
     emitResult();
+  else
+    m_transaction->commit();
 }
 
 
@@ -154,6 +156,7 @@ Akonadi::TransactionSequence* RetrieveItemsJob::transaction()
 {
   if ( !m_transaction ) {
     m_transaction = new Akonadi::TransactionSequence( this );
+    m_transaction->setAutomaticCommittingEnabled( false );
     connect( m_transaction, SIGNAL(result(KJob*)), SLOT(transactionDone(KJob*)) );
   }
   return m_transaction;
/space/work/OBS/kdf/kdepim4-runtime
openSUSE Build Service is sponsored by