summaryrefslogtreecommitdiffstats
path: root/src/designer
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-12-05 09:20:55 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-12-05 09:20:55 +0100
commit0e4ead79bcca2968982e5c441c314487cba8252f (patch)
tree1e6746feaf246054e31465a10a19d2cdd31ebe21 /src/designer
parent7d049fb8c8e23a570f5bff95adf49beba44c1619 (diff)
parent63f128103f666e72f5f547871da44e49a9cbafaf (diff)
Merge remote-tracking branch 'origin/5.12.0' into 5.12
Diffstat (limited to 'src/designer')
-rw-r--r--src/designer/src/components/propertyeditor/propertyeditor.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/designer/src/components/propertyeditor/propertyeditor.cpp b/src/designer/src/components/propertyeditor/propertyeditor.cpp
index 1fee704d2..d393caee5 100644
--- a/src/designer/src/components/propertyeditor/propertyeditor.cpp
+++ b/src/designer/src/components/propertyeditor/propertyeditor.cpp
@@ -913,8 +913,15 @@ void PropertyEditor::setObject(QObject *object)
m_object = object;
m_propertyManager->setObject(object);
QDesignerFormWindowInterface *formWindow = QDesignerFormWindowInterface::findFormWindow(m_object);
- if (Q_UNLIKELY(formWindow == nullptr)) // QTBUG-68507, can happen in Morph Undo macros with buddies
- return;
+ // QTBUG-68507: Form window can be null for objects in Morph Undo macros with buddies
+ if (object != nullptr && formWindow == nullptr) {
+ formWindow = m_core->formWindowManager()->activeFormWindow();
+ if (formWindow == nullptr) {
+ qWarning("PropertyEditor::setObject(): Unable to find form window for \"%s\".",
+ qPrintable(object->objectName()));
+ return;
+ }
+ }
FormWindowBase *fwb = qobject_cast<FormWindowBase *>(formWindow);
const bool idIdBasedTranslation = fwb && fwb->useIdBasedTranslations();
const bool idIdBasedTranslationUnchanged = (idIdBasedTranslation == DesignerPropertyManager::useIdBasedTranslations());