diff options
author | J-P Nurmi <jpnurmi@theqtcompany.com> | 2016-03-21 15:40:10 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@theqtcompany.com> | 2016-03-21 19:54:32 +0000 |
commit | 618f34889be51f531b6226e6362f40604967b486 (patch) | |
tree | 50cc263f2e9804a43aa5184b7a1dce67073d7753 /src/templates/qquickpopup.cpp | |
parent | 40aa7c39671400d96cf5f87fa737264912585ca0 (diff) |
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 <mitch.curtis@theqtcompany.com>
Diffstat (limited to 'src/templates/qquickpopup.cpp')
-rw-r--r-- | src/templates/qquickpopup.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
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(); + } } /*! |