[rkward-cvs] SF.net SVN: rkward:[2869] trunk/rkward/rkward/windows/rkmdiwindow.cpp

tfry at users.sourceforge.net tfry at users.sourceforge.net
Fri May 21 14:22:41 UTC 2010


Revision: 2869
          http://rkward.svn.sourceforge.net/rkward/?rev=2869&view=rev
Author:   tfry
Date:     2010-05-21 14:22:41 +0000 (Fri, 21 May 2010)

Log Message:
-----------
Workaround for https://bugs.kde.org/show_bug.cgi?id=170806

Modified Paths:
--------------
    trunk/rkward/rkward/windows/rkmdiwindow.cpp

Modified: trunk/rkward/rkward/windows/rkmdiwindow.cpp
===================================================================
--- trunk/rkward/rkward/windows/rkmdiwindow.cpp	2010-05-19 09:16:15 UTC (rev 2868)
+++ trunk/rkward/rkward/windows/rkmdiwindow.cpp	2010-05-21 14:22:41 UTC (rev 2869)
@@ -24,6 +24,7 @@
 #include <QPaintEvent>
 
 #include <kparts/event.h>
+#include <kxmlguifactory.h>
 #include <kactioncollection.h>
 
 #include "rkworkplace.h"
@@ -152,7 +153,17 @@
 
 	if (also_delete) {
 		bool closed = QWidget::close ();
-		if (closed) deleteLater ();
+		if (closed) {
+			// WORKAROUND for https://bugs.kde.org/show_bug.cgi?id=170806
+			// NOTE: can't move this to the d'tor, since the part is already partially deleted, then
+			// TODO: use version check / remove once fixed in kdelibs
+			if (part && part->factory ()) {
+				part->factory ()->removeClient (part);
+			}
+			// WORKAROUND end
+
+			deleteLater ();
+		}
 		return closed;
 	} else {
 		RK_ASSERT (!testAttribute (Qt::WA_DeleteOnClose));


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the rkward-tracker mailing list