Added Plasma 5 notifier support (Qt5 build).
This commit is contained in:
@@ -2,6 +2,7 @@ qcma (0.3.7) unstable; urgency=low
|
|||||||
|
|
||||||
* Added pre 2.00 protocol versions to the config dialog.
|
* Added pre 2.00 protocol versions to the config dialog.
|
||||||
* Fixed installation of appindicator plguin on standalone mode.
|
* Fixed installation of appindicator plguin on standalone mode.
|
||||||
|
* Added support for Plasma 5 notifier.
|
||||||
|
|
||||||
-- codestation <codestation404@gmail.com> Fri, 23 Oct 2014 00:00:00 -0000
|
-- codestation <codestation404@gmail.com> Fri, 23 Oct 2014 00:00:00 -0000
|
||||||
|
|
||||||
|
3
qcma.pro
3
qcma.pro
@@ -20,9 +20,6 @@ unix:!macx:!android {
|
|||||||
SUBDIRS += qcma_appindicator.pro
|
SUBDIRS += qcma_appindicator.pro
|
||||||
}
|
}
|
||||||
ENABLE_KDENOTIFIER {
|
ENABLE_KDENOTIFIER {
|
||||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
|
||||||
error("ENABLE_KDE can only be used with Qt4")
|
|
||||||
}
|
|
||||||
SUBDIRS += qcma_kdenotifier.pro
|
SUBDIRS += qcma_kdenotifier.pro
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -5,9 +5,14 @@ TEMPLATE = lib
|
|||||||
CONFIG += plugin
|
CONFIG += plugin
|
||||||
DEFINES += QCMA_TRAYINDICATOR_LIBRARY
|
DEFINES += QCMA_TRAYINDICATOR_LIBRARY
|
||||||
PKGCONFIG =
|
PKGCONFIG =
|
||||||
LIBS += -lkdeui
|
|
||||||
INCLUDEPATH += src/
|
INCLUDEPATH += src/
|
||||||
|
|
||||||
|
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||||
|
QT += KNotifications
|
||||||
|
} else {
|
||||||
|
LIBS += -lkdeui
|
||||||
|
}
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
src/indicator/kdenotifier.cpp \
|
src/indicator/kdenotifier.cpp \
|
||||||
src/indicator/kdenotifiertray.cpp
|
src/indicator/kdenotifiertray.cpp
|
||||||
|
@@ -219,7 +219,6 @@ TrayIndicator *MainWidget::createTrayObject(QWidget *parent)
|
|||||||
QString desktop = getenv("XDG_CURRENT_DESKTOP");
|
QString desktop = getenv("XDG_CURRENT_DESKTOP");
|
||||||
qDebug() << "Current desktop: " << desktop;
|
qDebug() << "Current desktop: " << desktop;
|
||||||
|
|
||||||
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
|
|
||||||
if(desktop.toLower() == "kde")
|
if(desktop.toLower() == "kde")
|
||||||
{
|
{
|
||||||
// KDENotifier
|
// KDENotifier
|
||||||
@@ -230,7 +229,6 @@ TrayIndicator *MainWidget::createTrayObject(QWidget *parent)
|
|||||||
qDebug() << "Cannot load libqcma_kdenotifier plugin";
|
qDebug() << "Cannot load libqcma_kdenotifier plugin";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
// try to use the appindicator if is available
|
// try to use the appindicator if is available
|
||||||
// if(desktop.toLower() == "unity")
|
// if(desktop.toLower() == "unity")
|
||||||
{
|
{
|
||||||
|
@@ -21,7 +21,9 @@
|
|||||||
#define KDENOTIFIER_H
|
#define KDENOTIFIER_H
|
||||||
|
|
||||||
#include <kstatusnotifieritem.h>
|
#include <kstatusnotifieritem.h>
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
|
||||||
#include <kmenu.h>
|
#include <kmenu.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
class KDENotifier : public KStatusNotifierItem
|
class KDENotifier : public KStatusNotifierItem
|
||||||
{
|
{
|
||||||
|
@@ -18,7 +18,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "kdenotifiertray.h"
|
#include "kdenotifiertray.h"
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
|
||||||
#include <kmenu.h>
|
#include <kmenu.h>
|
||||||
|
#else
|
||||||
|
#include <QMenu>
|
||||||
|
#endif
|
||||||
|
|
||||||
KDENotifierTray::KDENotifierTray(QWidget *parent)
|
KDENotifierTray::KDENotifierTray(QWidget *parent)
|
||||||
: TrayIndicator(parent)
|
: TrayIndicator(parent)
|
||||||
@@ -41,7 +45,11 @@ void KDENotifierTray::init()
|
|||||||
connect(about_qt, SIGNAL(triggered()), this, SIGNAL(showAboutQt()));
|
connect(about_qt, SIGNAL(triggered()), this, SIGNAL(showAboutQt()));
|
||||||
connect(quit, SIGNAL(triggered()), this, SIGNAL(stopServer()));
|
connect(quit, SIGNAL(triggered()), this, SIGNAL(stopServer()));
|
||||||
|
|
||||||
|
#if QT_VERSION < 0x050000
|
||||||
KMenu *tray_icon_menu = new KMenu(this);
|
KMenu *tray_icon_menu = new KMenu(this);
|
||||||
|
#else
|
||||||
|
QMenu *tray_icon_menu = new QMenu(this);
|
||||||
|
#endif
|
||||||
|
|
||||||
tray_icon_menu->addAction(options);
|
tray_icon_menu->addAction(options);
|
||||||
tray_icon_menu->addAction(reload);
|
tray_icon_menu->addAction(reload);
|
||||||
@@ -56,7 +64,7 @@ void KDENotifierTray::init()
|
|||||||
m_notifier_item->setContextMenu(tray_icon_menu);
|
m_notifier_item->setContextMenu(tray_icon_menu);
|
||||||
m_notifier_item->setTitle("Qcma");
|
m_notifier_item->setTitle("Qcma");
|
||||||
m_notifier_item->setCategory(KStatusNotifierItem::ApplicationStatus);
|
m_notifier_item->setCategory(KStatusNotifierItem::ApplicationStatus);
|
||||||
m_notifier_item->setIconByPixmap(QIcon(":/main/resources/images/tray/qcma_off.png"));
|
m_notifier_item->setIconByPixmap(QIcon(":/main/resources/images/qcma_off.png"));
|
||||||
m_notifier_item->setStatus(KStatusNotifierItem::Active);
|
m_notifier_item->setStatus(KStatusNotifierItem::Active);
|
||||||
m_notifier_item->setToolTipTitle(tr("Qcma status"));
|
m_notifier_item->setToolTipTitle(tr("Qcma status"));
|
||||||
m_notifier_item->setToolTipIconByPixmap(QIcon(":/main/resources/images/qcma.png"));
|
m_notifier_item->setToolTipIconByPixmap(QIcon(":/main/resources/images/qcma.png"));
|
||||||
@@ -76,7 +84,7 @@ bool KDENotifierTray::isVisible()
|
|||||||
|
|
||||||
void KDENotifierTray::setIcon(const QString &icon)
|
void KDENotifierTray::setIcon(const QString &icon)
|
||||||
{
|
{
|
||||||
m_notifier_item->setIconByPixmap(QIcon(":/main/resources/images/tray/" + icon));
|
m_notifier_item->setIconByPixmap(QIcon(":/main/resources/images/" + icon));
|
||||||
}
|
}
|
||||||
|
|
||||||
void KDENotifierTray::show()
|
void KDENotifierTray::show()
|
||||||
|
Reference in New Issue
Block a user