diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-06-09 10:52:51 +0300 |
---|---|---|
committer | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-08-21 10:56:00 +0300 |
commit | f2ab63396c1f101216b2c6ade37528492e464785 (patch) | |
tree | 6aeceb76196b453d8a999ddf2d4e8b0d1dc43aef /src/libs/installer/packagemanagercore.cpp | |
parent | 190b643736d7fa3270dca5926e018d6eef6d74cb (diff) |
CLI: Ask user confirmation before performing installer actions
Also add new option --confirm-command to skip the interactive query.
Task-number: QTIFW-1834
Change-Id: I1c63fd990431c792a523da7047637f54b193bee6
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to 'src/libs/installer/packagemanagercore.cpp')
-rw-r--r-- | src/libs/installer/packagemanagercore.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp index 137627ae1..89b9b782c 100644 --- a/src/libs/installer/packagemanagercore.cpp +++ b/src/libs/installer/packagemanagercore.cpp @@ -685,6 +685,14 @@ QHash<QString, QString> PackageManagerCore::fileDialogAutomaticAnswers() const } /*! + Set to automatically confirm install, update or remove without asking user. +*/ +void PackageManagerCore::setAutoConfirmCommand() +{ + d->m_autoConfirmCommand = true; +} + +/*! Returns the size of the component \a component as \a value. */ quint64 PackageManagerCore::size(QInstaller::Component *component, const QString &value) const @@ -2370,6 +2378,11 @@ bool PackageManagerCore::removeInstallationSilently() if (d->runningProcessesFound()) throw Error(tr("Running processes found.")); + qCDebug(QInstaller::lcInstallerUninstallLog) << "Complete uninstallation was chosen."; + if (!(d->m_autoConfirmCommand || d->askUserConfirmCommand())) { + qCDebug(QInstaller::lcInstallerUninstallLog) << "Uninstallation aborted."; + return false; + } setCompleteUninstallation(true); return run(); } |