OSDN Git Service

knotify: drop Growl notification support
authorIvailo Monev <xakepa10@gmail.com>
Sat, 26 Sep 2015 03:18:51 +0000 (03:18 +0000)
committerIvailo Monev <xakepa10@gmail.com>
Sat, 26 Sep 2015 03:18:51 +0000 (03:18 +0000)
knotify/CMakeLists.txt
knotify/notifybypopup.cpp
knotify/notifybypopupgrowl.cpp [deleted file]
knotify/notifybypopupgrowl.h [deleted file]

index 5f759a6..023b899 100644 (file)
@@ -6,7 +6,6 @@ main.cpp
 knotify.cpp
 notifybysound.cpp
 notifybypopup.cpp
-notifybypopupgrowl.cpp
 notifybylogfile.cpp
 notifybytaskbar.cpp
 notifybyexecute.cpp
index df4ce63..fcf564c 100644 (file)
@@ -20,7 +20,6 @@
 
 #include "notifybypopup.h"
 #include "imageconverter.h"
-#include "notifybypopupgrowl.h"
 
 #include <kdebug.h>
 #include <kpassivepopup.h>
@@ -123,25 +122,6 @@ void NotifyByPopup::notify( int id, KNotifyConfig * config )
        // Default to 6 seconds if no timeout has been defined
        int timeout = config->timeout == -1 ? 6000 : config->timeout;
 
-       // if Growl can display our popups, use that instead
-       if(NotifyByPopupGrowl::canPopup())
-       {
-               KNotifyConfig *c = ensurePopupCompatibility( config );
-
-               QString appCaption, iconName;
-               getAppCaptionAndIconName(c, &appCaption, &iconName);
-
-               KIconLoader iconLoader(iconName);
-               QPixmap appIcon = iconLoader.loadIcon( iconName, KIconLoader::Small );
-
-               NotifyByPopupGrowl::popup( &appIcon, timeout, appCaption, c->text );
-
-               // Finish immediately, because current NotifyByPopupGrowl can't callback
-               finish(id);
-               delete c;
-               return;
-       }
-
        KPassivePopup *pop = new KPassivePopup( config->winId );
        m_popups[id]=pop;
        fillPopup(pop,id,config);
@@ -244,12 +224,6 @@ void NotifyByPopup::update(int id, KNotifyConfig * config)
                sendNotificationDBus(id, id, config);
                return;
        }
-
-       // otherwise, just display a new Growl notification
-       if(NotifyByPopupGrowl::canPopup())
-       {
-               notify( id, config );
-       }
 }
 
 void NotifyByPopup::fillPopup(KPassivePopup *pop,int id,KNotifyConfig * config)
@@ -515,13 +489,9 @@ void NotifyByPopup::closeNotificationDBus(int id)
 QStringList NotifyByPopup::popupServerCapabilities()
 {
        if (!m_dbusServiceExists) {
-               if( NotifyByPopupGrowl::canPopup() ) {
-                       return NotifyByPopupGrowl::capabilities();
-               } else {
-                       // Return capabilities of the KPassivePopup implementation
-                       return QStringList() << "actions" << "body" << "body-hyperlinks"
-                                            << "body-markup" << "icon-static";
-               }
+               // Return capabilities of the KPassivePopup implementation
+                return QStringList() << "actions" << "body" << "body-hyperlinks"
+                                     << "body-markup" << "icon-static";
        }
 
        if(m_dbusServiceCapCacheDirty) {
diff --git a/knotify/notifybypopupgrowl.cpp b/knotify/notifybypopupgrowl.cpp
deleted file mode 100644 (file)
index 2485068..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-   Copyright (C) 2010 by Sjors Gielen <dazjorz@dazjorz.com>
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
-
- */
-
-#include "notifybypopupgrowl.h"
-#include <QFile>
-#include <QSystemTrayIcon>
-
-#define GROWL_LOCATION_MACOSX "/Library/PreferencePanes/Growl.prefPane/" \
-                              "Contents/MacOS/Growl"
-#define GROWL_LOCATION_WIN32 "C:/Program Files/Growl for Windows/Growl.exe"
-
-/**
- * @brief Check if Growl can display plugins.
- * Currently, this checks only if Growl is installed, not if it's running.
- * As soon as the Growl Notification Protocol is finished, it will be
- * implemented and used for this check.
- */
-bool NotifyByPopupGrowl::canPopup()
-{
-  return QFile::exists( GROWL_LOCATION_MACOSX )
-      || QFile::exists( GROWL_LOCATION_WIN32  );
-}
-
-/**
- * @brief Get the capabilities supported by Growl.
- */
-QStringList NotifyByPopupGrowl::capabilities()
-{
-  return QStringList();
-}
-
-/**
- * @brief Send a popup through Growl.
- * @param icon The icon inside the notification. Currently ignored.
- * @param timeout The time in ms to show the notification.
- * @param title The title displayed inside the notification.
- * @param message The message displayed inside the notification.
- */
-void NotifyByPopupGrowl::popup( const QPixmap *icon, int timeout,
-                                const QString &title, const QString &message )
-{
-  Q_UNUSED( icon );
-
-  QSystemTrayIcon i;
-  i.show();
-  i.showMessage( title, message,
-                 QSystemTrayIcon::Information, timeout );
-  i.hide();
-}
diff --git a/knotify/notifybypopupgrowl.h b/knotify/notifybypopupgrowl.h
deleted file mode 100644 (file)
index 76c8fe5..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-   Copyright (C) 2010 by Sjors Gielen <dazjorz@dazjorz.com>
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
-
- */
-
-#ifndef NOTIFYBYPOPUPGROWL_H
-#define NOTIFYBYPOPUPGROWL_H
-
-#include <QPixmap>
-#include <QString>
-
-/**
- * @brief Display a notification using Growl.
- *
- * Currently, this class uses QSystemTrayIcon to actually display the
- * notification. Inside the Growl project, a protocol is being developed
- * to display notifications; this protocol is currently only implemented
- * (partly) in the Windows version of Growl. Once it is finished, it will be
- * implemented in KNotify and used instead.
- * (The normal Growl API is written in Objective C. It's possible to use it,
- * but it's a lot harder than just waiting for GNTP to stabilize.)
- */
-class NotifyByPopupGrowl
-{
-public:
-    static bool canPopup();
-    static QStringList capabilities();
-    static void popup( const QPixmap *icon, int timeout,
-                       const QString &title, const QString &message );
-};
-
-#endif // NOTIFYBYPOPUPGROWL_H