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