summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libs/installer/packagemanagergui.cpp20
-rw-r--r--src/libs/installer/packagemanagergui.h4
2 files changed, 22 insertions, 2 deletions
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp
index 6e0909517..ede8cb12d 100644
--- a/src/libs/installer/packagemanagergui.cpp
+++ b/src/libs/installer/packagemanagergui.cpp
@@ -1722,9 +1722,11 @@ PerformInstallationPage::PerformInstallationPage(PackageManagerCore *core)
connect(m_performInstallationForm, SIGNAL(showDetailsChanged()), this, SLOT(toggleDetailsWereChanged()));
connect(core, SIGNAL(installationStarted()), this, SLOT(installationStarted()));
- connect(core, SIGNAL(uninstallationStarted()), this, SLOT(installationStarted()));
connect(core, SIGNAL(installationFinished()), this, SLOT(installationFinished()));
- connect(core, SIGNAL(uninstallationFinished()), this, SLOT(installationFinished()));
+
+ connect(core, SIGNAL(uninstallationStarted()), this, SLOT(uninstallationStarted()));
+ connect(core, SIGNAL(uninstallationFinished()), this, SLOT(uninstallationFinished()));
+
connect(core, SIGNAL(titleMessageChanged(QString)), this, SLOT(setTitleMessage(QString)));
connect(this, SIGNAL(setAutomatedPageSwitchEnabled(bool)), core,
SIGNAL(setAutomatedPageSwitchEnabled(bool)));
@@ -1802,6 +1804,20 @@ void PerformInstallationPage::installationFinished()
}
}
+void PerformInstallationPage::uninstallationStarted()
+{
+ m_performInstallationForm->startUpdateProgress();
+ if (QAbstractButton *cancel = gui()->button(QWizard::CancelButton))
+ cancel->setEnabled(false);
+}
+
+void PerformInstallationPage::uninstallationFinished()
+{
+ installationFinished();
+ if (QAbstractButton *cancel = gui()->button(QWizard::CancelButton))
+ cancel->setEnabled(false);
+}
+
void PerformInstallationPage::toggleDetailsWereChanged()
{
emit setAutomatedPageSwitchEnabled(isAutoSwitching());
diff --git a/src/libs/installer/packagemanagergui.h b/src/libs/installer/packagemanagergui.h
index b3f1bdf88..68a54eff2 100644
--- a/src/libs/installer/packagemanagergui.h
+++ b/src/libs/installer/packagemanagergui.h
@@ -364,6 +364,10 @@ Q_SIGNALS:
private Q_SLOTS:
void installationStarted();
void installationFinished();
+
+ void uninstallationStarted();
+ void uninstallationFinished();
+
void toggleDetailsWereChanged();
private: