Set proper application name, icon name for freedesktop notifications
authorJulius Härtl <jus@bitgrid.net>
Mon, 27 Mar 2017 09:12:28 +0000 (11:12 +0200)
committerMarkus Goetz <markus@woboq.com>
Thu, 1 Jun 2017 08:01:05 +0000 (10:01 +0200)
Use application name defined in OEM build configuration

CMakeLists.txt
OWNCLOUD.cmake
config.h.in
src/gui/CMakeLists.txt
src/gui/systray.cpp

index 20a0de8be7f17474576b5c8530cfa0e085c02a4f..978b35347892a569566ab7b06af50154925ab8de 100644 (file)
@@ -178,6 +178,10 @@ endif()
 
 find_package(ZLIB)
 
+if (NOT DEFINED APPLICATION_ICON_NAME)
+    set(APPLICATION_ICON_NAME ${APPLICATION_SHORTNAME})
+endif()
+
 configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
 
 configure_file(test/test_journal.db "${CMAKE_BINARY_DIR}/test/test_journal.db" COPYONLY)
index 4022212e62a4097504819d56e342b4833da614bd..1a818a4d05dd2b0685818c1f51b747350f80fec5 100644 (file)
@@ -3,6 +3,7 @@ set( APPLICATION_EXECUTABLE "owncloud" )
 set( APPLICATION_DOMAIN     "owncloud.com" )
 set( APPLICATION_VENDOR     "ownCloud" )
 set( APPLICATION_UPDATE_URL "https://updates.owncloud.com/client/" CACHE string "URL for updater" )
+set( APPLICATION_ICON_NAME  "owncloud" )
 
 set( THEME_CLASS            "ownCloudTheme" )
 set( APPLICATION_REV_DOMAIN "com.owncloud.desktopclient" )
index 1e8f8ecdc7796bb11ff192685698261a40170a68..0cc0ab9cd06dda22218b8774e2d5ed6b27b63d8f 100644 (file)
@@ -17,6 +17,7 @@
 #cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
 #cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
 #cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
+#cmakedefine APPLICATION_ICON_NAME "@APPLICATION_ICON_NAME@"
 
 #cmakedefine ZLIB_FOUND @ZLIB_FOUND@
 
index 5ebf0effcaec67d93740c512db431ffc8aaa3a15..603abea7ae32d65d9a274fe86a82d2310acae159 100644 (file)
@@ -221,15 +221,13 @@ endif()
 include( AddAppIconMacro )
 set(ownCloud_old ${ownCloud})
 
-# set an icon_app_name. For historical reasons we can not use the
-# application_shortname for ownCloud but must rather set it manually.
-if ( EXISTS ${OEM_THEME_DIR}/OEM.cmake )
-    set(ICON_APP_NAME ${APPLICATION_SHORTNAME})
-else()
-    set(ICON_APP_NAME "owncloud")
+# For historical reasons we can not use the application_shortname
+# for ownCloud but must rather set it manually.
+if (NOT DEFINED APPLICATION_ICON_NAME)
+    set(APPLICATION_ICON_NAME ${APPLICATION_SHORTNAME})
 endif()
 
-kde4_add_app_icon( ownCloud "${theme_dir}/colored/${ICON_APP_NAME}-icon*.png")
+kde4_add_app_icon( ownCloud "${theme_dir}/colored/${APPLICATION_ICON_NAME}-icon*.png")
 list(APPEND final_src ${ownCloud})
 set(ownCloud ${ownCloud_old})
 
@@ -243,11 +241,11 @@ endif()
 if(NOT BUILD_OWNCLOUD_OSX_BUNDLE)
 
     if(NOT WIN32)
-        file( GLOB _icons "${theme_dir}/colored/${ICON_APP_NAME}-icon-*.png" )
+        file( GLOB _icons "${theme_dir}/colored/${APPLICATION_ICON_NAME}-icon-*.png" )
         foreach( _file ${_icons} )
-            string( REPLACE "${theme_dir}/colored/${ICON_APP_NAME}-icon-" "" _res ${_file} )
+            string( REPLACE "${theme_dir}/colored/${APPLICATION_ICON_NAME}-icon-" "" _res ${_file} )
             string( REPLACE ".png" "" _res ${_res} )
-        install( FILES ${_file} RENAME ${ICON_APP_NAME}.png DESTINATION ${DATADIR}/icons/hicolor/${_res}x${_res}/apps )
+        install( FILES ${_file} RENAME ${APPLICATION_ICON_NAME}.png DESTINATION ${DATADIR}/icons/hicolor/${_res}x${_res}/apps )
         endforeach( _file )
     endif(NOT WIN32)
 
index af6e933ccbf6ba470add6b8ba296bc1557374034..a380be35d6e4eb5983b74abb7216304eb150a218 100644 (file)
@@ -14,6 +14,7 @@
 
 #include "systray.h"
 #include "theme.h"
+#include "config.h"
 
 #ifdef USE_FDO_NOTIFICATIONS
 #include <QDBusConnection>
@@ -30,8 +31,8 @@ namespace OCC {
 void Systray::showMessage(const QString &title, const QString &message, MessageIcon icon, int millisecondsTimeoutHint)
 {
 #ifdef USE_FDO_NOTIFICATIONS
-    if (QDBusInterface(NOTIFICATIONS_SERVICE, NOTIFICATIONS_PATH, NOTIFICATIONS_IFACE).isValid()) {
-        QList<QVariant> args = QList<QVariant>() << "owncloud" << quint32(0) << "owncloud"
+    if(QDBusInterface(NOTIFICATIONS_SERVICE, NOTIFICATIONS_PATH, NOTIFICATIONS_IFACE).isValid()) {
+        QList<QVariant> args = QList<QVariant>() << APPLICATION_NAME << quint32(0) << APPLICATION_ICON_NAME
                                                  << title << message << QStringList() << QVariantMap() << qint32(-1);
         QDBusMessage method = QDBusMessage::createMethodCall(NOTIFICATIONS_SERVICE, NOTIFICATIONS_PATH, NOTIFICATIONS_IFACE, "Notify");
         method.setArguments(args);