From 618f34889be51f531b6226e6362f40604967b486 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Mon, 21 Mar 2016 15:40:10 +0100 Subject: Fix QQuickPopup::setVisible() Make sure to store the visibility flag even if the component is not yet completed. This way QQuickPopup::componentComplete() will run the enter transition as it was supposed. Change-Id: I1e4536e2fdb575b80174ae445626af43bdc45ed6 Task-number: QTBUG-51989 Reviewed-by: Mitch Curtis --- src/templates/qquickpopup.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/templates/qquickpopup.cpp') diff --git a/src/templates/qquickpopup.cpp b/src/templates/qquickpopup.cpp index f0866bdd..c298bd9c 100644 --- a/src/templates/qquickpopup.cpp +++ b/src/templates/qquickpopup.cpp @@ -1470,10 +1470,17 @@ bool QQuickPopup::isVisible() const void QQuickPopup::setVisible(bool visible) { - if (visible) - open(); - else - close(); + Q_D(QQuickPopup); + if (d->visible == visible) + return; + + d->visible = visible; + if (d->complete) { + if (visible) + d->transitionManager.transitionEnter(); + else + d->transitionManager.transitionExit(); + } } /*! -- cgit v1.2.3