subsidiary question: QtCurve connects to certain signals that I think come from KWin:
bus.connect("org.kde.kwin", "/KWin", "org.kde.KWin", "compositingToggled", this, SLOT(compositingToggled())); QString arg0 = qApp? qApp->arguments()[0] : QString(); if (!qApp || (arg0 != "kwin" && arg0 != "kwin_x11" && arg0 != "kwin_wayland")) { bus.connect("org.kde.kwin", "/QtCurve", "org.kde.QtCurve", "themeChanged", this, SLOT(borderSizesChanged())); bus.connect("org.kde.kwin", "/QtCurve", "org.kde.QtCurve", "borderSizesChanged", this, SLOT(borderSizesChanged())); if (opts.menubarHiding & HIDE_KWIN) bus.connect("org.kde.kwin", "/QtCurve", "org.kde.QtCurve", "toggleMenuBar", this, SLOT(toggleMenuBar(unsigned int))); The tweak to omit these connects in KWin itself comes from a Debian patch, I just added the connect to themeChanged() myself after noticing in the Aurorae theme sources shipping with KWin 5.9.3 . Are those connects still relevant, and should they indeed be excluded for KWin itself? R.