Blob Blame History Raw
diff -up qt-everywhere-opensource-src-4.6.2/src/gui/graphicsview/qgraphicsitem.cpp.orig qt-everywhere-opensource-src-4.6.2/src/gui/graphicsview/qgraphicsitem.cpp
--- qt-everywhere-opensource-src-4.6.2/src/gui/graphicsview/qgraphicsitem.cpp.orig	2010-02-11 16:55:22.000000000 +0100
+++ qt-everywhere-opensource-src-4.6.2/src/gui/graphicsview/qgraphicsitem.cpp	2010-03-22 11:26:50.291692144 +0100
@@ -1125,6 +1125,9 @@ void QGraphicsItemPrivate::setParentItem
         }
     }
 
+    // Resolve depth.
+    invalidateDepthRecursively();
+
     if ((parent = newParent)) {
         if (parent->d_func()->scene && parent->d_func()->scene != scene) {
             // Move this item to its new parent's scene
@@ -1175,8 +1178,6 @@ void QGraphicsItemPrivate::setParentItem
         }
     }
 
-    // Resolve depth.
-    invalidateDepthRecursively();
     dirtySceneTransform = 1;
 
     // Restore the sub focus chain.