summaryrefslogtreecommitdiff
path: root/src/mcompositewindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mcompositewindow.cpp')
-rw-r--r--src/mcompositewindow.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mcompositewindow.cpp b/src/mcompositewindow.cpp
index 06f21ba..78bbab3 100644
--- a/src/mcompositewindow.cpp
+++ b/src/mcompositewindow.cpp
@@ -423,11 +423,14 @@ void MCompositeWindow::closeWindow()
iconify(fadeRect, defer);
}
-void MCompositeWindow::deleteLater()
+bool MCompositeWindow::event(QEvent *e)
{
- destroyed = true;
- if (!is_transitioning)
- QObject::deleteLater();
+ if (e->type() == QEvent::DeferredDelete && is_transitioning) {
+ // Can't delete the object yet, try again in the next iteration.
+ deleteLater();
+ return true;
+ } else
+ return QObject::event(e);
}
void MCompositeWindow::prettyDestroy()