Hello community, here is the log from the commit of package kdepimlibs4 for openSUSE:Factory checked in at 2011-11-14 14:18:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdepimlibs4 (Old) and /work/SRC/openSUSE:Factory/.kdepimlibs4.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdepimlibs4", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/kdepimlibs4/kdepimlibs4.changes 2011-10-21 16:31:45.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kdepimlibs4.new/kdepimlibs4.changes 2011-11-14 14:18:16.000000000 +0100 @@ -1,0 +2,6 @@ +Wed Nov 2 20:23:05 CET 2011 - [email protected] + +- update to 4.7.3 + * see http://kde.org/announcements/changelogs/changelog4_7_2to4_7_3.php for details + +------------------------------------------------------------------- Old: ---- kdepimlibs-4.7.2.tar.bz2 New: ---- kdepimlibs-4.7.3.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdepimlibs4.spec ++++++ --- /var/tmp/diff_new_pack.Bij0TA/_old 2011-11-14 14:18:17.000000000 +0100 +++ /var/tmp/diff_new_pack.Bij0TA/_new 2011-11-14 14:18:17.000000000 +0100 @@ -18,7 +18,7 @@ Name: kdepimlibs4 -Version: 4.7.2 +Version: 4.7.3 Release: 1 License: LGPLv2.1+ Summary: KDE PIM Libraries ++++++ 4_7_BRANCH.diff ++++++ --- /var/tmp/diff_new_pack.Bij0TA/_old 2011-11-14 14:18:17.000000000 +0100 +++ /var/tmp/diff_new_pack.Bij0TA/_new 2011-11-14 14:18:17.000000000 +0100 @@ -5,343 +5,3 @@ +git diff v4.7.2..origin/KDE/4.7 diff --git a/akonadi/agentbase.cpp b/akonadi/agentbase.cpp index ec28648..4f72ed5 100644 ---- a/akonadi/agentbase.cpp -+++ b/akonadi/agentbase.cpp -@@ -42,6 +42,8 @@ - #include <klocale.h> - #include <kstandarddirs.h> - -+#include <Solid/PowerManagement> -+ - #include <QtCore/QDir> - #include <QtCore/QSettings> - #include <QtCore/QTimer> -@@ -259,6 +261,8 @@ void AgentBasePrivate::init() - connect( q, SIGNAL( warning( const QString& ) ), q, SLOT( slotWarning( const QString& ) ) ); - connect( q, SIGNAL( error( const QString& ) ), q, SLOT( slotError( const QString& ) ) ); - -+ connect( Solid::PowerManagement::notifier(), SIGNAL(resumingFromSuspend()), q, SLOT(slotResumedFromSuspend()) ); -+ - // Use reference counting to allow agents to finish internal jobs when the - // agent is stopped. - KGlobal::ref(); -@@ -492,6 +496,12 @@ void AgentBasePrivate::slotNetworkStatusChange( Solid::Networking::Status stat ) - q->setOnline( stat == Solid::Networking::Unknown || stat == Solid::Networking::Connected ); - } - -+void AgentBasePrivate::slotResumedFromSuspend() -+{ -+ if ( mNeedsNetwork ) -+ slotNetworkStatusChange( Solid::Networking::status() ); -+} -+ - AgentBase::AgentBase( const QString & id ) - : d_ptr( new AgentBasePrivate( this ) ) - { -diff --git a/akonadi/agentbase.h b/akonadi/agentbase.h -index de1d838..e895516 100644 ---- a/akonadi/agentbase.h -+++ b/akonadi/agentbase.h -@@ -630,6 +630,7 @@ class AKONADI_EXPORT AgentBase : public QObject, protected QDBusContext - Q_PRIVATE_SLOT( d_func(), void slotWarning( const QString& ) ) - Q_PRIVATE_SLOT( d_func(), void slotError( const QString& ) ) - Q_PRIVATE_SLOT( d_func(), void slotNetworkStatusChange( Solid::Networking::Status ) ) -+ Q_PRIVATE_SLOT( d_func(), void slotResumedFromSuspend() ) - - //@endcond - }; -diff --git a/akonadi/agentbase_p.h b/akonadi/agentbase_p.h -index 2d8c733..34e3288 100644 ---- a/akonadi/agentbase_p.h -+++ b/akonadi/agentbase_p.h -@@ -49,6 +49,7 @@ class AgentBasePrivate : public QObject - void slotWarning( const QString& message ); - void slotError( const QString& message ); - void slotNetworkStatusChange( Solid::Networking::Status ); -+ void slotResumedFromSuspend(); - - virtual void changeProcessed(); - -diff --git a/akonadi/collectionstatisticsdelegate.cpp b/akonadi/collectionstatisticsdelegate.cpp -index e87b2b6..48a5d46 100644 ---- a/akonadi/collectionstatisticsdelegate.cpp -+++ b/akonadi/collectionstatisticsdelegate.cpp -@@ -298,8 +298,7 @@ void CollectionStatisticsDelegate::paint( QPainter *painter, - // is collapsed - if ( ( index.column() == 1 || index.column() == 2 ) ) { - -- PainterStateSaver stateSaver( painter ); -- -+ QFont savedFont = painter->font(); - QString sumText; - if ( index.column() == 1 && ( ( !expanded && unreadRecursiveCount > 0 ) || ( expanded && unreadCount > 0 ) ) ) { - QFont font = painter->font(); -@@ -315,7 +314,7 @@ void CollectionStatisticsDelegate::paint( QPainter *painter, - } - - painter->drawText( textRect, Qt::AlignRight | Qt::AlignVCenter, sumText ); -- -+ painter->setFont( savedFont ); - return; - } - -diff --git a/akonadi/contact/contactviewer.cpp b/akonadi/contact/contactviewer.cpp -index 58e1598..137e9d2 100644 ---- a/akonadi/contact/contactviewer.cpp -+++ b/akonadi/contact/contactviewer.cpp -@@ -34,6 +34,7 @@ - #include <akonadi/itemfetchscope.h> - #include <kabc/addressee.h> - #include <kcolorscheme.h> -+#include <kconfiggroup.h> - #include <kglobal.h> - #include <kicon.h> - #include <klocale.h> -@@ -93,20 +94,22 @@ class ContactViewer::Private - KIcon( QLatin1String( "document-open-remote" ) ).pixmap( QSize( 16, 16 ) ) ); - - #ifdef HAVE_PRISON -- { -- KABC::VCardConverter converter; -- KABC::Addressee addr(mCurrentContact); -- addr.setPhoto(KABC::Picture()); -- addr.setLogo(KABC::Picture()); -- const QString data = QString::fromUtf8( converter.createVCard( addr ) ); -- mQRCode->setData( data ); -- mDataMatrix->setData( data ); -- mBrowser->document()->addResource( QTextDocument::ImageResource, -- QUrl( QLatin1String( "qrcode" ) ), -- mQRCode->toImage( QSizeF(50,50) ) ); -- mBrowser->document()->addResource( QTextDocument::ImageResource, -+ KConfig config( QLatin1String( "akonadi_contactrc" ) ); -+ KConfigGroup group( &config, QLatin1String( "View" ) ); -+ if ( group.readEntry( "QRCodes", true ) ) { -+ KABC::VCardConverter converter; -+ KABC::Addressee addr(mCurrentContact); -+ addr.setPhoto(KABC::Picture()); -+ addr.setLogo(KABC::Picture()); -+ const QString data = QString::fromUtf8( converter.createVCard( addr ) ); -+ mQRCode->setData( data ); -+ mDataMatrix->setData( data ); -+ mBrowser->document()->addResource( QTextDocument::ImageResource, -+ QUrl( QLatin1String( "qrcode" ) ), -+ mQRCode->toImage( QSizeF(50,50) ) ); -+ mBrowser->document()->addResource( QTextDocument::ImageResource, - QUrl( QLatin1String( "datamatrix" ) ), -- mDataMatrix->toImage( QSizeF(50,50) ) ); -+ mDataMatrix->toImage( QSizeF(50,50) ) ); - } - #endif // HAVE_PRISON - -diff --git a/akonadi/contact/standardcontactformatter.cpp b/akonadi/contact/standardcontactformatter.cpp -index b649488..65111de 100644 ---- a/akonadi/contact/standardcontactformatter.cpp -+++ b/akonadi/contact/standardcontactformatter.cpp -@@ -24,6 +24,7 @@ - #include <akonadi/item.h> - #include <kabc/addressee.h> - #include <kcolorscheme.h> -+#include <kconfiggroup.h> - #include <kglobal.h> - #include <klocale.h> - #include <kstringhandler.h> -@@ -263,14 +264,18 @@ QString StandardContactFormatter::toHtml( HtmlForm form ) const - strAddr.append( QString::fromLatin1( "</table>" ) ); - - #ifdef HAVE_PRISON -- strAddr.append( QString::fromLatin1( -- "<p align=\"center\">" -- "<img src=\"%1\" vspace=\"1\">" -- "<img src=\"%2\" vspace=\"1\">" -- "</p>" -- ) -+ KConfig config( QLatin1String( "akonadi_contactrc" ) ); -+ KConfigGroup group( &config, QLatin1String( "View" ) ); -+ if ( group.readEntry( "QRCodes", true ) ) { -+ strAddr.append( QString::fromLatin1( -+ "<p align=\"center\">" -+ "<img src=\"%1\" vspace=\"1\">" -+ "<img src=\"%2\" vspace=\"1\">" -+ "</p>" -+ ) - .arg( QLatin1String( "datamatrix" ) ) - .arg( QLatin1String( "qrcode" ) ) ); -+ } - #endif // HAVE_PRISON - - strAddr.append( QString::fromLatin1( "</div>\n" ) ); -diff --git a/akonadi/entitytreemodel_p.cpp b/akonadi/entitytreemodel_p.cpp -index 1fbdf73..fe10617 100644 ---- a/akonadi/entitytreemodel_p.cpp -+++ b/akonadi/entitytreemodel_p.cpp -@@ -261,6 +261,8 @@ void EntityTreeModelPrivate::agentInstanceAdvancedStatusChanged( const QString&, - - const Collection::Id collectionId = status.value( QLatin1String( "collectionId" ) ).toLongLong(); - const uint percent = status.value( QLatin1String( "percent" ) ).toUInt(); -+ if ( m_collectionSyncProgress.value( collectionId ) == percent ) -+ return; - m_collectionSyncProgress.insert( collectionId, percent ); - - const QModelIndex collectionIndex = indexForCollection( Collection( collectionId ) ); -@@ -268,6 +270,8 @@ void EntityTreeModelPrivate::agentInstanceAdvancedStatusChanged( const QString&, - return; - - Q_Q( EntityTreeModel ); -+ // This is really slow (80 levels of method calls in proxy models...), and called -+ // very often during an imap sync... - q->dataChanged( collectionIndex, collectionIndex ); - } - -diff --git a/akonadi/favoritecollectionsmodel.cpp b/akonadi/favoritecollectionsmodel.cpp -index 92f9449..7ad6364 100644 ---- a/akonadi/favoritecollectionsmodel.cpp -+++ b/akonadi/favoritecollectionsmodel.cpp -@@ -74,15 +74,18 @@ class FavoriteCollectionsModel::Private - updateSelection(); - } - -+ void updateSelectionId( const Collection::Id &collectionId ) -+ { -+ const QModelIndex index = EntityTreeModel::modelIndexForCollection( q->sourceModel(), Collection( collectionId ) ); -+ -+ if ( index.isValid() ) -+ q->selectionModel()->select( index, QItemSelectionModel::Select ); -+ } -+ - void updateSelection() - { - foreach ( const Collection::Id &collectionId, collectionIds ) { -- const QModelIndex index = EntityTreeModel::modelIndexForCollection( q->sourceModel(), Collection( collectionId ) ); -- -- if ( !index.isValid() ) -- continue; -- -- q->selectionModel()->select( index, QItemSelectionModel::Select ); -+ updateSelectionId( collectionId ); - } - } - -@@ -125,11 +128,9 @@ FavoriteCollectionsModel::FavoriteCollectionsModel( QAbstractItemModel *source, - setSourceModel( source ); - setFilterBehavior( ExactSelection ); - -- connect( source, SIGNAL( modelReset() ), this, SLOT( clearAndUpdateSelection() ) ); -- connect( source, SIGNAL( rowsInserted( const QModelIndex&, int, int ) ), this, SLOT( updateSelection() ) ); -- - d->loadConfig(); -- d->clearAndUpdateSelection(); -+ connect( source, SIGNAL(modelReset()), this, SLOT(clearAndUpdateSelection()) ); -+ connect( source, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(updateSelection()) ); - } - - FavoriteCollectionsModel::~FavoriteCollectionsModel() -@@ -151,7 +152,7 @@ void FavoriteCollectionsModel::setCollections( const Collection::List &collectio - void FavoriteCollectionsModel::addCollection( const Collection &collection ) - { - d->collectionIds << collection.id(); -- d->updateSelection(); -+ d->updateSelectionId(collection.id()); - d->saveConfig(); - } - -diff --git a/akonadi/transactionsequence.cpp b/akonadi/transactionsequence.cpp -index e7c8d53..00aed07 100644 ---- a/akonadi/transactionsequence.cpp -+++ b/akonadi/transactionsequence.cpp -@@ -87,8 +87,10 @@ bool TransactionSequence::addSubjob(KJob * job) - - // TODO KDE5: remove property hack once SpecialCollectionsRequestJob has been fixed - if ( d->mState == TransactionSequencePrivate::Idle && !property( "transactionsDisabled" ).toBool() ) { -- d->mState = TransactionSequencePrivate::Running; -+ d->mState = TransactionSequencePrivate::Running; // needs to be set before creating the transaction job to avoid infinite recursion - new TransactionBeginJob( this ); -+ } else { -+ d->mState = TransactionSequencePrivate::Running; - } - return Job::addSubjob( job ); - } -@@ -107,6 +109,10 @@ void TransactionSequence::slotResult(KJob * job) - Job::removeSubjob( job ); - - if ( !hasSubjobs() && d->mState == TransactionSequencePrivate::WaitingForSubjobs ) { -+ if ( property( "transactionsDisabled" ).toBool() ) { -+ emitResult(); -+ return; -+ } - d->mState = TransactionSequencePrivate::Committing; - TransactionCommitJob *job = new TransactionCommitJob( this ); - connect( job, SIGNAL( result( KJob* ) ), SLOT( commitResult( KJob* ) ) ); -@@ -124,6 +130,10 @@ void TransactionSequence::slotResult(KJob * job) - clearSubjobs(); - - if ( d->mState == TransactionSequencePrivate::Running || d->mState == TransactionSequencePrivate::WaitingForSubjobs ) { -+ if ( property( "transactionsDisabled" ).toBool() ) { -+ emitResult(); -+ return; -+ } - d->mState = TransactionSequencePrivate::RollingBack; - TransactionRollbackJob *job = new TransactionRollbackJob( this ); - connect( job, SIGNAL( result( KJob* ) ), SLOT( rollbackResult( KJob* ) ) ); -@@ -149,6 +159,10 @@ void TransactionSequence::commit() - } - - if ( subjobs().isEmpty() ) { -+ if ( property( "transactionsDisabled" ).toBool() ) { -+ emitResult(); -+ return; -+ } - if ( !error() ) { - d->mState = TransactionSequencePrivate::Committing; - TransactionCommitJob *job = new TransactionCommitJob( this ); -diff --git a/akonadi/typepluginloader.cpp b/akonadi/typepluginloader.cpp -index 8dcb337..a80ca98 100644 ---- a/akonadi/typepluginloader.cpp -+++ b/akonadi/typepluginloader.cpp -@@ -240,12 +240,15 @@ class PluginRegistry - QRegExp rx( QLatin1String( "(.+)@(.+)" ) ); - Q_FOREACH ( const QString & name, names ) - if ( rx.exactMatch( name ) ) { -- const QString mimeType = rx.cap(1); -- const QByteArray classType = rx.cap(2).toLatin1(); -- QMap<QString,MimeTypeEntry>::iterator it = map.find( mimeType ); -- if ( it == map.end() ) -- it = map.insert( mimeType, MimeTypeEntry( mimeType ) ); -- it->add( classType, PluginEntry( name ) ); -+ KMimeType::Ptr mime = KMimeType::mimeType( rx.cap(1), KMimeType::ResolveAliases ); -+ if ( mime ) { -+ const QString mimeType = mime->name(); -+ const QByteArray classType = rx.cap(2).toLatin1(); -+ QMap<QString,MimeTypeEntry>::iterator it = map.find( mimeType ); -+ if ( it == map.end() ) -+ it = map.insert( mimeType, MimeTypeEntry( mimeType ) ); -+ it->add( classType, PluginEntry( name ) ); -+ } - } else { - kDebug() << "ItemSerializerPluginLoader: " - << "name" << name << "doesn't look like mimetype@classtype" << endl; -diff --git a/kabc/plugins/ldapkio/ldapkio.desktop b/kabc/plugins/ldapkio/ldapkio.desktop -index 2d68ceb..7a4bfc2 100644 ---- a/kabc/plugins/ldapkio/ldapkio.desktop -+++ b/kabc/plugins/ldapkio/ldapkio.desktop -@@ -72,7 +72,7 @@ Comment[it]=Fornisce accesso a contatti memorizzati su un server LDAP - Comment[ja]=LDAP ディレクトリサーバに保存されている連絡先へのアクセスを提供します。 - Comment[kk]=LDAP каталог серверінде сақталған контакттарға қатынау мүмкіндігін береді. - Comment[km]=ផ្ដល់ការចូលដំណើរការទៅទំនាក់ទំនងដែលបានផ្ទុកនៅលើម៉ាស៊ីនបម្រើថត LDAP --Comment[lt]=Suteikia prieigą prie kontaktų, saugomų LDAP serveryje -+Comment[lt]=Suteikia prieigą prie kontaktų, saugomų LDAP aplankų serveryje - Comment[lv]=Nodrošina piekļuvi kontaktiem, kas glabājas LDAP direktorija serverī - Comment[nb]=Gir tilgang til kontakter lagret på en LDAP-katalogtjener - Comment[nds]=Stellt Togriep op Kontakten praat, de op en LDAP-Vertelenserver wohrt warrt -diff --git a/mailtransport/sendmailconfigwidget.cpp b/mailtransport/sendmailconfigwidget.cpp -index 241f4f3..07f9beb 100644 ---- a/mailtransport/sendmailconfigwidget.cpp -+++ b/mailtransport/sendmailconfigwidget.cpp -@@ -58,6 +58,7 @@ void SendmailConfigWidget::init() - - d->ui.setupUi( this ); - d->ui.kcfg_host->setMode( KFile::File|KFile::ExistingOnly|KFile::LocalOnly ); -+ d->ui.kcfg_host->setFocus(); - d->manager->addWidget( this ); // otherwise it doesn't find out about these widgets - d->manager->updateWidgets(); - -/space/work/OBS/kdf/kdepimlibs4 ++++++ kdepimlibs-4.7.2.tar.bz2 -> kdepimlibs-4.7.3.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/CMakeLists.txt new/kdepimlibs-4.7.3/CMakeLists.txt --- old/kdepimlibs-4.7.2/CMakeLists.txt 2011-10-02 15:48:21.000000000 +0200 +++ new/kdepimlibs-4.7.3/CMakeLists.txt 2011-10-28 09:48:14.000000000 +0200 @@ -7,7 +7,7 @@ ############### The kdepimlibs version (used e.g. in KdepimLibsConfig.cmake) ############### set(KDEPIMLIBS_VERSION_MAJOR 4) set(KDEPIMLIBS_VERSION_MINOR 7) -set(KDEPIMLIBS_VERSION_PATCH 2) +set(KDEPIMLIBS_VERSION_PATCH 3) set(KDEPIMLIBS_VERSION ${KDEPIMLIBS_VERSION_MAJOR}.${KDEPIMLIBS_VERSION_MINOR}.${KDEPIMLIBS_VERSION_PATCH}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/agentbase.cpp new/kdepimlibs-4.7.3/akonadi/agentbase.cpp --- old/kdepimlibs-4.7.2/akonadi/agentbase.cpp 2011-09-26 11:37:14.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/agentbase.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -42,6 +42,8 @@ #include <klocale.h> #include <kstandarddirs.h> +#include <Solid/PowerManagement> + #include <QtCore/QDir> #include <QtCore/QSettings> #include <QtCore/QTimer> @@ -259,6 +261,8 @@ connect( q, SIGNAL( warning( const QString& ) ), q, SLOT( slotWarning( const QString& ) ) ); connect( q, SIGNAL( error( const QString& ) ), q, SLOT( slotError( const QString& ) ) ); + connect( Solid::PowerManagement::notifier(), SIGNAL(resumingFromSuspend()), q, SLOT(slotResumedFromSuspend()) ); + // Use reference counting to allow agents to finish internal jobs when the // agent is stopped. KGlobal::ref(); @@ -492,6 +496,12 @@ q->setOnline( stat == Solid::Networking::Unknown || stat == Solid::Networking::Connected ); } +void AgentBasePrivate::slotResumedFromSuspend() +{ + if ( mNeedsNetwork ) + slotNetworkStatusChange( Solid::Networking::status() ); +} + AgentBase::AgentBase( const QString & id ) : d_ptr( new AgentBasePrivate( this ) ) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/agentbase.h new/kdepimlibs-4.7.3/akonadi/agentbase.h --- old/kdepimlibs-4.7.2/akonadi/agentbase.h 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/agentbase.h 2011-10-28 09:41:42.000000000 +0200 @@ -630,6 +630,7 @@ Q_PRIVATE_SLOT( d_func(), void slotWarning( const QString& ) ) Q_PRIVATE_SLOT( d_func(), void slotError( const QString& ) ) Q_PRIVATE_SLOT( d_func(), void slotNetworkStatusChange( Solid::Networking::Status ) ) + Q_PRIVATE_SLOT( d_func(), void slotResumedFromSuspend() ) //@endcond }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/agentbase_p.h new/kdepimlibs-4.7.3/akonadi/agentbase_p.h --- old/kdepimlibs-4.7.2/akonadi/agentbase_p.h 2011-09-26 11:37:14.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/agentbase_p.h 2011-10-28 09:41:42.000000000 +0200 @@ -49,6 +49,7 @@ void slotWarning( const QString& message ); void slotError( const QString& message ); void slotNetworkStatusChange( Solid::Networking::Status ); + void slotResumedFromSuspend(); virtual void changeProcessed(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/cachepolicypage.cpp new/kdepimlibs-4.7.3/akonadi/cachepolicypage.cpp --- old/kdepimlibs-4.7.2/akonadi/cachepolicypage.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/cachepolicypage.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -42,6 +42,7 @@ void slotIntervalValueChanged( int ); void slotCacheValueChanged( int ); + void slotRetrievalOptionsGroupBoxDisabled( bool disable ); Ui::CachePolicyPage* mUi; }; @@ -56,6 +57,16 @@ mUi->localCacheTimeout->setSuffix( QLatin1Char( ' ' ) + i18np( "minute", "minutes", interval ) ); } +void CachePolicyPage::Private::slotRetrievalOptionsGroupBoxDisabled( bool disable ) +{ + mUi->retrievalOptionsGroupBox->setDisabled( disable ); + if ( !disable ) { + mUi->label->setEnabled( mUi->retrieveOnlyHeaders->isChecked() ); + mUi->localCacheTimeout->setEnabled( mUi->retrieveOnlyHeaders->isChecked() ); + } +} + + CachePolicyPage::CachePolicyPage( QWidget *parent, GuiMode mode ) : CollectionPropertiesPage( parent ), d( new Private ) @@ -64,11 +75,12 @@ setPageTitle( i18n( "Retrieval" ) ); d->mUi->setupUi( this ); - connect( d->mUi->checkInterval, SIGNAL( valueChanged( int ) ), - SLOT( slotIntervalValueChanged( int ) ) ); - connect( d->mUi->localCacheTimeout, SIGNAL( valueChanged( int ) ), - SLOT( slotCacheValueChanged( int ) ) ); - + connect( d->mUi->checkInterval, SIGNAL(valueChanged(int)), + SLOT(slotIntervalValueChanged(int)) ); + connect( d->mUi->localCacheTimeout, SIGNAL(valueChanged(int)), + SLOT(slotCacheValueChanged(int)) ); + connect( d->mUi->inherit, SIGNAL(toggled(bool)), + SLOT(slotRetrievalOptionsGroupBoxDisabled(bool))); if ( mode == AdvancedMode ) { d->mUi->stackedWidget->setCurrentWidget( d->mUi->rawPage ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/cachepolicypage.h new/kdepimlibs-4.7.3/akonadi/cachepolicypage.h --- old/kdepimlibs-4.7.2/akonadi/cachepolicypage.h 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/cachepolicypage.h 2011-10-28 09:41:42.000000000 +0200 @@ -88,6 +88,8 @@ Q_PRIVATE_SLOT( d, void slotIntervalValueChanged( int ) ) Q_PRIVATE_SLOT( d, void slotCacheValueChanged( int ) ) + Q_PRIVATE_SLOT( d, void slotRetrievalOptionsGroupBoxDisabled( bool ) ) + //@endcond }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/cachepolicypage.ui new/kdepimlibs-4.7.3/akonadi/cachepolicypage.ui --- old/kdepimlibs-4.7.2/akonadi/cachepolicypage.ui 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/cachepolicypage.ui 2011-10-28 09:41:42.000000000 +0200 @@ -282,21 +282,5 @@ </hint> </hints> </connection> - <connection> - <sender>inherit</sender> - <signal>toggled(bool)</signal> - <receiver>retrievalOptionsGroupBox</receiver> - <slot>setDisabled(bool)</slot> - <hints> - <hint type="sourcelabel"> - <x>304</x> - <y>18</y> - </hint> - <hint type="destinationlabel"> - <x>300</x> - <y>266</y> - </hint> - </hints> - </connection> </connections> </ui> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/collectionstatisticsdelegate.cpp new/kdepimlibs-4.7.3/akonadi/collectionstatisticsdelegate.cpp --- old/kdepimlibs-4.7.2/akonadi/collectionstatisticsdelegate.cpp 2011-08-22 15:22:19.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/collectionstatisticsdelegate.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -298,8 +298,7 @@ // is collapsed if ( ( index.column() == 1 || index.column() == 2 ) ) { - PainterStateSaver stateSaver( painter ); - + QFont savedFont = painter->font(); QString sumText; if ( index.column() == 1 && ( ( !expanded && unreadRecursiveCount > 0 ) || ( expanded && unreadCount > 0 ) ) ) { QFont font = painter->font(); @@ -315,7 +314,7 @@ } painter->drawText( textRect, Qt::AlignRight | Qt::AlignVCenter, sumText ); - + painter->setFont( savedFont ); return; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/contact/contactviewer.cpp new/kdepimlibs-4.7.3/akonadi/contact/contactviewer.cpp --- old/kdepimlibs-4.7.2/akonadi/contact/contactviewer.cpp 2011-08-22 15:22:19.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/contact/contactviewer.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -34,6 +34,7 @@ #include <akonadi/itemfetchscope.h> #include <kabc/addressee.h> #include <kcolorscheme.h> +#include <kconfiggroup.h> #include <kglobal.h> #include <kicon.h> #include <klocale.h> @@ -93,20 +94,22 @@ KIcon( QLatin1String( "document-open-remote" ) ).pixmap( QSize( 16, 16 ) ) ); #ifdef HAVE_PRISON - { - KABC::VCardConverter converter; - KABC::Addressee addr(mCurrentContact); - addr.setPhoto(KABC::Picture()); - addr.setLogo(KABC::Picture()); - const QString data = QString::fromUtf8( converter.createVCard( addr ) ); - mQRCode->setData( data ); - mDataMatrix->setData( data ); - mBrowser->document()->addResource( QTextDocument::ImageResource, - QUrl( QLatin1String( "qrcode" ) ), - mQRCode->toImage( QSizeF(50,50) ) ); - mBrowser->document()->addResource( QTextDocument::ImageResource, + KConfig config( QLatin1String( "akonadi_contactrc" ) ); + KConfigGroup group( &config, QLatin1String( "View" ) ); + if ( group.readEntry( "QRCodes", true ) ) { + KABC::VCardConverter converter; + KABC::Addressee addr(mCurrentContact); + addr.setPhoto(KABC::Picture()); + addr.setLogo(KABC::Picture()); + const QString data = QString::fromUtf8( converter.createVCard( addr ) ); + mQRCode->setData( data ); + mDataMatrix->setData( data ); + mBrowser->document()->addResource( QTextDocument::ImageResource, + QUrl( QLatin1String( "qrcode" ) ), + mQRCode->toImage( QSizeF(50,50) ) ); + mBrowser->document()->addResource( QTextDocument::ImageResource, QUrl( QLatin1String( "datamatrix" ) ), - mDataMatrix->toImage( QSizeF(50,50) ) ); + mDataMatrix->toImage( QSizeF(50,50) ) ); } #endif // HAVE_PRISON diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/contact/standardcontactformatter.cpp new/kdepimlibs-4.7.3/akonadi/contact/standardcontactformatter.cpp --- old/kdepimlibs-4.7.2/akonadi/contact/standardcontactformatter.cpp 2011-06-22 16:28:23.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/contact/standardcontactformatter.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -24,6 +24,7 @@ #include <akonadi/item.h> #include <kabc/addressee.h> #include <kcolorscheme.h> +#include <kconfiggroup.h> #include <kglobal.h> #include <klocale.h> #include <kstringhandler.h> @@ -263,14 +264,18 @@ strAddr.append( QString::fromLatin1( "</table>" ) ); #ifdef HAVE_PRISON - strAddr.append( QString::fromLatin1( - "<p align=\"center\">" - "<img src=\"%1\" vspace=\"1\">" - "<img src=\"%2\" vspace=\"1\">" - "</p>" - ) + KConfig config( QLatin1String( "akonadi_contactrc" ) ); + KConfigGroup group( &config, QLatin1String( "View" ) ); + if ( group.readEntry( "QRCodes", true ) ) { + strAddr.append( QString::fromLatin1( + "<p align=\"center\">" + "<img src=\"%1\" vspace=\"1\">" + "<img src=\"%2\" vspace=\"1\">" + "</p>" + ) .arg( QLatin1String( "datamatrix" ) ) .arg( QLatin1String( "qrcode" ) ) ); + } #endif // HAVE_PRISON strAddr.append( QString::fromLatin1( "</div>\n" ) ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/dragdropmanager.cpp new/kdepimlibs-4.7.3/akonadi/dragdropmanager.cpp --- old/kdepimlibs-4.7.2/akonadi/dragdropmanager.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/dragdropmanager.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -42,7 +42,6 @@ Akonadi::Collection DragDropManager::currentDropTarget( QDropEvent *event ) const { const QModelIndex index = m_view->indexAt( event->pos() ); - Collection collection = m_view->model()->data( index, EntityTreeModel::CollectionRole ).value<Collection>(); if ( !collection.isValid() ) { const Item item = m_view->model()->data( index, EntityTreeModel::ItemRole ).value<Item>(); @@ -97,12 +96,25 @@ return false; } -bool DragDropManager::processDropEvent( QDropEvent *event ) +bool DragDropManager::processDropEvent( QDropEvent *event, bool dropOnItem ) { const Collection targetCollection = currentDropTarget( event ); if ( !targetCollection.isValid() ) return false; + const QStringList supportedContentTypes = targetCollection.contentMimeTypes(); + + const QMimeData *data = event->mimeData(); + const KUrl::List urls = KUrl::List::fromMimeData( data ); + foreach ( const KUrl &url, urls ) { + const Collection collection = Collection::fromUrl( url ); + if( !collection.isValid() ) { + if ( !dropOnItem ) { + return false; + } + } + } + int actionCount = 0; Qt::DropAction defaultAction; // TODO check if the source supports moving diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/dragdropmanager_p.h new/kdepimlibs-4.7.3/akonadi/dragdropmanager_p.h --- old/kdepimlibs-4.7.2/akonadi/dragdropmanager_p.h 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/dragdropmanager_p.h 2011-10-28 09:41:42.000000000 +0200 @@ -44,7 +44,7 @@ * * @returns True if the event should be further processed, and false otherwise. */ - bool processDropEvent( QDropEvent *event ); + bool processDropEvent( QDropEvent *event, bool dropOnItem = true ); /** * Starts a drag if possible and sets the appropriate supported actions to allow moves. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/entitytreemodel_p.cpp new/kdepimlibs-4.7.3/akonadi/entitytreemodel_p.cpp --- old/kdepimlibs-4.7.2/akonadi/entitytreemodel_p.cpp 2011-10-02 14:47:53.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/entitytreemodel_p.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -261,6 +261,8 @@ const Collection::Id collectionId = status.value( QLatin1String( "collectionId" ) ).toLongLong(); const uint percent = status.value( QLatin1String( "percent" ) ).toUInt(); + if ( m_collectionSyncProgress.value( collectionId ) == percent ) + return; m_collectionSyncProgress.insert( collectionId, percent ); const QModelIndex collectionIndex = indexForCollection( Collection( collectionId ) ); @@ -268,6 +270,8 @@ return; Q_Q( EntityTreeModel ); + // This is really slow (80 levels of method calls in proxy models...), and called + // very often during an imap sync... q->dataChanged( collectionIndex, collectionIndex ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/entitytreeview.cpp new/kdepimlibs-4.7.3/akonadi/entitytreeview.cpp --- old/kdepimlibs-4.7.2/akonadi/entitytreeview.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/entitytreeview.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -249,10 +249,9 @@ void EntityTreeView::dropEvent( QDropEvent * event ) { - if ( d->mDragDropManager->processDropEvent( event ) ) - QTreeView::dropEvent( event ); - d->mDragExpandTimer.stop(); + if ( d->mDragDropManager->processDropEvent( event, ( dropIndicatorPosition () == QAbstractItemView::OnItem ) ) ) + QTreeView::dropEvent( event ); } #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/favoritecollectionsmodel.cpp new/kdepimlibs-4.7.3/akonadi/favoritecollectionsmodel.cpp --- old/kdepimlibs-4.7.2/akonadi/favoritecollectionsmodel.cpp 2011-07-19 23:33:40.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/favoritecollectionsmodel.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -74,15 +74,18 @@ updateSelection(); } + void updateSelectionId( const Collection::Id &collectionId ) + { + const QModelIndex index = EntityTreeModel::modelIndexForCollection( q->sourceModel(), Collection( collectionId ) ); + + if ( index.isValid() ) + q->selectionModel()->select( index, QItemSelectionModel::Select ); + } + void updateSelection() { foreach ( const Collection::Id &collectionId, collectionIds ) { - const QModelIndex index = EntityTreeModel::modelIndexForCollection( q->sourceModel(), Collection( collectionId ) ); - - if ( !index.isValid() ) - continue; - - q->selectionModel()->select( index, QItemSelectionModel::Select ); + updateSelectionId( collectionId ); } } @@ -125,11 +128,9 @@ setSourceModel( source ); setFilterBehavior( ExactSelection ); - connect( source, SIGNAL( modelReset() ), this, SLOT( clearAndUpdateSelection() ) ); - connect( source, SIGNAL( rowsInserted( const QModelIndex&, int, int ) ), this, SLOT( updateSelection() ) ); - d->loadConfig(); - d->clearAndUpdateSelection(); + connect( source, SIGNAL(modelReset()), this, SLOT(clearAndUpdateSelection()) ); + connect( source, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(updateSelection()) ); } FavoriteCollectionsModel::~FavoriteCollectionsModel() @@ -151,7 +152,7 @@ void FavoriteCollectionsModel::addCollection( const Collection &collection ) { d->collectionIds << collection.id(); - d->updateSelection(); + d->updateSelectionId(collection.id()); d->saveConfig(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/specialcollectionshelperjobs.cpp new/kdepimlibs-4.7.3/akonadi/specialcollectionshelperjobs.cpp --- old/kdepimlibs-4.7.2/akonadi/specialcollectionshelperjobs.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/specialcollectionshelperjobs.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -602,7 +602,7 @@ void GetLockJob::Private::timeout() { - kWarning() << "Timeout trying to get lock."; + kWarning() << "Timeout trying to get lock. Check who has acquired the name" << DBUS_SERVICE_NAME << "on DBus, using qdbus or qdbusviewer."; q->setError( Job::Unknown ); q->setErrorText( i18n( "Timeout trying to get lock." ) ); q->emitResult(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/subscriptiondialog.cpp new/kdepimlibs-4.7.3/akonadi/subscriptiondialog.cpp --- old/kdepimlibs-4.7.2/akonadi/subscriptiondialog.cpp 2011-07-19 23:33:40.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/subscriptiondialog.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -133,6 +133,7 @@ filterTreeViewModel->setFilterCaseSensitivity( Qt::CaseInsensitive ); d->collectionView = new QTreeView( mainWidget ); + d->collectionView->setEditTriggers( QAbstractItemView::NoEditTriggers ); d->collectionView->header()->hide(); if ( !mimetypes.isEmpty() ) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/transactionsequence.cpp new/kdepimlibs-4.7.3/akonadi/transactionsequence.cpp --- old/kdepimlibs-4.7.2/akonadi/transactionsequence.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/transactionsequence.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -87,8 +87,10 @@ // TODO KDE5: remove property hack once SpecialCollectionsRequestJob has been fixed if ( d->mState == TransactionSequencePrivate::Idle && !property( "transactionsDisabled" ).toBool() ) { - d->mState = TransactionSequencePrivate::Running; + d->mState = TransactionSequencePrivate::Running; // needs to be set before creating the transaction job to avoid infinite recursion new TransactionBeginJob( this ); + } else { + d->mState = TransactionSequencePrivate::Running; } return Job::addSubjob( job ); } @@ -107,6 +109,10 @@ Job::removeSubjob( job ); if ( !hasSubjobs() && d->mState == TransactionSequencePrivate::WaitingForSubjobs ) { + if ( property( "transactionsDisabled" ).toBool() ) { + emitResult(); + return; + } d->mState = TransactionSequencePrivate::Committing; TransactionCommitJob *job = new TransactionCommitJob( this ); connect( job, SIGNAL( result( KJob* ) ), SLOT( commitResult( KJob* ) ) ); @@ -124,6 +130,10 @@ clearSubjobs(); if ( d->mState == TransactionSequencePrivate::Running || d->mState == TransactionSequencePrivate::WaitingForSubjobs ) { + if ( property( "transactionsDisabled" ).toBool() ) { + emitResult(); + return; + } d->mState = TransactionSequencePrivate::RollingBack; TransactionRollbackJob *job = new TransactionRollbackJob( this ); connect( job, SIGNAL( result( KJob* ) ), SLOT( rollbackResult( KJob* ) ) ); @@ -149,6 +159,10 @@ } if ( subjobs().isEmpty() ) { + if ( property( "transactionsDisabled" ).toBool() ) { + emitResult(); + return; + } if ( !error() ) { d->mState = TransactionSequencePrivate::Committing; TransactionCommitJob *job = new TransactionCommitJob( this ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/akonadi/typepluginloader.cpp new/kdepimlibs-4.7.3/akonadi/typepluginloader.cpp --- old/kdepimlibs-4.7.2/akonadi/typepluginloader.cpp 2011-05-20 22:31:22.000000000 +0200 +++ new/kdepimlibs-4.7.3/akonadi/typepluginloader.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -240,12 +240,15 @@ QRegExp rx( QLatin1String( "(.+)@(.+)" ) ); Q_FOREACH ( const QString & name, names ) if ( rx.exactMatch( name ) ) { - const QString mimeType = rx.cap(1); - const QByteArray classType = rx.cap(2).toLatin1(); - QMap<QString,MimeTypeEntry>::iterator it = map.find( mimeType ); - if ( it == map.end() ) - it = map.insert( mimeType, MimeTypeEntry( mimeType ) ); - it->add( classType, PluginEntry( name ) ); + KMimeType::Ptr mime = KMimeType::mimeType( rx.cap(1), KMimeType::ResolveAliases ); + if ( mime ) { + const QString mimeType = mime->name(); + const QByteArray classType = rx.cap(2).toLatin1(); + QMap<QString,MimeTypeEntry>::iterator it = map.find( mimeType ); + if ( it == map.end() ) + it = map.insert( mimeType, MimeTypeEntry( mimeType ) ); + it->add( classType, PluginEntry( name ) ); + } } else { kDebug() << "ItemSerializerPluginLoader: " << "name" << name << "doesn't look like mimetype@classtype" << endl; Files old/kdepimlibs-4.7.2/doc/kcontrol/kresources/index.cache.bz2 and new/kdepimlibs-4.7.3/doc/kcontrol/kresources/index.cache.bz2 differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/kabc/plugins/file/file.desktop new/kdepimlibs-4.7.3/kabc/plugins/file/file.desktop --- old/kdepimlibs-4.7.2/kabc/plugins/file/file.desktop 2011-07-19 23:33:40.000000000 +0200 +++ new/kdepimlibs-4.7.3/kabc/plugins/file/file.desktop 2011-10-28 09:41:42.000000000 +0200 @@ -61,7 +61,7 @@ Comment[de]=Ermöglicht Zugriff auf Kontakte, die in einer einzigen Datei lokal gespeichert sind. Unterstützt Standard-VCard-Dateien und andere Formate abhängig von den verfügbaren Modulen. Comment[el]=Προσφέρει πρόσβαση σε επαφές, αποθηκευμένες σε ένα τοπικό αρχείο. Υποστηρίζει τυπικά αρχεία VCard και άλλες μορφές αρχείων ανάλογα με τη διαθεσιμότητα των πρόσθετων. Comment[en_GB]=Provides access to contacts stored in a single local file. Supports standard VCard files and other formats depending on available plugins. -Comment[es]=Provee acceso a los contactos almacenados en un único archivo local. Admite archivos VCard estándar y otros formatos dependiendo de la disponibilidad de los componentes. +Comment[es]=Provee acceso a los contactos almacenados en un único archivo local. Admite archivos VCard estándar y otros formatos dependiendo de la disponibilidad de los complementos. Comment[et]=Võimaldab kasutada kohalikku faili salvestatud kontakte. Toetab standardseid VCard-faile ja teisi vorminguid sõltuvalt pluginate olemasolust. Comment[fi]=Tarjoaa pääsyn yksittäiseen paikalliseen tiedostoon tallennettuihin yhteystietoihin. Tukee vakiomuotoisia vCard-tiedostoja sekä muita tiedostomuotoja liitännäisistä riippuen. Comment[fr]=Fournit l'accès aux contacts stockés dans un seul fichier local. Le format VCard et d'autres formats sont pris en charge en fonction des modules externes disponibles. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/kabc/plugins/ldapkio/ldapkio.desktop new/kdepimlibs-4.7.3/kabc/plugins/ldapkio/ldapkio.desktop --- old/kdepimlibs-4.7.2/kabc/plugins/ldapkio/ldapkio.desktop 2011-08-22 15:22:19.000000000 +0200 +++ new/kdepimlibs-4.7.3/kabc/plugins/ldapkio/ldapkio.desktop 2011-10-28 09:41:42.000000000 +0200 @@ -72,7 +72,7 @@ Comment[ja]=LDAP ディレクトリサーバに保存されている連絡先へのアクセスを提供します。 Comment[kk]=LDAP каталог серверінде сақталған контакттарға қатынау мүмкіндігін береді. Comment[km]=ផ្ដល់ការចូលដំណើរការទៅទំនាក់ទំនងដែលបានផ្ទុកនៅលើម៉ាស៊ីនបម្រើថត LDAP -Comment[lt]=Suteikia prieigą prie kontaktų, saugomų LDAP serveryje +Comment[lt]=Suteikia prieigą prie kontaktų, saugomų LDAP aplankų serveryje Comment[lv]=Nodrošina piekļuvi kontaktiem, kas glabājas LDAP direktorija serverī Comment[nb]=Gir tilgang til kontakter lagret på en LDAP-katalogtjener Comment[nds]=Stellt Togriep op Kontakten praat, de op en LDAP-Vertelenserver wohrt warrt diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdepimlibs-4.7.2/mailtransport/sendmailconfigwidget.cpp new/kdepimlibs-4.7.3/mailtransport/sendmailconfigwidget.cpp --- old/kdepimlibs-4.7.2/mailtransport/sendmailconfigwidget.cpp 2011-05-20 22:31:23.000000000 +0200 +++ new/kdepimlibs-4.7.3/mailtransport/sendmailconfigwidget.cpp 2011-10-28 09:41:42.000000000 +0200 @@ -58,6 +58,7 @@ d->ui.setupUi( this ); d->ui.kcfg_host->setMode( KFile::File|KFile::ExistingOnly|KFile::LocalOnly ); + d->ui.kcfg_host->setFocus(); d->manager->addWidget( this ); // otherwise it doesn't find out about these widgets d->manager->updateWidgets(); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
