diff --git a/src/compositor.cpp b/src/compositor.cpp index 27ce49e243..09e711c39b 100644 --- a/src/compositor.cpp +++ b/src/compositor.cpp @@ -41,8 +41,6 @@ Compositor *Compositor::self() Compositor::Compositor(QObject *workspace) : QObject(workspace) { - connect(options, &Options::configChanged, this, &Compositor::configChanged); - // 2 sec which should be enough to restart the compositor. static const int compositorLostMessageDelay = 2000; @@ -119,11 +117,6 @@ void Compositor::deleteUnusedSupportProperties() } } -void Compositor::configChanged() -{ - reinitialize(); -} - void Compositor::reinitialize() { // Restart compositing diff --git a/src/compositor.h b/src/compositor.h index 20861584fb..354d4ac214 100644 --- a/src/compositor.h +++ b/src/compositor.h @@ -130,8 +130,6 @@ protected: virtual void start() = 0; virtual void stop() = 0; - virtual void configChanged(); - static Compositor *s_compositor; protected Q_SLOTS: diff --git a/src/compositor_x11.cpp b/src/compositor_x11.cpp index 249d01d36f..f69ee10432 100644 --- a/src/compositor_x11.cpp +++ b/src/compositor_x11.cpp @@ -79,6 +79,14 @@ X11Compositor::X11Compositor(QObject *parent) m_framesToTestForSafety = qEnvironmentVariableIntValue("KWIN_MAX_FRAMES_TESTED"); } + connect(options, &Options::configChanged, this, [this]() { + if (m_suspended) { + stop(); + } else { + reinitialize(); + } + }); + m_releaseSelectionTimer.setSingleShot(true); m_releaseSelectionTimer.setInterval(2000); connect(&m_releaseSelectionTimer, &QTimer::timeout, this, &X11Compositor::releaseCompositorSelection); @@ -127,15 +135,6 @@ void X11Compositor::reinitialize() Compositor::reinitialize(); } -void X11Compositor::configChanged() -{ - if (m_suspended) { - stop(); - return; - } - Compositor::configChanged(); -} - void X11Compositor::suspend(X11Compositor::SuspendReason reason) { Q_ASSERT(reason != NoReasonSuspend); diff --git a/src/compositor_x11.h b/src/compositor_x11.h index ccfb483b20..be396e4787 100644 --- a/src/compositor_x11.h +++ b/src/compositor_x11.h @@ -97,7 +97,6 @@ public: void uninhibit(Window *window) override; void reinitialize() override; - void configChanged() override; bool compositingPossible() const override; QString compositingNotPossibleReason() const override; bool openGLCompositingIsBroken() const override;