-if (HAVE_DBUS)
- set(SOURCES ${SOURCES} statusnotifieritem.cpp statusnotifieritemdbus.cpp dockmanagernotificationbackend.cpp)
- qt_add_dbus_interface(DBUS ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher)
- qt_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml notificationsclient)
- qt_add_dbus_adaptor(DBUS ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus)
-endif(HAVE_DBUS)
+if (QT_QTDBUS_FOUND OR Qt5DBus_FOUND)
+ add_definitions(-DHAVE_DBUS)
+ list(APPEND QT_MODULES DBus)
+ if (dbusmenu-qt_FOUND OR dbusmenu-qt5_FOUND)
+ add_definitions(-DHAVE_DBUSMENU)
+ include_directories(${dbusmenu-qt_INCLUDE_DIRS} ${dbusmenu-qt5_INCLUDE_DIRS})
+ if (dbusmenu-qt_FOUND)
+ list(APPEND LIBS dbusmenu-qt)
+ else()
+ list(APPEND LIBS dbusmenu-qt5)
+ endif()
+ endif()
+
+ list(APPEND SOURCES statusnotifieritem.cpp statusnotifieritemdbus.cpp dockmanagernotificationbackend.cpp)
+ qt_add_dbus_interface(SOURCES ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher)
+ qt_add_dbus_interface(SOURCES ../../interfaces/org.freedesktop.Notifications.xml notificationsclient)
+ qt_add_dbus_adaptor (SOURCES ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus)
+endif()
+
+if (QT_QTWEBKIT_FOUND OR Qt5WebKitWidgets_FOUND)
+ add_definitions(-DHAVE_WEBKIT)
+ list(APPEND QT_MODULES WebKit)
+ if (USE_QT5)
+ list(APPEND QT_MODULES WebKitWidgets)
+ endif()
+endif()