Only pass formatted text if it is supported (Linux)
This commit is contained in:
parent
c74e68c945
commit
3dcbac8875
@ -7,6 +7,7 @@
|
|||||||
#include <QDBusPendingReply>
|
#include <QDBusPendingReply>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QImage>
|
#include <QImage>
|
||||||
|
#include <QTextDocumentFragment>
|
||||||
|
|
||||||
#include "Cache.h"
|
#include "Cache.h"
|
||||||
#include "EventAccessors.h"
|
#include "EventAccessors.h"
|
||||||
@ -59,7 +60,14 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if
|
|||||||
const auto sender = cache::displayName(
|
const auto sender = cache::displayName(
|
||||||
room_id, QString::fromStdString(mtx::accessors::sender(notification.event)));
|
room_id, QString::fromStdString(mtx::accessors::sender(notification.event)));
|
||||||
const auto text = utils::event_body(notification.event);
|
const auto text = utils::event_body(notification.event);
|
||||||
const auto formattedText = cmark_markdown_to_html(text.toStdString().c_str(), text.length(), CMARK_OPT_UNSAFE);
|
auto formattedText = utils::markdownToHtml(text);
|
||||||
|
|
||||||
|
static QDBusInterface notifyApp("org.freedesktop.Notifications",
|
||||||
|
"/org/freedesktop/Notifications",
|
||||||
|
"org.freedesktop.Notifications");
|
||||||
|
auto capabilites = notifyApp.call("GetCapabilites");
|
||||||
|
if (!capabilites.arguments().contains("body-markup"))
|
||||||
|
formattedText = QTextDocumentFragment::fromHtml(formattedText).toPlainText();
|
||||||
|
|
||||||
QVariantMap hints;
|
QVariantMap hints;
|
||||||
hints["image-data"] = icon;
|
hints["image-data"] = icon;
|
||||||
@ -86,9 +94,6 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if
|
|||||||
argumentList << hints; // hints
|
argumentList << hints; // hints
|
||||||
argumentList << (int)-1; // timeout in ms
|
argumentList << (int)-1; // timeout in ms
|
||||||
|
|
||||||
static QDBusInterface notifyApp("org.freedesktop.Notifications",
|
|
||||||
"/org/freedesktop/Notifications",
|
|
||||||
"org.freedesktop.Notifications");
|
|
||||||
QDBusPendingCall call = notifyApp.asyncCallWithArgumentList("Notify", argumentList);
|
QDBusPendingCall call = notifyApp.asyncCallWithArgumentList("Notify", argumentList);
|
||||||
auto watcher = new QDBusPendingCallWatcher{call, this};
|
auto watcher = new QDBusPendingCallWatcher{call, this};
|
||||||
connect(
|
connect(
|
||||||
|
Loading…
Reference in New Issue
Block a user