diff --git a/src/scripting/windowthumbnailitem.cpp b/src/scripting/windowthumbnailitem.cpp index 08264cc748..394e6fd28c 100644 --- a/src/scripting/windowthumbnailitem.cpp +++ b/src/scripting/windowthumbnailitem.cpp @@ -106,8 +106,6 @@ WindowThumbnailItem::WindowThumbnailItem(QQuickItem *parent) this, &WindowThumbnailItem::destroyOffscreenTexture); connect(Compositor::self(), &Compositor::compositingToggled, this, &WindowThumbnailItem::updateFrameRenderingConnection); - connect(this, &QQuickItem::windowChanged, - this, &WindowThumbnailItem::updateFrameRenderingConnection); } WindowThumbnailItem::~WindowThumbnailItem() @@ -133,6 +131,14 @@ void WindowThumbnailItem::releaseResources() } } +void WindowThumbnailItem::itemChange(QQuickItem::ItemChange change, const QQuickItem::ItemChangeData &value) +{ + if (change == QQuickItem::ItemSceneChange) { + updateFrameRenderingConnection(); + } + QQuickItem::itemChange(change, value); +} + bool WindowThumbnailItem::isTextureProvider() const { return true; diff --git a/src/scripting/windowthumbnailitem.h b/src/scripting/windowthumbnailitem.h index 2af939e12f..11bb12718e 100644 --- a/src/scripting/windowthumbnailitem.h +++ b/src/scripting/windowthumbnailitem.h @@ -45,6 +45,7 @@ public: protected: void releaseResources() override; + void itemChange(QQuickItem::ItemChange change, const QQuickItem::ItemChangeData &value) override; Q_SIGNALS: void wIdChanged();