X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Findicatornotificationbackend.cpp;h=df7b5340c0f6cc6ad6f81ad36ec32ff70abd9043;hb=25e93f53be9b25f376c4f782f5e77d8e59b6cf10;hp=26d3a4f55f0b8ebb54fea98403be6156e5b94c7c;hpb=00a296c637fffad2a00b2ae6a4524b6f42a2f46e;p=quassel.git diff --git a/src/qtui/indicatornotificationbackend.cpp b/src/qtui/indicatornotificationbackend.cpp index 26d3a4f5..df7b5340 100644 --- a/src/qtui/indicatornotificationbackend.cpp +++ b/src/qtui/indicatornotificationbackend.cpp @@ -29,6 +29,9 @@ #include "networkmodel.h" #include "qtui.h" +#define STR(x) #x +#define XSTR(x) STR(x) + class Indicator : public QIndicate::Indicator { public: uint lastNotificationId; @@ -38,14 +41,17 @@ IndicatorNotificationBackend::IndicatorNotificationBackend(QObject *parent) : AbstractNotificationBackend(parent) { NotificationSettings notificationSettings; - _enabled = notificationSettings.value("Indicator/Enabled", true).toBool(); + _enabled = notificationSettings.value("Indicator/Enabled", false).toBool(); notificationSettings.notify("Indicator/Enabled", this, SLOT(enabledChanged(const QVariant &))); _server = QIndicate::Server::defaultInstance(); - _server->setType("messaging"); - _server->setDesktopFile(DESKTOP_FILE); - connect(_server, SIGNAL(serverDisplay()), QtUi::mainWindow(), SLOT(forceActivated())); + _server->setType("message.irc"); + QString desktopFile = QString("%1/%2.desktop") + .arg(XSTR(XDG_APPS_INSTALL_DIR)) + .arg(QCoreApplication::applicationFilePath().section('/', -1)); + _server->setDesktopFile(desktopFile); + connect(_server, SIGNAL(serverDisplay()), SLOT(activateMainWidget())); if (_enabled) { _server->show(); @@ -56,6 +62,10 @@ IndicatorNotificationBackend::~IndicatorNotificationBackend() { qDeleteAll(_indicatorHash); } +void IndicatorNotificationBackend::activateMainWidget() { + GraphicalUi::activateMainWidget(); +} + void IndicatorNotificationBackend::notify(const Notification ¬ification) { if(!_enabled) { return;