aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2/qquickpopup.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quicktemplates2/qquickpopup.cpp')
-rw-r--r--src/quicktemplates2/qquickpopup.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp
index bdc6dff2..8a03198e 100644
--- a/src/quicktemplates2/qquickpopup.cpp
+++ b/src/quicktemplates2/qquickpopup.cpp
@@ -275,9 +275,21 @@ QQuickPopupPrivate::QQuickPopupPrivate()
void QQuickPopupPrivate::init()
{
Q_Q(QQuickPopup);
- popupItem = new QQuickPopupItem(q);
+ createPopupItem();
popupItem->setVisible(false);
q->setParentItem(qobject_cast<QQuickItem *>(parent));
+ connectToPopupItem();
+}
+
+void QQuickPopupPrivate::createPopupItem()
+{
+ Q_Q(QQuickPopup);
+ popupItem = new QQuickPopupItem(q);
+}
+
+void QQuickPopupPrivate::connectToPopupItem()
+{
+ Q_Q(QQuickPopup);
QObject::connect(popupItem, &QQuickControl::paddingChanged, q, &QQuickPopup::paddingChanged);
QObject::connect(popupItem, &QQuickControl::backgroundChanged, q, &QQuickPopup::backgroundChanged);
QObject::connect(popupItem, &QQuickControl::contentItemChanged, q, &QQuickPopup::contentItemChanged);
@@ -842,8 +854,7 @@ QQuickPopup::QQuickPopup(QObject *parent)
QQuickPopup::QQuickPopup(QQuickPopupPrivate &dd, QObject *parent)
: QObject(dd, parent)
{
- Q_D(QQuickPopup);
- d->init();
+ dd.init();
}
QQuickPopup::~QQuickPopup()