diff --git a/src/plugins/qmldesigner/components/formeditor/resizecontroller.cpp b/src/plugins/qmldesigner/components/formeditor/resizecontroller.cpp index 2281ff2e23fb69b1dcffa5fa06491de6ee45edf4..439976913b7d0a6a47c631ba5a9d89d889e996c3 100644 --- a/src/plugins/qmldesigner/components/formeditor/resizecontroller.cpp +++ b/src/plugins/qmldesigner/components/formeditor/resizecontroller.cpp @@ -221,7 +221,7 @@ void ResizeController::updatePosition() FormEditorItem* ResizeController::formEditorItem() const { - return m_data->formEditorItem; + return m_data->formEditorItem.data(); } QWeakPointer<ResizeControllerData> ResizeController::weakPointer() const diff --git a/src/plugins/qmldesigner/components/formeditor/resizecontroller.h b/src/plugins/qmldesigner/components/formeditor/resizecontroller.h index be1e44824a82a4619fc35eb5b57547b3e100a6fd..0e4dfeaa827d3239b37647d801b98535a4f298c7 100644 --- a/src/plugins/qmldesigner/components/formeditor/resizecontroller.h +++ b/src/plugins/qmldesigner/components/formeditor/resizecontroller.h @@ -51,7 +51,7 @@ public: QWeakPointer<LayerItem> layerItem; - FormEditorItem *formEditorItem; + QWeakPointer<FormEditorItem> formEditorItem; ResizeHandleItem *topLeftItem; ResizeHandleItem *topRightItem; ResizeHandleItem *bottomLeftItem; diff --git a/src/plugins/qmldesigner/components/formeditor/resizetool.cpp b/src/plugins/qmldesigner/components/formeditor/resizetool.cpp index 397080881fca40adb6d41d0f8344ae7b3eb04f52..289c5c748ed60bd0b8959737ed96033ec7673a90 100644 --- a/src/plugins/qmldesigner/components/formeditor/resizetool.cpp +++ b/src/plugins/qmldesigner/components/formeditor/resizetool.cpp @@ -62,7 +62,7 @@ void ResizeTool::mousePressEvent(const QList<QGraphicsItem*> &itemList, return; ResizeHandleItem *resizeHandle = ResizeHandleItem::fromGraphicsItem(itemList.first()); - if (resizeHandle) { + if (resizeHandle && resizeHandle->resizeController().isValid()) { m_resizeManipulator.setHandle(resizeHandle); m_resizeManipulator.begin(event->scenePos()); m_resizeIndicator.hide(); @@ -92,7 +92,7 @@ void ResizeTool::hoverMoveEvent(const QList<QGraphicsItem*> &itemList, if (itemList.isEmpty()) return; ResizeHandleItem* resizeHandle = ResizeHandleItem::fromGraphicsItem(itemList.first()); - if (resizeHandle) { + if (resizeHandle && resizeHandle->resizeController().isValid()) { m_resizeManipulator.setHandle(resizeHandle); } else { view()->changeToSelectionTool();