diff --git a/src/qt6ct-qtplugin/qt6ct-qtplugin.pro b/src/qt6ct-qtplugin/qt6ct-qtplugin.pro
index e9b2e221463a60bf212e8aaea444898004b98c1f..1157e11f0af80abe36271ccb0330af33151b0bfc 100644
--- a/src/qt6ct-qtplugin/qt6ct-qtplugin.pro
+++ b/src/qt6ct-qtplugin/qt6ct-qtplugin.pro
@@ -6,13 +6,6 @@ CONFIG += plugin
 
 QT += gui-private
 
-#!equals(DISABLE_DBUS, 1):qtHaveModule(dbus) {
-#    QT += dbus
-#    message(D-Bus support: Enabled)
-#} else {
-#    message(D-Bus support: Disabled)
-#}
-
 SOURCES += \
     main.cpp \
     ../qt6ct/qt6ct.cpp \
diff --git a/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp b/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp
index d588b189f11e2837ef7ff78b4024224a6c49f29a..a9a3c6fab35efe25306e10cfc405773df28604c2 100644
--- a/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp
+++ b/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp
@@ -47,12 +47,6 @@
 
 #include <qt6ct/qt6ct.h>
 #include "qt6ctplatformtheme.h"
-#ifdef GLOBAL_MENU
-#include <private/qdbusmenubar_p.h>
-#endif
-#ifdef DBUS_TRAY
-#include <private/qdbustrayicon_p.h>
-#endif
 
 #include <QStringList>
 #include <qpa/qplatformthemefactory_p.h>
@@ -87,20 +81,6 @@ Qt6CTPlatformTheme::~Qt6CTPlatformTheme()
 
 }
 
-#ifdef GLOBAL_MENU
-QPlatformMenuBar *Qt6CTPlatformTheme::createPlatformMenuBar() const
-{
-    if(m_checkDBusGlobalMenu)
-    {
-        QDBusConnection conn = QDBusConnection::sessionBus();
-        m_dbusGlobalMenuAvailable = conn.interface()->isServiceRegistered("com.canonical.AppMenu.Registrar");
-        m_checkDBusGlobalMenu = false;
-        qCDebug(lqt6ct) << "D-Bus global menu:" << (m_dbusGlobalMenuAvailable ? "yes" : "no");
-    }
-    return (m_dbusGlobalMenuAvailable ? new QDBusMenuBar() : nullptr);
-}
-#endif
-
 bool Qt6CTPlatformTheme::usePlatformNativeDialog(DialogType type) const
 {
     return m_theme ? m_theme->usePlatformNativeDialog(type) :
@@ -113,20 +93,6 @@ QPlatformDialogHelper *Qt6CTPlatformTheme::createPlatformDialogHelper(DialogType
                      QPlatformTheme::createPlatformDialogHelper(type);
 }
 
-#ifdef DBUS_TRAY
-QPlatformSystemTrayIcon *Qt6CTPlatformTheme::createPlatformSystemTrayIcon() const
-{
-    if(m_checkDBusTray)
-    {
-        QDBusMenuConnection conn;
-        m_dbusTrayAvailable = conn.isStatusNotifierHostRegistered();
-        m_checkDBusTray = false;
-        qCDebug(lqt6ct) << "D-Bus system tray:" << (m_dbusTrayAvailable ? "yes" : "no");
-    }
-    return (m_dbusTrayAvailable ? new QDBusTrayIcon() : nullptr);
-}
-#endif
-
 const QPalette *Qt6CTPlatformTheme::palette(QPlatformTheme::Palette type) const
 {
     return (m_usePalette && m_palette) ? m_palette : QPlatformTheme::palette(type);
diff --git a/src/qt6ct-qtplugin/qt6ctplatformtheme.h b/src/qt6ct-qtplugin/qt6ctplatformtheme.h
index c8942045afa111f6d93e66b0378e3214277c0445..1d85d6e561449c0d8f9ae90efd41edddfa7f6d15 100644
--- a/src/qt6ct-qtplugin/qt6ctplatformtheme.h
+++ b/src/qt6ct-qtplugin/qt6ctplatformtheme.h
@@ -30,6 +30,7 @@
 #define QT6CTPLATFORMTHEME_H
 
 #include <qpa/qplatformtheme.h>
+#include <private/qgenericunixthemes_p.h>
 #include <QObject>
 #include <QFont>
 #include <QPalette>
@@ -41,10 +42,10 @@
 #if !defined(QT_NO_DBUS) && defined(QT_DBUS_LIB)
 
 #if !defined(QT_NO_SYSTEMTRAYICON)
-#define DBUS_TRAY
+//#define DBUS_TRAY
 #endif
 
-#define GLOBAL_MENU
+//#define GLOBAL_MENU
 
 #endif
 
@@ -57,7 +58,7 @@ class QPlatformSystemTrayIcon;
 class QPlatformMenuBar;
 #endif
 
-class Qt6CTPlatformTheme : public QObject, public QPlatformTheme
+class Qt6CTPlatformTheme : public QObject, public QGenericUnixTheme
 {
     Q_OBJECT
 public:
@@ -67,15 +68,9 @@ public:
 
     //virtual QPlatformMenuItem* createPlatformMenuItem() const;
     //virtual QPlatformMenu* createPlatformMenu() const;
-#ifdef GLOBAL_MENU
-    virtual QPlatformMenuBar* createPlatformMenuBar() const override;
-#endif
     //virtual void showPlatformMenuBar() {}
     virtual bool usePlatformNativeDialog(DialogType type) const override;
     virtual QPlatformDialogHelper *createPlatformDialogHelper(DialogType type) const override;
-#ifdef DBUS_TRAY
-    virtual QPlatformSystemTrayIcon *createPlatformSystemTrayIcon() const override;
-#endif
     virtual const QPalette *palette(Palette type = SystemPalette) const override;
     virtual const QFont *font(Font type = SystemFont) const override;
     virtual QVariant themeHint(ThemeHint hint) const override;
@@ -115,15 +110,6 @@ private:
     int m_toolButtonStyle = Qt::ToolButtonFollowStyle;
     int m_wheelScrollLines = 3;
     bool m_showShortcutsInContextMenus = false;
-#ifdef GLOBAL_MENU
-    mutable bool m_dbusGlobalMenuAvailable = false;
-    mutable bool m_checkDBusGlobalMenu = true;
-#endif
-#ifdef DBUS_TRAY
-    mutable bool m_dbusTrayAvailable = false;
-    mutable bool m_checkDBusTray = true;
-#endif
-
     QScopedPointer<QPlatformTheme> m_theme;
 };