diff options
-rw-r--r-- | src/libs/installer/componentselectionpage_p.cpp | 4 | ||||
-rw-r--r-- | src/libs/installer/packagemanagercore.cpp | 8 | ||||
-rw-r--r-- | src/libs/installer/packagemanagercore.h | 1 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/libs/installer/componentselectionpage_p.cpp b/src/libs/installer/componentselectionpage_p.cpp index 88ea86b8a..84349e4ad 100644 --- a/src/libs/installer/componentselectionpage_p.cpp +++ b/src/libs/installer/componentselectionpage_p.cpp @@ -147,6 +147,10 @@ ComponentSelectionPagePrivate::ComponentSelectionPagePrivate(ComponentSelectionP m_treeViewVLayout->addWidget(m_treeView, 3); + // force a recalculation of components to install to keep the state correct + connect(q, &ComponentSelectionPage::left, + m_core, &PackageManagerCore::clearComponentsToInstallCalculated); + m_mainHLayout = new QHBoxLayout(q); m_mainHLayout->addLayout(m_treeViewVLayout, 3); m_mainHLayout->addLayout(m_descriptionVLayout, 2); diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp index f23afd76e..028a5b4b2 100644 --- a/src/libs/installer/packagemanagercore.cpp +++ b/src/libs/installer/packagemanagercore.cpp @@ -537,6 +537,14 @@ void PackageManagerCore::componentsToInstallNeedsRecalculation() } /*! + \sa {installer::clearComponentsToInstallCalculated}{installer.clearComponentsToInstallCalculated} + */ +void PackageManagerCore::clearComponentsToInstallCalculated() +{ + d->m_componentsToInstallCalculated = false; +} + +/*! \sa {installer::autoAcceptMessageBoxes}{installer.autoAcceptMessageBoxes} \sa autoRejectMessageBoxes(), setMessageBoxAutomaticAnswer() */ diff --git a/src/libs/installer/packagemanagercore.h b/src/libs/installer/packagemanagercore.h index 809994cfe..f4240fde0 100644 --- a/src/libs/installer/packagemanagercore.h +++ b/src/libs/installer/packagemanagercore.h @@ -293,6 +293,7 @@ public Q_SLOTS: void setCompleteUninstallation(bool complete); void cancelMetaInfoJob(); void componentsToInstallNeedsRecalculation(); + void clearComponentsToInstallCalculated(); Q_SIGNALS: void aboutCalculateComponentsToInstall() const; |