Hello community, here is the log from the commit of package knotifications for openSUSE:Factory checked in at 2020-02-14 16:33:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/knotifications (Old) and /work/SRC/openSUSE:Factory/.knotifications.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "knotifications" Fri Feb 14 16:33:31 2020 rev:77 rq:773277 version:5.67.0 Changes: -------- --- /work/SRC/openSUSE:Factory/knotifications/knotifications.changes 2020-01-14 21:05:19.122708305 +0100 +++ /work/SRC/openSUSE:Factory/.knotifications.new.26092/knotifications.changes 2020-02-14 16:34:14.591481034 +0100 @@ -1,0 +2,23 @@ +Sun Feb 2 18:07:05 UTC 2020 - Christophe Giboudeaux <[email protected]> + +- Replace %make_jobs with %cmake_build. + +------------------------------------------------------------------- +Sun Feb 2 14:32:53 UTC 2020 - Christophe Giboudeaux <[email protected]> + +- Update to 5.67.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/kde-frameworks-5.67.0.php +- Changes since 5.66.0: + * Add new signal for default action activation + * Drop dependency to KF5Codecs by using the new + stripRichText function + * Strip richtext on Windows + * Reduce dependencies on Windows + * Adapt to Qt 5.14 Android changes + * Don't use KWindowSystem on Android + * Deprecate raiseWidget + * Port KNotification from KWindowSystem + +------------------------------------------------------------------- Old: ---- knotifications-5.66.0.tar.xz knotifications-5.66.0.tar.xz.sig New: ---- knotifications-5.67.0.tar.xz knotifications-5.67.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ knotifications.spec ++++++ --- /var/tmp/diff_new_pack.aAnzI0/_old 2020-02-14 16:34:15.091481313 +0100 +++ /var/tmp/diff_new_pack.aAnzI0/_new 2020-02-14 16:34:15.095481315 +0100 @@ -17,14 +17,14 @@ %define lname libKF5Notifications5 -%define _tar_path 5.66 +%define _tar_path 5.67 # Full KF5 version (e.g. 5.33.0) %{!?_kf5_version: %global _kf5_version %{version}} # Last major and minor KF5 version (e.g. 5.33) %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | awk -F. '{print $1"."$2}')} %bcond_without lang Name: knotifications -Version: 5.66.0 +Version: 5.67.0 Release: 0 Summary: KDE Desktop notifications License: LGPL-2.1-or-later @@ -41,20 +41,19 @@ BuildRequires: fdupes BuildRequires: kf5-filesystem BuildRequires: pkgconfig -BuildRequires: cmake(KF5Codecs) >= %{_kf5_bugfix_version} BuildRequires: cmake(KF5Config) >= %{_kf5_bugfix_version} BuildRequires: cmake(KF5CoreAddons) >= %{_kf5_bugfix_version} BuildRequires: cmake(KF5WindowSystem) >= %{_kf5_bugfix_version} -BuildRequires: cmake(Qt5DBus) >= 5.11.0 -BuildRequires: cmake(Qt5Test) >= 5.11.0 -BuildRequires: cmake(Qt5TextToSpeech) >= 5.11.0 -BuildRequires: cmake(Qt5Widgets) >= 5.11.0 -BuildRequires: cmake(Qt5X11Extras) >= 5.11.0 +BuildRequires: cmake(Qt5DBus) >= 5.12.0 +BuildRequires: cmake(Qt5Test) >= 5.12.0 +BuildRequires: cmake(Qt5TextToSpeech) >= 5.12.0 +BuildRequires: cmake(Qt5Widgets) >= 5.12.0 +BuildRequires: cmake(Qt5X11Extras) >= 5.12.0 BuildRequires: pkgconfig(dbusmenu-qt5) BuildRequires: pkgconfig(libcanberra) BuildRequires: pkgconfig(x11) %if %{with lang} -BuildRequires: cmake(Qt5LinguistTools) >= 5.11.0 +BuildRequires: cmake(Qt5LinguistTools) >= 5.12.0 %endif %description @@ -77,8 +76,8 @@ Group: Development/Libraries/KDE Requires: %{lname} = %{version} Requires: extra-cmake-modules -Requires: cmake(Qt5DBus) >= 5.11.0 -Requires: cmake(Qt5Widgets) >= 5.11.0 +Requires: cmake(Qt5DBus) >= 5.12.0 +Requires: cmake(Qt5Widgets) >= 5.12.0 %description devel KNotification is used to notify the user of an event. It covers feedback and @@ -91,7 +90,7 @@ %build %cmake_kf5 -d build - %make_jobs + %cmake_build %install %kf5_makeinstall -C build ++++++ knotifications-5.66.0.tar.xz -> knotifications-5.67.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/CMakeLists.txt new/knotifications-5.67.0/CMakeLists.txt --- old/knotifications-5.66.0/CMakeLists.txt 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/CMakeLists.txt 2020-02-02 13:51:54.000000000 +0100 @@ -1,12 +1,12 @@ cmake_minimum_required(VERSION 3.5) -set(KF5_VERSION "5.66.0") # handled by release scripts -set(KF5_DEP_VERSION "5.66.0") # handled by release scripts +set(KF5_VERSION "5.67.0") # handled by release scripts +set(KF5_DEP_VERSION "5.67.0") # handled by release scripts project(KNotifications VERSION ${KF5_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 5.66.0 NO_MODULE) +find_package(ECM 5.67.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) @@ -19,6 +19,9 @@ include(ECMQtDeclareLoggingCategory) include(ECMPoQmTools) include(ECMAddQch) +include(ECMGenerateExportHeader) + +set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") @@ -36,9 +39,9 @@ find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets) -if (NOT ANDROID) +if (NOT ANDROID AND NOT WIN32) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) -else () +elseif (ANDROID) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED AndroidExtras) find_package(Gradle REQUIRED) endif() @@ -72,15 +75,19 @@ find_package(LibSnoreToast REQUIRED) set_package_properties(LibSnoreToast PROPERTIES TYPE REQUIRED PURPOSE "for the Windows Toast Notifications" - DESCRIPTION "A command line application, capable of creating + DESCRIPTION "A command line application, capable of creating Windows Toast notifications on Windows (>=)8 " ) find_package(Qt5Network REQUIRED) endif() -find_package(KF5WindowSystem ${KF5_DEP_VERSION} REQUIRED) +set(HAVE_KWINDOWSYSTEM FALSE) +if(NOT ANDROID AND NOT WIN32) + find_package(KF5WindowSystem ${KF5_DEP_VERSION} REQUIRED) + set(HAVE_KWINDOWSYSTEM TRUE) +endif() + find_package(KF5Config ${KF5_DEP_VERSION} REQUIRED) -find_package(KF5Codecs ${KF5_DEP_VERSION} REQUIRED) find_package(KF5CoreAddons ${KF5_DEP_VERSION} REQUIRED) if (NOT WIN32 AND NOT ANDROID) @@ -119,7 +126,7 @@ if (NOT APPLE) # QtMac::setBadgeLabelText is deprecated add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050d00) endif() -add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x054100) +add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x054200) add_subdirectory(src) if (BUILD_TESTING) add_subdirectory(tests) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/cmake/modules/FindGradle.cmake new/knotifications-5.67.0/cmake/modules/FindGradle.cmake --- old/knotifications-5.66.0/cmake/modules/FindGradle.cmake 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/cmake/modules/FindGradle.cmake 2020-02-02 13:51:54.000000000 +0100 @@ -85,6 +85,9 @@ set(_aar_suffix "-release") set(_aar_gradleCmd "assembleRelease") endif() + if (NOT Qt5Core_VERSION VERSION_LESS 5.14.0) # behavior change in Gradle shipped with Qt 5.14 + set(_aar_suffix "") + endif() file(GLOB_RECURSE _src_files CONFIGURE_DEPENDS "*") add_custom_command( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/docs/Doxyfile.local new/knotifications-5.67.0/docs/Doxyfile.local --- old/knotifications-5.66.0/docs/Doxyfile.local 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/docs/Doxyfile.local 2020-02-02 13:51:54.000000000 +0100 @@ -1 +1,8 @@ +### KApiDox Project-specific Overrides File EXCLUDE_PATTERNS += */notifyby* + +# define so that deprecated API is not skipped +PREDEFINED += \ + "KNOTIFICATIONS_ENABLE_DEPRECATED_SINCE(x, y)=1" \ + "KNOTIFICATIONS_BUILD_DEPRECATED_SINCE(x, y)=1" \ + "KNOTIFICATIONS_DEPRECATED_VERSION(x, y, t)=" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/po/zh_CN/knotifications5_qt.po new/knotifications-5.67.0/po/zh_CN/knotifications5_qt.po --- old/knotifications-5.66.0/po/zh_CN/knotifications5_qt.po 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/po/zh_CN/knotifications5_qt.po 2020-02-02 13:51:54.000000000 +0100 @@ -13,8 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: kdeorg\n" -"PO-Revision-Date: 2019-11-19 23:01\n" -"Last-Translator: Guo Yunhe (guoyunhe)\n" +"PO-Revision-Date: 2020-01-20 21:48\n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" @@ -22,7 +21,6 @@ "Content-Transfer-Encoding: 8bit\n" "X-Qt-Contexts: true\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: crowdin.com\n" "X-Crowdin-Project: kdeorg\n" "X-Crowdin-Language: zh-CN\n" "X-Crowdin-File: /kf5-trunk/messages/frameworks/knotifications5_qt.pot\n" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/CMakeLists.txt new/knotifications-5.67.0/src/CMakeLists.txt --- old/knotifications-5.66.0/src/CMakeLists.txt 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/CMakeLists.txt 2020-02-02 13:51:54.000000000 +0100 @@ -83,9 +83,18 @@ configure_file(config-knotifications.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-knotifications.h ) add_library(KF5Notifications ${knotifications_SRCS}) -generate_export_header(KF5Notifications BASE_NAME KNotifications) add_library(KF5::Notifications ALIAS KF5Notifications) +ecm_generate_export_header(KF5Notifications + EXPORT_FILE_NAME knotifications_export.h + BASE_NAME KNotifications + GROUP_BASE_NAME KF + VERSION ${KF5_VERSION} + DEPRECATED_BASE_VERSION 0 + DEPRECATION_VERSIONS 5.67 + EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} +) + target_include_directories(KF5Notifications INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF5}/KNotifications>") target_link_libraries(KF5Notifications PUBLIC @@ -97,9 +106,12 @@ target_link_libraries(KF5Notifications PRIVATE KF5::CoreAddons KF5::ConfigCore - KF5::WindowSystem - KF5::Codecs ) + +if (TARGET KF5::WindowSystem) + target_link_libraries(KF5Notifications PRIVATE KF5::WindowSystem) +endif() + if (TARGET SnoreToast::SnoreToastActions) target_link_libraries(KF5Notifications PRIVATE Qt5::Network SnoreToast::SnoreToastActions) endif () @@ -182,6 +194,7 @@ KNOTIFICATIONS_EXPORT KNOTIFICATIONS_DEPRECATED KNOTIFICATIONS_DEPRECATED_EXPORT + "KNOTIFICATIONS_DEPRECATED_VERSION(x, y, t)" TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} COMPONENT Devel @@ -209,5 +222,9 @@ install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) if (ANDROID) - install(FILES KF5Notifications-android-dependencies.xml DESTINATION ${KDE_INSTALL_LIBDIR}) + if (Qt5Core_VERSION VERSION_LESS 5.14.0) + install(FILES KF5Notifications-android-dependencies.xml DESTINATION ${KDE_INSTALL_LIBDIR}) + else() + install(FILES KF5Notifications-android-dependencies.xml DESTINATION ${KDE_INSTALL_LIBDIR} RENAME KF5Notifications_${CMAKE_ANDROID_ARCH_ABI}-android-dependencies.xml) + endif() endif() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/config-knotifications.h.cmake new/knotifications-5.67.0/src/config-knotifications.h.cmake --- old/knotifications-5.66.0/src/config-knotifications.h.cmake 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/config-knotifications.h.cmake 2020-02-02 13:51:54.000000000 +0100 @@ -5,3 +5,5 @@ #cmakedefine01 HAVE_XTEST #cmakedefine01 HAVE_DBUSMENUQT + +#cmakedefine01 HAVE_KWINDOWSYSTEM diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/knotification.cpp new/knotifications-5.67.0/src/knotification.cpp --- old/knotifications-5.66.0/src/knotification.cpp 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/knotification.cpp 2020-02-02 13:51:54.000000000 +0100 @@ -29,8 +29,6 @@ #include "knotification.h" #include "knotificationmanager_p.h" -#include <kwindowsystem.h> - #include <QCoreApplication> #include <QPixmap> @@ -62,12 +60,14 @@ bool needUpdate; Private() : id(-1), ref(0), widget(nullptr), urgency(KNotification::DefaultUrgency), needUpdate(false) {} +#if KNOTIFICATIONS_BUILD_DEPRECATED_SINCE(5, 67) /** * recursive function that raise the widget. @p w * * @see raiseWidget() */ static void raiseWidget(QWidget *w); +#endif }; KNotification::KNotification(const QString &eventId, QWidget *parent, const NotificationFlags &flags) : @@ -311,6 +311,7 @@ switch (action) { case 0: emit activated(); + emit defaultActivated(); break; case 1: emit action1Activated(); @@ -342,6 +343,7 @@ } } +#if KNOTIFICATIONS_BUILD_DEPRECATED_SINCE(5, 67) void KNotification::raiseWidget() { if (!d->widget) { @@ -350,16 +352,15 @@ Private::raiseWidget(d->widget); } +#endif +#if KNOTIFICATIONS_BUILD_DEPRECATED_SINCE(5, 67) void KNotification::Private::raiseWidget(QWidget *w) { //TODO this function is far from finished. if (w->isTopLevel()) { w->raise(); - KWindowSystem::activateWindow(w->winId()); -#if defined(Q_OS_MACOS) w->activateWindow(); -#endif } else { QWidget *pw = w->parentWidget(); raiseWidget(pw); @@ -369,6 +370,7 @@ } } } +#endif static QString defaultComponentName() { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/knotification.h new/knotifications-5.67.0/src/knotification.h --- old/knotifications-5.66.0/src/knotification.h 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/knotification.h 2020-02-02 13:51:54.000000000 +0100 @@ -256,7 +256,7 @@ /** * Sends a hint to Plasma to skip grouping for this notification * - * @since: 5.18 + * @since 5.18 */ SkipGrouping = 0x10, @@ -567,6 +567,13 @@ * Emitted only when the default activation has occurred */ void activated(); + + /** + * Emitted when the default action has been activated. + * @since 5.67 + */ + void defaultActivated(); + /** * Emitted when an action has been activated. * @@ -619,11 +626,15 @@ */ void close(); +#if KNOTIFICATIONS_ENABLE_DEPRECATED_SINCE(5, 67) /** * @brief Raise the widget. * This will change the desktop, activate the window, and the tab if needed. + * @deprecated since 5.67, use QWindow raise + requestActivate instead. */ + KNOTIFICATIONS_DEPRECATED_VERSION(5, 67, "Use QWindow raise + requestActivate instead") void raiseWidget(); +#endif /** * The notification will automatically be closed if all presentations are finished. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/knotificationplugin.h new/knotifications-5.67.0/src/knotificationplugin.h --- old/knotifications-5.66.0/src/knotificationplugin.h 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/knotificationplugin.h 2020-02-02 13:51:54.000000000 +0100 @@ -23,6 +23,8 @@ #define KNOTIFICATIONPLUGIN_H #include <QObject> +#include <QTextDocumentFragment> + #include <KPluginFactory> #include "knotifications_export.h" @@ -94,6 +96,11 @@ */ void finish(KNotification *notification); + static inline QString stripRichText(const QString &s) + { + return QTextDocumentFragment::fromHtml(s).toPlainText(); + } + Q_SIGNALS: /** * the presentation is finished. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/kpassivepopup.cpp new/knotifications-5.67.0/src/kpassivepopup.cpp --- old/knotifications-5.66.0/src/kpassivepopup.cpp 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/kpassivepopup.cpp 2020-02-02 13:51:54.000000000 +0100 @@ -41,7 +41,9 @@ #include <netwm.h> #endif +#if HAVE_KWINDOWSYSTEM #include <kwindowinfo.h> +#endif static const int DEFAULT_POPUP_TYPE = KPassivePopup::Boxed; static const int DEFAULT_POPUP_TIME = 6 * 1000; @@ -471,12 +473,14 @@ target = widget->geometry(); } } +#if HAVE_KWINDOWSYSTEM if (target.isNull()) { KWindowInfo info(d->window, NET::WMGeometry); if (info.valid()) { target = info.geometry(); } } +#endif } if (target.isNull()) { target = QRect(defaultLocation(), QSize(0, 0)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/notifybypopup.cpp new/knotifications-5.67.0/src/notifybypopup.cpp --- old/knotifications-5.66.0/src/notifybypopup.cpp 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/notifybypopup.cpp 2020-02-02 13:51:54.000000000 +0100 @@ -42,7 +42,6 @@ #include <QXmlStreamReader> #include <QMap> #include <QHash> -#include <QXmlStreamEntityResolver> #include <QPointer> #include <QMutableListIterator> #include <QThread> @@ -52,7 +51,6 @@ #include <QScreen> #include <kconfiggroup.h> -#include <KCodecs/KCharsets> static const char dbusServiceName[] = "org.freedesktop.Notifications"; static const char dbusInterfaceName[] = "org.freedesktop.Notifications"; @@ -66,13 +64,7 @@ * Fills the KPassivePopup with data */ void fillPopup(KPassivePopup *popup, KNotification *notification, const KNotifyConfig &config); - /** - * Removes HTML from a given string. Replaces line breaks with \n and - * HTML entities by their 'normal forms'. - * @param string the HTML to remove. - * @return the cleaned string. - */ - QString stripHtml(const QString &text); + /** * Sends notification to DBus "org.freedesktop.notifications" interface. * @param id knotify-sid identifier of notification @@ -140,16 +132,6 @@ NotifyByPopup * const q; - - /** - * A class for resolving HTML entities in XML documents (used - * during HTML stripping) - */ - class HtmlEntityResolver : public QXmlStreamEntityResolver - { - QString resolveUndeclaredEntity(const QString &name) override; - }; - }; //--------------------------------------------------------------------------------------- @@ -616,10 +598,10 @@ if (!popupServerCapabilities.contains(QLatin1String("body-markup"))) { if (title.startsWith(QLatin1String("<html>"))) { - title = stripHtml(title); + title = q->stripRichText(title); } if (text.startsWith(QLatin1String("<html>"))) { - text = stripHtml(text); + text = q->stripRichText(text); } } @@ -788,50 +770,5 @@ } } -QString NotifyByPopupPrivate::stripHtml(const QString &text) -{ - QXmlStreamReader r(QStringLiteral("<elem>") + text + QStringLiteral("</elem>")); - HtmlEntityResolver resolver; - r.setEntityResolver(&resolver); - QString result; - while (!r.atEnd()) { - r.readNext(); - if (r.tokenType() == QXmlStreamReader::Characters) { - result.append(r.text()); - } else if (r.tokenType() == QXmlStreamReader::StartElement && r.name() == QLatin1String("br")) { - result.append(QLatin1Char('\n')); - } - } - if (r.hasError()) { - // XML error in the given text, just return the original string - qCWarning(LOG_KNOTIFICATIONS) << "Notification to send to backend which does " - "not support HTML, contains invalid XML:" - << r.errorString() << "line" << r.lineNumber() - << "col" << r.columnNumber(); - return text; - } - - return result; -} - -QString NotifyByPopupPrivate::HtmlEntityResolver::resolveUndeclaredEntity(const QString &name) -{ - QString result = QXmlStreamEntityResolver::resolveUndeclaredEntity(name); - - if (!result.isEmpty()) { - return result; - } - - QChar ent = KCharsets::fromEntity(QLatin1Char('&') + name); - - if (ent.isNull()) { - qCWarning(LOG_KNOTIFICATIONS) << "Notification to send to backend which does " - "not support HTML, contains invalid entity: " - << name; - ent = QLatin1Char(' '); - } - - return QString(ent); -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-5.66.0/src/notifybysnore.cpp new/knotifications-5.67.0/src/notifybysnore.cpp --- old/knotifications-5.66.0/src/notifybysnore.cpp 2020-01-04 11:11:14.000000000 +0100 +++ new/knotifications-5.67.0/src/notifybysnore.cpp 2020-02-02 13:51:54.000000000 +0100 @@ -153,11 +153,11 @@ arguments << QStringLiteral("-t"); if (!notification->title().isEmpty()) { - arguments << notification->title(); + arguments << stripRichText(notification->title()); } else { arguments << qApp->applicationDisplayName(); } - arguments << QStringLiteral("-m") << notification->text(); + arguments << QStringLiteral("-m") << stripRichText(notification->text()); const QString iconPath = m_iconDir.path() + QLatin1Char('/') + QString::number(notification->id()) + QStringLiteral(".png"); if (!notification->pixmap().isNull()) {
