Hello community, here is the log from the commit of package kidentitymanagement for openSUSE:Factory checked in at 2016-01-10 13:05:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kidentitymanagement (Old) and /work/SRC/openSUSE:Factory/.kidentitymanagement.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kidentitymanagement" Changes: -------- --- /work/SRC/openSUSE:Factory/kidentitymanagement/kidentitymanagement.changes 2015-11-15 12:35:31.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.kidentitymanagement.new/kidentitymanagement.changes 2016-01-10 13:05:25.000000000 +0100 @@ -1,0 +2,14 @@ +Sun Dec 13 13:19:44 UTC 2015 - tittiatc...@gmail.com + +- Update to KDE Applications 15.12.0 + * KDE Applications 15.12.0 + * https://www.kde.org/announcements/announce-applications-15.12.0.php + * boo#958887 + + +------------------------------------------------------------------- +Fri Dec 11 01:28:16 UTC 2015 - p.drou...@gmail.com + +- Remove superfluous libpth-devel dependency + +------------------------------------------------------------------- Old: ---- kidentitymanagement-15.08.3.tar.xz New: ---- kidentitymanagement-15.12.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kidentitymanagement.spec ++++++ --- /var/tmp/diff_new_pack.qjO8kE/_old 2016-01-10 13:05:26.000000000 +0100 +++ /var/tmp/diff_new_pack.qjO8kE/_new 2016-01-10 13:05:26.000000000 +0100 @@ -17,7 +17,7 @@ Name: kidentitymanagement -Version: 15.08.3 +Version: 15.12.0 Release: 0 %define kf5_version 5.1.0 Summary: KDE PIM Libraries: Identity Management @@ -51,7 +51,6 @@ BuildRequires: libKF5AkonadiPrivate-devel >= 1.72.43 BuildRequires: libassuan-devel BuildRequires: libical-devel >= 0.42 -BuildRequires: libpth-devel BuildRequires: libxslt-devel BuildRequires: openldap2-devel BuildRequires: phonon4qt5-devel ++++++ kidentitymanagement-15.08.3.tar.xz -> kidentitymanagement-15.12.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/CMakeLists.txt new/kidentitymanagement-15.12.0/CMakeLists.txt --- old/kidentitymanagement-15.08.3/CMakeLists.txt 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/CMakeLists.txt 2015-11-07 19:06:23.000000000 +0100 @@ -3,7 +3,7 @@ project(KIdentityManagement) # ECM setup -find_package(ECM 5.12.0 CONFIG REQUIRED) +find_package(ECM 5.16.0 CONFIG REQUIRED) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) include(GenerateExportHeader) @@ -15,11 +15,11 @@ include(KDEInstallDirs) include(KDECMakeSettings) include(KDEFrameworkCompilerSettings) +include(ECMQtDeclareLoggingCategory) - -set(KF5_VERSION "5.12.0") -set(KIDENTITYMANAGEMENT_LIB_VERSION "4.81.0") -set(PIMTEXTEDIT_LIB_VERSION "4.79.0") +set(KF5_VERSION "5.16.0") +set(KIDENTITYMANAGEMENT_LIB_VERSION "4.82.0") +set(PIMTEXTEDIT_LIB_VERSION "4.86.0") ecm_setup_version(${KIDENTITYMANAGEMENT_LIB_VERSION} VARIABLE_PREFIX KIDENTITYMANAGEMENT VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kidentitymanagement_version.h" @@ -28,8 +28,6 @@ ) ########### Find packages ########### -#REMOVE IT WHEN WE REMOVE from KF5PimTextEdit -find_package(KF5KDELibs4Support ${KF5_VERSION} CONFIG REQUIRED) find_package(Qt5Network NO_MODULE REQUIRED) find_package(KF5CoreAddons ${KF5_VERSION} CONFIG REQUIRED) @@ -40,6 +38,7 @@ find_package(KF5Config ${KF5_VERSION} CONFIG REQUIRED) find_package(KF5Emoticons ${KF5_VERSION} CONFIG REQUIRED) find_package(KF5Codecs ${KF5_VERSION} CONFIG REQUIRED) +find_package(KF5IconThemes ${KF5_VERSION} CONFIG REQUIRED) find_package(KF5PimTextEdit ${PIMTEXTEDIT_LIB_VERSION} CONFIG REQUIRED) add_definitions(-DTRANSLATION_DOMAIN=\"libkpimidentities5\") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/autotests/identitytest.cpp new/kidentitymanagement-15.12.0/autotests/identitytest.cpp --- old/kidentitymanagement-15.08.3/autotests/identitytest.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/autotests/identitytest.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -25,11 +25,18 @@ #include <KConfigGroup> #include <QMimeData> +#include <QStandardPaths> using namespace KIdentityManagement; QTEST_GUILESS_MAIN(IdentityTester) +void IdentityTester::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); +} + + void IdentityTester::test_NullIdentity() { IdentityManager manager; @@ -78,7 +85,7 @@ { IdentityManager manager; Identity &identity = manager.newFromScratch(QStringLiteral("Test1")); - identity.setFullName(QLatin1String("name")); + identity.setFullName(QStringLiteral("name")); QMimeData mimeData; identity.populateMimeData(&mimeData); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/autotests/identitytest.h new/kidentitymanagement-15.12.0/autotests/identitytest.h --- old/kidentitymanagement-15.08.3/autotests/identitytest.h 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/autotests/identitytest.h 2015-11-07 19:06:23.000000000 +0100 @@ -24,9 +24,10 @@ class IdentityTester : public QObject { - Q_OBJECT + Q_OBJECT private Q_SLOTS: + void initTestCase(); void test_NullIdentity(); void test_Aliases(); void test_toMimeData(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/autotests/signaturetest.cpp new/kidentitymanagement-15.12.0/autotests/signaturetest.cpp --- old/kidentitymanagement-15.08.3/autotests/signaturetest.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/autotests/signaturetest.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -25,13 +25,17 @@ #include "signature.h" -#include "kpimtextedit/textedit.h" #include <KIconLoader> #include <KConfigGroup> #include <QStandardPaths> #include <KConfig> #include <QDir> +#include <KActionCollection> + +#include <kpimtextedit/richtextcomposer.h> +#include <kpimtextedit/richtextcomposercontroler.h> +#include <kpimtextedit/richtextcomposerimages.h> using namespace KIdentityManagement; using namespace KPIMTextEdit; @@ -86,7 +90,8 @@ void SignatureTester::testTextEditInsertion() { - TextEdit edit; + KPIMTextEdit::RichTextComposer edit; + edit.createActions(new KActionCollection(this)); Signature sig; sig.setEnabledSignature(true); sig.setText(QStringLiteral("Hello World")); @@ -97,8 +102,8 @@ edit.setPlainText(QStringLiteral("Bla Bla")); sig.insertIntoTextEdit(Signature::Start, Signature::AddSeparator | Signature::AddNewLines, &edit); - QVERIFY(edit.textMode() == KRichTextEdit::Plain); - QCOMPARE(edit.toPlainText(), QLatin1String("\n\n-- \nHello World\nBla Bla")); + QVERIFY(edit.textMode() == KPIMTextEdit::RichTextComposer::Plain); + QCOMPARE(edit.toPlainText(), QStringLiteral("\n\n-- \nHello World\nBla Bla")); // Test inserting signature at end. make sure cursor position is preserved edit.clear(); @@ -144,13 +149,14 @@ edit.setPlainText(QStringLiteral("Bla Bla")); sig.insertIntoTextEdit(Signature::End, Signature::AddSeparator | Signature::AddNewLines, &edit); - QVERIFY(edit.textMode() == KRichTextEdit::Rich); + QVERIFY(edit.textMode() == KPIMTextEdit::RichTextComposer::Rich); QCOMPARE(edit.toPlainText(), QStringLiteral("Bla Bla\n-- \nHello\nWorld")); } void SignatureTester::testBug167961() { - TextEdit edit; + KPIMTextEdit::RichTextComposer edit; + edit.createActions(new KActionCollection(this)); Signature sig; sig.setEnabledSignature(true); sig.setText(QStringLiteral("BLA")); @@ -176,7 +182,8 @@ void SignatureTester::testImages() { - TextEdit edit; + KPIMTextEdit::RichTextComposer edit; + edit.createActions(new KActionCollection(this)); QString image1Path = KIconLoader::global()->iconPath(QStringLiteral("folder-new"), KIconLoader::Small, false); QImage image1, image2; QVERIFY(image1.load(image1Path)); @@ -225,7 +232,7 @@ sig2.readConfig(group1); sig2.insertIntoTextEdit(KIdentityManagement::Signature::End, Signature::AddSeparator | Signature::AddNewLines, &edit); - QCOMPARE(edit.embeddedImages().count(), 2); + QCOMPARE(edit.composerControler()->composerImages()->embeddedImages().count(), 2); QCOMPARE(sig2.text(), QStringLiteral("Bla<img src=\"folder-new.png\">Bla<img src=\"arrow-up.png\">Bla")); sig2.writeConfig(group1); entryList = dir.entryList(QDir::Files | QDir::NoDotAndDotDot | QDir::NoSymLinks); @@ -239,7 +246,7 @@ edit.clear(); sig2.insertIntoTextEdit(Signature::End, Signature::AddSeparator | Signature::AddNewLines, &edit); - QCOMPARE(edit.embeddedImages().size(), 1); + QCOMPARE(edit.composerControler()->composerImages()->embeddedImages().size(), 1); entryList = dir.entryList(QDir::Files | QDir::NoDotAndDotDot | QDir::NoSymLinks); QCOMPARE(entryList.count(), 1); } @@ -252,7 +259,8 @@ sig.setInlinedHtml(true); sig.setText(QStringLiteral("Hans Mustermann<br>Musterstr. 42")); - KPIMTextEdit::TextEdit edit; + KPIMTextEdit::RichTextComposer edit; + edit.createActions(new KActionCollection(this)); sig.insertIntoTextEdit(Signature::Start, Signature::AddNothing, &edit); QCOMPARE(edit.toPlainText(), QStringLiteral("Hans Mustermann\nMusterstr. 42")); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/CMakeLists.txt new/kidentitymanagement-15.12.0/src/CMakeLists.txt --- old/kidentitymanagement-15.08.3/src/CMakeLists.txt 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/CMakeLists.txt 2015-11-07 19:06:23.000000000 +0100 @@ -5,9 +5,10 @@ signature.cpp signatureconfigurator.cpp utils.cpp - kidentitymanagement_debug.cpp ) +ecm_qt_declare_logging_category(kidentitymanagement_SRCS HEADER kidentitymanagement_debug.h IDENTIFIER KIDENTITYMANAGEMENT_LOG CATEGORY_NAME log_kidentitymanagement) + qt5_add_dbus_adaptor(kidentitymanagement_SRCS org.kde.pim.IdentityManager.xml identitymanager.h KIdentityManagement::IdentityManager ) add_library(KF5IdentityManagement ${kidentitymanagement_SRCS}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/identity.cpp new/kidentitymanagement-15.12.0/src/identity.cpp --- old/kidentitymanagement-15.08.3/src/identity.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/identity.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -51,9 +51,6 @@ setProperty(QLatin1String(s_defaultDomainName), QHostInfo::localHostName()); } -Identity::~Identity() -{} - const Identity &Identity::null() { if (!identityNull) { @@ -131,7 +128,7 @@ QString Identity::mimeDataType() { - return QLatin1String("application/x-kmail-identity-drag"); + return QStringLiteral("application/x-kmail-identity-drag"); } bool Identity::canDecode(const QMimeData *md) @@ -290,7 +287,7 @@ return mail; } - const QString specials(QLatin1String("()<>@,.;:[]")); + const QString specials(QStringLiteral("()<>@,.;:[]")); QString result; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/identity.h new/kidentitymanagement-15.12.0/src/identity.h --- old/kidentitymanagement-15.08.3/src/identity.h 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/identity.h 2015-11-07 19:06:23.000000000 +0100 @@ -100,9 +100,6 @@ const QString &organization = QString(), const QString &replyToAddress = QString()); - /** Destructor */ - ~Identity(); - /** used for comparison */ bool operator== (const Identity &other) const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/identitycombo.cpp new/kidentitymanagement-15.12.0/src/identitycombo.cpp --- old/kidentitymanagement-15.08.3/src/identitycombo.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/identitycombo.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -38,14 +38,14 @@ using namespace KIdentityManagement; /** - Private class that helps to provide binary compatibility between releases. + IdentityComboPrivate class that helps to provide binary compatibility between releases. @internal */ //@cond PRIVATE -class KIdentityManagement::IdentityCombo::Private +class KIdentityManagement::IdentityComboPrivate { public: - Private(IdentityManager *manager, IdentityCombo *qq) + IdentityComboPrivate(IdentityManager *manager, IdentityCombo *qq) : mIdentityManager(manager), q(qq) { @@ -59,7 +59,7 @@ IdentityCombo *q; }; -void KIdentityManagement::IdentityCombo::Private::reloadCombo() +void KIdentityManagement::IdentityComboPrivate::reloadCombo() { const QStringList identities = mIdentityManager->identities(); // the IM should prevent this from happening: @@ -68,7 +68,7 @@ q->addItems(identities); } -void KIdentityManagement::IdentityCombo::Private::reloadUoidList() +void KIdentityManagement::IdentityComboPrivate::reloadUoidList() { mUoidList.clear(); IdentityManager::ConstIterator it; @@ -81,7 +81,7 @@ //@endcond IdentityCombo::IdentityCombo(IdentityManager *manager, QWidget *parent) - : KComboBox(parent), d(new Private(manager, this)) + : KComboBox(parent), d(new IdentityComboPrivate(manager, this)) { d->reloadCombo(); d->reloadUoidList(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/identitycombo.h new/kidentitymanagement-15.12.0/src/identitycombo.h --- old/kidentitymanagement-15.08.3/src/identitycombo.h 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/identitycombo.h 2015-11-07 19:06:23.000000000 +0100 @@ -37,7 +37,7 @@ namespace KIdentityManagement { - +class IdentityComboPrivate; class IdentityManager; class Identity; @@ -83,8 +83,7 @@ private: //@cond PRIVATE - class Private; - Private *const d; + IdentityComboPrivate *const d; //@endcond }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/identitymanager.cpp new/kidentitymanagement-15.12.0/src/identitymanager.cpp --- old/kidentitymanagement-15.08.3/src/identitymanager.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/identitymanager.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -34,10 +34,10 @@ #include <kdelibs4configmigrator.h> #include <QList> -#include <QRegExp> #include <QtDBus/QtDBus> #include <QHostInfo> +#include <QRegularExpression> #include <assert.h> #include <krandom.h> @@ -62,7 +62,7 @@ * @internal */ //@cond PRIVATE -class KIdentityManagement::IdentityManager::Private +class Q_DECL_HIDDEN KIdentityManagement::IdentityManager::Private { public: Private(KIdentityManagement::IdentityManager *); @@ -100,7 +100,7 @@ ConstIterator end = mIdentities.constEnd(); for (ConstIterator it = mIdentities.constBegin(); it != end; ++it, ++i) { - KConfigGroup cg(mConfig, QString::fromLatin1("Identity #%1").arg(i)); + KConfigGroup cg(mConfig, QStringLiteral("Identity #%1").arg(i)); (*it).writeConfig(cg); if ((*it).isDefault()) { // remember which one is default: @@ -234,7 +234,7 @@ QStringList IdentityManager::Private::groupList(KConfig *config) const { - return config->groupList().filter(QRegExp(QStringLiteral("^Identity #\\d+$"))); + return config->groupList().filter(QRegularExpression(QStringLiteral("^Identity #\\d+$"))); } int IdentityManager::Private::newUoid() @@ -273,9 +273,8 @@ void IdentityManager::Private::slotIdentitiesChanged(const QString &id) { qCDebug(KIDENTITYMANAGEMENT_LOG) << " KIdentityManagement::IdentityManager::slotIdentitiesChanged :" << id; - const QString ourIdentifier = QString::fromLatin1("%1/%2"). - arg(QDBusConnection::sessionBus().baseService()). - arg(q->property("uniqueDBusPath").toString()); + const QString ourIdentifier = QStringLiteral("%1/%2"). + arg(QDBusConnection::sessionBus().baseService(), q->property("uniqueDBusPath").toString()); if (id != ourIdentifier) { mConfig->reparseConfiguration(); Q_ASSERT(!q->hasPendingChanges()); @@ -441,9 +440,8 @@ emit changed(); // normal signal // DBus signal for other IdentityManager instances - const QString ourIdentifier = QString::fromLatin1("%1/%2"). - arg(QDBusConnection::sessionBus().baseService()). - arg(property("uniqueDBusPath").toString()); + const QString ourIdentifier = QStringLiteral("%1/%2"). + arg(QDBusConnection::sessionBus().baseService(), property("uniqueDBusPath").toString()); emit identitiesChanged(ourIdentifier); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/kidentitymanagement_debug.cpp new/kidentitymanagement-15.12.0/src/kidentitymanagement_debug.cpp --- old/kidentitymanagement-15.08.3/src/kidentitymanagement_debug.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/kidentitymanagement_debug.cpp 1970-01-01 01:00:00.000000000 +0100 @@ -1,22 +0,0 @@ -/* This file is part of the KDE project - Copyright (C) 2014 Laurent Montel <mon...@kde.org> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#include "kidentitymanagement_debug.h" -Q_LOGGING_CATEGORY(KIDENTITYMANAGEMENT_LOG, "log_kidentitymanagement") - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/kidentitymanagement_debug.h new/kidentitymanagement-15.12.0/src/kidentitymanagement_debug.h --- old/kidentitymanagement-15.08.3/src/kidentitymanagement_debug.h 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/kidentitymanagement_debug.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,27 +0,0 @@ -/* This file is part of the KDE project - Copyright (C) 2014 Laurent Montel <mon...@kde.org> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#ifndef KIDENTITYMANAGEMENT_DEBUG_H -#define KIDENTITYMANAGEMENT_DEBUG_H - -#include <QLoggingCategory> -Q_DECLARE_LOGGING_CATEGORY(KIDENTITYMANAGEMENT_LOG) - -#endif - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/signature.cpp new/kidentitymanagement-15.12.0/src/signature.cpp --- old/kidentitymanagement-15.08.3/src/signature.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/signature.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -35,14 +35,16 @@ #include <assert.h> #include <QtCore/QDir> -#include <kpimtextedit/textedit.h> +#include <kpimtextedit/richtextcomposer.h> +#include <kpimtextedit/richtextcomposercontroler.h> +#include <kpimtextedit/richtextcomposerimages.h> using namespace KIdentityManagement; -class KIdentityManagement::Signature::Private +class Q_DECL_HIDDEN KIdentityManagement::SignaturePrivate { public: - Private(Signature *qq) + SignaturePrivate(Signature *qq) : enabled(false), q(qq) { @@ -53,7 +55,7 @@ void saveImages() const; QString textFromFile(bool *ok) const; QString textFromCommand(bool *ok) const; - void insertSignatureText(Signature::Placement placement, Signature::AddedText addedText, KPIMTextEdit::TextEdit *textEdit, bool forceDisplay) const; + void insertSignatureText(Signature::Placement placement, Signature::AddedText addedText, KPIMTextEdit::RichTextComposer *textEdit, bool forceDisplay) const; /// List of images that belong to this signature. Either added by addImage() or /// by readConfig(). @@ -77,7 +79,7 @@ } static void insertSignatureHelper(const QString &signature, - KRichTextEdit *textEdit, + KPIMTextEdit::RichTextComposer *textEdit, Signature::Placement placement, bool isHtml, bool addNewlines) @@ -105,7 +107,7 @@ QString lineSep; if (addNewlines) { if (isHtml) { - lineSep = QLatin1String("<br>"); + lineSep = QStringLiteral("<br>"); } else { lineSep = QLatin1Char('\n'); } @@ -159,7 +161,7 @@ textEdit->document()->setModified(isModified); if (isHtml) { - textEdit->enableRichTextMode(); + textEdit->activateRichText(); } } } @@ -170,9 +172,9 @@ QStringList ret; // To complicated for us, so cheat and let a text edit do the hard work - KPIMTextEdit::TextEdit edit; + KPIMTextEdit::RichTextComposer edit; edit.setHtml(htmlCode); - QList<KPIMTextEdit::ImageWithNamePtr> images = edit.imagesWithName(); + QList<KPIMTextEdit::ImageWithNamePtr> images = edit.composerControler()->composerImages()->imagesWithName(); ret.reserve(images.count()); foreach (const KPIMTextEdit::ImageWithNamePtr &image, images) { ret << image->name; @@ -180,7 +182,7 @@ return ret; } -void Signature::Private::assignFrom(const KIdentityManagement::Signature &that) +void SignaturePrivate::assignFrom(const KIdentityManagement::Signature &that) { url = that.url(); inlinedHtml = that.isInlinedHtml(); @@ -191,7 +193,7 @@ embeddedImages = that.embeddedImages(); } -void Signature::Private::cleanupImages() +void SignaturePrivate::cleanupImages() { // Remove any images from the internal structure that are no longer there if (inlinedHtml) { @@ -221,7 +223,7 @@ } } -void Signature::Private::saveImages() const +void SignaturePrivate::saveImages() const { if (inlinedHtml && !saveLocation.isEmpty()) { foreach (const Signature::EmbeddedImagePtr &image, embeddedImages) { @@ -233,9 +235,9 @@ } } -QString Signature::Private::textFromFile(bool *ok) const +QString SignaturePrivate::textFromFile(bool *ok) const { - assert(type == FromFile); + assert(type == Signature::FromFile); // TODO: Use KIO::NetAccess to download non-local files! const QUrl u(url); @@ -264,9 +266,9 @@ return QString::fromLocal8Bit(ba.data(), ba.size()); } -QString Signature::Private::textFromCommand(bool *ok) const +QString SignaturePrivate::textFromCommand(bool *ok) const { - assert(type == FromCommand); + assert(type == Signature::FromCommand); // handle pathological cases: if (url.isEmpty()) { @@ -305,7 +307,7 @@ return QString::fromLocal8Bit(output.data(), output.size()); } -void Signature::Private::insertSignatureText(Placement placement, AddedText addedText, KPIMTextEdit::TextEdit *textEdit, bool forceDisplay) const +void SignaturePrivate::insertSignatureText(Signature::Placement placement, Signature::AddedText addedText, KPIMTextEdit::RichTextComposer *textEdit, bool forceDisplay) const { if (!forceDisplay) { if (!enabled) { @@ -313,7 +315,7 @@ } } QString signature; - if (addedText & AddSeparator) { + if (addedText & Signature::AddSeparator) { signature = q->withSeparator(); } else { signature = q->rawText(); @@ -321,12 +323,12 @@ insertSignatureHelper(signature, textEdit, placement, (inlinedHtml && type == KIdentityManagement::Signature::Inlined), - (addedText & AddNewLines)); + (addedText & Signature::AddNewLines)); // We added the text of the signature above, now it is time to add the images as well. if (inlinedHtml) { foreach (const Signature::EmbeddedImagePtr &image, embeddedImages) { - textEdit->loadImage(image->image, image->name, image->name); + textEdit->composerControler()->composerImages()->loadImage(image->image, image->name, image->name); } } } @@ -342,14 +344,14 @@ } Signature::Signature() - : d(new Private(this)) + : d(new SignaturePrivate(this)) { d->type = Disabled; d->inlinedHtml = false; } Signature::Signature(const QString &text) - : d(new Private(this)) + : d(new SignaturePrivate(this)) { d->type = Inlined; d->inlinedHtml = false; @@ -357,14 +359,14 @@ } Signature::Signature(const QString &url, bool isExecutable) - : d(new Private(this)) + : d(new SignaturePrivate(this)) { d->type = isExecutable ? FromCommand : FromFile; d->url = url; } Signature::Signature(const Signature &that) - : d(new Private(this)) + : d(new SignaturePrivate(this)) { d->assignFrom(that); } @@ -418,18 +420,18 @@ } const bool htmlSig = (isInlinedHtml() && d->type == Inlined); - QString newline = htmlSig ? QLatin1String("<br>") : QLatin1String("\n"); - if (htmlSig && signature.startsWith(QLatin1String("<p"))) { + QString newline = htmlSig ? QStringLiteral("<br>") : QStringLiteral("\n"); + if (htmlSig && signature.startsWith(QStringLiteral("<p"))) { newline.clear(); } - if (signature.startsWith(QString::fromLatin1("-- ") + newline) || - (signature.indexOf(newline + QString::fromLatin1("-- ") + newline) != -1)) { + if (signature.startsWith(QLatin1String("-- ") + newline) || + (signature.indexOf(newline + QLatin1String("-- ") + newline) != -1)) { // already have signature separator at start of sig or inside sig: return signature; } else { // need to prepend one: - return QString::fromLatin1("-- ") + newline + signature; + return QLatin1String("-- ") + newline + signature; } } @@ -526,7 +528,7 @@ } void Signature::insertIntoTextEdit(Placement placement, AddedText addedText, - KPIMTextEdit::TextEdit *textEdit, bool forceDisplay) const + KPIMTextEdit::RichTextComposer *textEdit, bool forceDisplay) const { d->insertSignatureText(placement, addedText, textEdit, forceDisplay); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/signature.h new/kidentitymanagement-15.12.0/src/signature.h --- old/kidentitymanagement-15.08.3/src/signature.h 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/signature.h 2015-11-07 19:06:23.000000000 +0100 @@ -42,12 +42,12 @@ namespace KPIMTextEdit { -class TextEdit; +class RichTextComposer; } namespace KIdentityManagement { - +class SignaturePrivate; KIDENTITYMANAGEMENT_EXPORT QDataStream &operator<< (QDataStream &stream, const KIdentityManagement::Signature &sig); KIDENTITYMANAGEMENT_EXPORT QDataStream &operator>> @@ -249,7 +249,7 @@ // TODO: KDE5: BIC: Reorder parameters, the order here is a workaround for ambiguous parameters // with the deprecated method void insertIntoTextEdit(Placement placement, AddedText addedText, - KPIMTextEdit::TextEdit *textEdit, bool forceDisplay = false) const; + KPIMTextEdit::RichTextComposer *textEdit, bool forceDisplay = false) const; QList<Signature::EmbeddedImagePtr> embeddedImages() const; void setEmbeddedImages(const QList<Signature::EmbeddedImagePtr> &embedded); @@ -262,8 +262,7 @@ private: //@cond PRIVATE - class Private; - Private *const d; + SignaturePrivate *const d; //@endcond }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidentitymanagement-15.08.3/src/signatureconfigurator.cpp new/kidentitymanagement-15.12.0/src/signatureconfigurator.cpp --- old/kidentitymanagement-15.08.3/src/signatureconfigurator.cpp 2015-08-31 11:24:03.000000000 +0200 +++ new/kidentitymanagement-15.12.0/src/signatureconfigurator.cpp 2015-11-07 19:06:23.000000000 +0100 @@ -31,7 +31,9 @@ #include <QUrl> #include <KComboBox> -#include <kpimtextedit/textedit.h> +#include <KPIMTextEdit/RichTextComposer> +#include <KPIMTextEdit/RichTextComposerImages> +#include <KPIMTextEdit/RichTextComposerControler> #include <QCheckBox> #include <QDir> @@ -46,6 +48,8 @@ #include <assert.h> #include <QStandardPaths> +#include <kpimtextedit/richtexteditorwidget.h> + using namespace KIdentityManagement; namespace KIdentityManagement @@ -56,7 +60,7 @@ @internal */ //@cond PRIVATE -class SignatureConfigurator::Private +class Q_DECL_HIDDEN SignatureConfigurator::Private { public: Private(SignatureConfigurator *parent); @@ -76,8 +80,7 @@ KLineEdit *mCommandEdit; KToolBar *mEditToolBar; KToolBar *mFormatToolBar; - KRichTextWidget *mTextEdit; - // This is a KPIMTextEdit::TextEdit, really. + KPIMTextEdit::RichTextComposer *mTextEdit; }; //@endcond @@ -174,23 +177,15 @@ page_vlay->addWidget(mFormatToolBar, 1); #endif - mTextEdit = new KPIMTextEdit::TextEdit(q); - static_cast<KPIMTextEdit::TextEdit *>(mTextEdit)->enableImageActions(); - static_cast<KPIMTextEdit::TextEdit *>(mTextEdit)->enableInsertHtmlActions(); - static_cast<KPIMTextEdit::TextEdit *>(mTextEdit)->enableInsertTableActions(); - page_vlay->addWidget(mTextEdit, 2); + mTextEdit = new KPIMTextEdit::RichTextComposer(q); + + KPIMTextEdit::RichTextEditorWidget *richTextEditorwidget = new KPIMTextEdit::RichTextEditorWidget(mTextEdit, q); + page_vlay->addWidget(richTextEditorwidget, 2); mTextEdit->setWhatsThis(i18n("Use this field to enter an arbitrary static signature.")); - // exclude SupportToPlainText. - mTextEdit->setRichTextSupport(KRichTextWidget::FullTextFormattingSupport | - KRichTextWidget::FullListSupport | - KRichTextWidget::SupportAlignment | - KRichTextWidget::SupportRuleLine | - KRichTextWidget::SupportHyperlinks | - KRichTextWidget::SupportFormatPainting); // Fill the toolbars. KActionCollection *actionCollection = new KActionCollection(q); - actionCollection->addActions(mTextEdit->createActions()); + mTextEdit->createActions(actionCollection); #ifndef QT_NO_TOOLBAR mEditToolBar->addAction(actionCollection->action(QStringLiteral("format_text_bold"))); mEditToolBar->addAction(actionCollection->action(QStringLiteral("format_text_italic"))); @@ -374,7 +369,7 @@ if (!d->imageLocation.isEmpty()) { sig.setImageLocation(d->imageLocation); } - KPIMTextEdit::ImageWithNameList images = static_cast< KPIMTextEdit::TextEdit *>(d->mTextEdit)->imagesWithName(); + KPIMTextEdit::ImageWithNameList images = d->mTextEdit->composerControler()->composerImages()->imagesWithName(); foreach (const KPIMTextEdit::ImageWithNamePtr &image, images) { sig.addImage(image->image, image->name); } @@ -409,9 +404,8 @@ // Let insertIntoTextEdit() handle setting the text, as that function also adds the images. d->mTextEdit->clear(); - KPIMTextEdit::TextEdit *const pimEdit = static_cast<KPIMTextEdit::TextEdit *>(d->mTextEdit); sig.insertIntoTextEdit(KIdentityManagement::Signature::Start, KIdentityManagement::Signature::AddNothing, - pimEdit, true); + d->mTextEdit, true); if (sig.type() == Signature::FromFile) { setFileURL(sig.url()); } else { @@ -461,7 +455,7 @@ d->mFormatToolBar->setVisible(true); d->mFormatToolBar->setEnabled(true); #endif - d->mTextEdit->enableRichTextMode(); + d->mTextEdit->activateRichText(); } } @@ -472,7 +466,7 @@ void SignatureConfigurator::setImageLocation(const Identity &identity) { - const QString dir = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QLatin1Char('/') + QString::fromLatin1("emailidentities/%1/").arg( + const QString dir = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QLatin1Char('/') + QStringLiteral("emailidentities/%1/").arg( QString::number(identity.uoid())); QFileInfo fileInfo(dir); QDir().mkpath(fileInfo.absolutePath());