modernize: Reformat ALL the source... again!
[quassel.git] / src / qtui / statusnotifieritem.cpp
index 25b14bf..789e09b 100644 (file)
 
 #ifdef HAVE_DBUS
 
-#include "statusnotifieritem.h"
+#    include "statusnotifieritem.h"
 
-#include <QApplication>
-#include <QDir>
-#include <QFile>
-#include <QIcon>
-#include <QMenu>
-#include <QMouseEvent>
-#include <QTextDocument>
+#    include <QApplication>
+#    include <QDir>
+#    include <QFile>
+#    include <QIcon>
+#    include <QMenu>
+#    include <QMouseEvent>
+#    include <QTextDocument>
 
-#include "icon.h"
-#include "qtui.h"
-#include "quassel.h"
-#include "statusnotifieritemdbus.h"
+#    include "icon.h"
+#    include "qtui.h"
+#    include "quassel.h"
+#    include "statusnotifieritemdbus.h"
 
-constexpr int kProtocolVersion {0};
+constexpr int kProtocolVersion{0};
 
-const QString kSniWatcherService       {QLatin1String{"org.kde.StatusNotifierWatcher"}};
-const QString kSniWatcherPath          {QLatin1String{"/StatusNotifierWatcher"}};
-const QString kSniPath                 {QLatin1String{"/StatusNotifierItem"}};
-const QString kXdgNotificationsService {QLatin1String{"org.freedesktop.Notifications"}};
-const QString kXdgNotificationsPath    {QLatin1String{"/org/freedesktop/Notifications"}};
-const QString kMenuObjectPath          {QLatin1String{"/MenuBar"}};
+const QString kSniWatcherService{QLatin1String{"org.kde.StatusNotifierWatcher"}};
+const QString kSniWatcherPath{QLatin1String{"/StatusNotifierWatcher"}};
+const QString kSniPath{QLatin1String{"/StatusNotifierItem"}};
+const QString kXdgNotificationsService{QLatin1String{"org.freedesktop.Notifications"}};
+const QString kXdgNotificationsPath{QLatin1String{"/org/freedesktop/Notifications"}};
+const QString kMenuObjectPath{QLatin1String{"/MenuBar"}};
 
-#ifdef HAVE_DBUSMENU
-#  include "dbusmenuexporter.h"
+#    ifdef HAVE_DBUSMENU
+#        include "dbusmenuexporter.h"
 
 /**
  * Specialization to provide access to icon names
@@ -56,21 +56,21 @@ const QString kMenuObjectPath          {QLatin1String{"/MenuBar"}};
 class QuasselDBusMenuExporter : public DBusMenuExporter
 {
 public:
-    QuasselDBusMenuExporter(const QString &dbusObjectPath, QMenu *menu, const QDBusConnection &dbusConnection)
+    QuasselDBusMenuExporter(const QString& dbusObjectPath, QMenu* menu, const QDBusConnection& dbusConnection)
         : DBusMenuExporter(dbusObjectPath, menu, dbusConnection)
     {}
 
 protected:
-    QString iconNameForAction(QAction *action) override // TODO Qt 4.7: fixme when we have converted our iconloader
+    QString iconNameForAction(QAction* action) override  // TODO Qt 4.7: fixme when we have converted our iconloader
     {
         QIcon icon(action->icon());
         return icon.isNull() ? QString() : icon.name();
     }
 };
 
-#endif /* HAVE_DBUSMENU */
+#    endif /* HAVE_DBUSMENU */
 
-StatusNotifierItem::StatusNotifierItem(QWidget *parent)
+StatusNotifierItem::StatusNotifierItem(QWidgetparent)
     : StatusNotifierItemParent(parent)
     , _iconThemeDir{QDir::tempPath() + QLatin1String{"/quassel-sni-XXXXXX"}}
 {
@@ -108,19 +108,19 @@ StatusNotifierItem::StatusNotifierItem(QWidget *parent)
     connect(this, &StatusNotifierItem::toolTipChanged, _statusNotifierItemDBus, &StatusNotifierItemDBus::NewToolTip);
 
     // Service watcher to keep track of the StatusNotifierWatcher service
-    _serviceWatcher = new QDBusServiceWatcher(kSniWatcherService,
-                                              QDBusConnection::sessionBus(),
-                                              QDBusServiceWatcher::WatchForOwnerChange,
-                                              this);
+    _serviceWatcher = new QDBusServiceWatcher(kSniWatcherService, QDBusConnection::sessionBus(), QDBusServiceWatcher::WatchForOwnerChange, this);
     connect(_serviceWatcher, &QDBusServiceWatcher::serviceOwnerChanged, this, &StatusNotifierItem::serviceChange);
 
     // Client instance for StatusNotifierWatcher
-    _statusNotifierWatcher = new org::kde::StatusNotifierWatcher(kSniWatcherService,
-                                                                 kSniWatcherPath,
-                                                                 QDBusConnection::sessionBus(),
-                                                                 this);
-    connect(_statusNotifierWatcher, &OrgKdeStatusNotifierWatcherInterface::StatusNotifierHostRegistered, this, &StatusNotifierItem::checkForRegisteredHosts);
-    connect(_statusNotifierWatcher, &OrgKdeStatusNotifierWatcherInterface::StatusNotifierHostUnregistered, this, &StatusNotifierItem::checkForRegisteredHosts);
+    _statusNotifierWatcher = new org::kde::StatusNotifierWatcher(kSniWatcherService, kSniWatcherPath, QDBusConnection::sessionBus(), this);
+    connect(_statusNotifierWatcher,
+            &OrgKdeStatusNotifierWatcherInterface::StatusNotifierHostRegistered,
+            this,
+            &StatusNotifierItem::checkForRegisteredHosts);
+    connect(_statusNotifierWatcher,
+            &OrgKdeStatusNotifierWatcherInterface::StatusNotifierHostUnregistered,
+            this,
+            &StatusNotifierItem::checkForRegisteredHosts);
 
     // Client instance for notifications
     _notificationsClient = new org::freedesktop::Notifications(kXdgNotificationsService,
@@ -136,40 +136,42 @@ StatusNotifierItem::StatusNotifierItem(QWidget *parent)
         _notificationsClientSupportsActions = desktopCapabilities.contains("actions");
     }
 
-#ifdef HAVE_DBUSMENU
-    new QuasselDBusMenuExporter(menuObjectPath(), trayMenu(), _statusNotifierItemDBus->dbusConnection()); // will be added as menu child
-#endif
+#    ifdef HAVE_DBUSMENU
+    new QuasselDBusMenuExporter(menuObjectPath(), trayMenu(), _statusNotifierItemDBus->dbusConnection());  // will be added as menu child
+#    endif
 }
 
-
-void StatusNotifierItem::serviceChange(const QString &name, const QString &oldOwner, const QString &newOwner)
+void StatusNotifierItem::serviceChange(const QString& name, const QString& oldOwner, const QString& newOwner)
 {
     Q_UNUSED(name);
     if (newOwner.isEmpty()) {
-        //unregistered
+        // unregistered
         setMode(Mode::Legacy);
     }
     else if (oldOwner.isEmpty()) {
-        //registered
+        // registered
         setMode(Mode::StatusNotifier);
     }
 }
 
-
 void StatusNotifierItem::registerToWatcher()
 {
     if (_statusNotifierWatcher->isValid() && _statusNotifierWatcher->property("ProtocolVersion").toInt() == kProtocolVersion) {
-        auto registerMethod = QDBusMessage::createMethodCall(kSniWatcherService, kSniWatcherPath, kSniWatcherService,
+        auto registerMethod = QDBusMessage::createMethodCall(kSniWatcherService,
+                                                             kSniWatcherPath,
+                                                             kSniWatcherService,
                                                              QLatin1String{"RegisterStatusNotifierItem"});
         registerMethod.setArguments(QVariantList() << _statusNotifierItemDBus->service());
-        _statusNotifierItemDBus->dbusConnection().callWithCallback(registerMethod, this, SLOT(checkForRegisteredHosts()), SLOT(onDBusError(QDBusError)));
+        _statusNotifierItemDBus->dbusConnection().callWithCallback(registerMethod,
+                                                                   this,
+                                                                   SLOT(checkForRegisteredHosts()),
+                                                                   SLOT(onDBusError(QDBusError)));
     }
     else {
         setMode(Mode::Legacy);
     }
 }
 
-
 void StatusNotifierItem::checkForRegisteredHosts()
 {
     if (!_statusNotifierWatcher || !_statusNotifierWatcher->property("IsStatusNotifierHostRegistered").toBool()) {
@@ -180,24 +182,22 @@ void StatusNotifierItem::checkForRegisteredHosts()
     }
 }
 
-
-void StatusNotifierItem::onDBusError(const QDBusError &error)
+void StatusNotifierItem::onDBusError(const QDBusError& error)
 {
     qWarning() << "StatusNotifierItem encountered a D-Bus error:" << error;
     setMode(Mode::Legacy);
 }
 
-
 void StatusNotifierItem::refreshIcons()
 {
     if (!_iconThemePath.isEmpty()) {
         QDir baseDir{_iconThemePath + "/hicolor"};
         baseDir.removeRecursively();
-        for (auto &&trayState : { State::Active, State::Passive, State::NeedsAttention }) {
+        for (auto&& trayState : {State::Active, State::Passive, State::NeedsAttention}) {
             auto iconName = SystemTray::iconName(trayState);
             QIcon icon = icon::get(iconName);
             if (!icon.isNull()) {
-                for (auto &&size : icon.availableSizes()) {
+                for (auto&& size : icon.availableSizes()) {
                     auto pixDir = QString{"%1/%2x%3/status"}.arg(baseDir.absolutePath()).arg(size.width()).arg(size.height());
                     QDir{}.mkpath(pixDir);
                     if (!icon.pixmap(size).save(pixDir + "/" + iconName + ".png")) {
@@ -209,8 +209,7 @@ void StatusNotifierItem::refreshIcons()
                 // No theme icon found; use fallback from resources
                 auto iconDir = QString{"%1/24x24/status"}.arg(baseDir.absolutePath());
                 QDir{}.mkpath(iconDir);
-                if (!QFile::copy(QString{":/icons/hicolor/24x24/status/%1.svg"}.arg(iconName),
-                                 QString{"%1/%2.svg"}.arg(iconDir, iconName))) {
+                if (!QFile::copy(QString{":/icons/hicolor/24x24/status/%1.svg"}.arg(iconName), QString{"%1/%2.svg"}.arg(iconDir, iconName))) {
                     qWarning() << "Could not access fallback tray icon" << iconName;
                     continue;
                 }
@@ -224,7 +223,6 @@ void StatusNotifierItem::refreshIcons()
     }
 }
 
-
 bool StatusNotifierItem::isSystemTrayAvailable() const
 {
     if (mode() == Mode::StatusNotifier) {
@@ -234,7 +232,6 @@ bool StatusNotifierItem::isSystemTrayAvailable() const
     return StatusNotifierItemParent::isSystemTrayAvailable();
 }
 
-
 void StatusNotifierItem::onModeChanged(Mode mode)
 {
     if (mode == Mode::StatusNotifier) {
@@ -246,7 +243,6 @@ void StatusNotifierItem::onModeChanged(Mode mode)
     }
 }
 
-
 void StatusNotifierItem::onStateChanged(State state)
 {
     if (mode() == Mode::StatusNotifier) {
@@ -254,7 +250,6 @@ void StatusNotifierItem::onStateChanged(State state)
     }
 }
 
-
 void StatusNotifierItem::onVisibilityChanged(bool isVisible)
 {
     if (mode() == Mode::StatusNotifier) {
@@ -268,51 +263,43 @@ void StatusNotifierItem::onVisibilityChanged(bool isVisible)
     }
 }
 
-
 QString StatusNotifierItem::title() const
 {
     return QString("Quassel IRC");
 }
 
-
 QString StatusNotifierItem::iconName() const
 {
     return currentIconName();
 }
 
-
 QString StatusNotifierItem::attentionIconName() const
 {
     return currentAttentionIconName();
 }
 
-
 QString StatusNotifierItem::toolTipIconName() const
 {
     return "quassel";
 }
 
-
 QString StatusNotifierItem::iconThemePath() const
 {
     return _iconThemePath;
 }
 
-
 QString StatusNotifierItem::menuObjectPath() const
 {
     return kMenuObjectPath;
 }
 
-
-void StatusNotifierItem::activated(const QPoint &pos)
+void StatusNotifierItem::activated(const QPoint& pos)
 {
     Q_UNUSED(pos)
     activate(Trigger);
 }
 
-
-bool StatusNotifierItem::eventFilter(QObject *watched, QEvent *event)
+bool StatusNotifierItem::eventFilter(QObject* watched, QEvent* event)
 {
     if (mode() == StatusNotifier) {
         if (watched == trayMenu() && event->type() == QEvent::HoverLeave) {
@@ -322,8 +309,7 @@ bool StatusNotifierItem::eventFilter(QObject *watched, QEvent *event)
     return StatusNotifierItemParent::eventFilter(watched, event);
 }
 
-
-void StatusNotifierItem::showMessage(const QString &title, const QString &message_, SystemTray::MessageIcon icon, int timeout, uint notificationId)
+void StatusNotifierItem::showMessage(const QString& title, const QString& message_, SystemTray::MessageIcon icon, int timeout, uint notificationId)
 {
     QString message = message_;
     if (_notificationsClient->isValid()) {
@@ -333,7 +319,8 @@ void StatusNotifierItem::showMessage(const QString &title, const QString &messag
 
         QStringList actions;
         if (_notificationsClientSupportsActions)
-            actions << "activate" << "View";
+            actions << "activate"
+                    << "View";
 
         // we always queue notifications right now
         QDBusReply<uint> reply = _notificationsClient->Notify(title, 0, "quassel", title, message, actions, QVariantMap(), timeout);
@@ -347,10 +334,9 @@ void StatusNotifierItem::showMessage(const QString &title, const QString &messag
         StatusNotifierItemParent::showMessage(title, message, icon, timeout, notificationId);
 }
 
-
 void StatusNotifierItem::closeMessage(uint notificationId)
 {
-    for (auto &&dbusid : _notificationsIdMap.keys()) {
+    for (auto&& dbusid : _notificationsIdMap.keys()) {
         if (_notificationsIdMap.value(dbusid) == notificationId) {
             _notificationsIdMap.remove(dbusid);
             _notificationsClient->CloseNotification(dbusid);
@@ -361,7 +347,6 @@ void StatusNotifierItem::closeMessage(uint notificationId)
     StatusNotifierItemParent::closeMessage(notificationId);
 }
 
-
 void StatusNotifierItem::notificationClosed(uint dbusid, uint reason)
 {
     Q_UNUSED(reason)
@@ -369,12 +354,10 @@ void StatusNotifierItem::notificationClosed(uint dbusid, uint reason)
     emit messageClosed(_notificationsIdMap.take(dbusid));
 }
 
-
-void StatusNotifierItem::notificationInvoked(uint dbusid, const QString &action)
+void StatusNotifierItem::notificationInvoked(uint dbusid, const QString& action)
 {
     Q_UNUSED(action)
     emit messageClicked(_notificationsIdMap.value(dbusid, 0));
 }
 
-
 #endif