summaryrefslogtreecommitdiffstats
path: root/application/LaunchController.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'application/LaunchController.cpp')
-rw-r--r--application/LaunchController.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/application/LaunchController.cpp b/application/LaunchController.cpp
index eaeb9b28..62e582d8 100644
--- a/application/LaunchController.cpp
+++ b/application/LaunchController.cpp
@@ -288,3 +288,25 @@ void LaunchController::onProgressRequested(Task* task)
m_launcher->proceed();
progDialog.execWithTask(task);
}
+
+bool LaunchController::abort()
+{
+ if(!m_launcher)
+ {
+ return true;
+ }
+ if(!m_launcher->canAbort())
+ {
+ return false;
+ }
+ auto response = CustomMessageBox::selectable(
+ m_parentWidget, tr("Kill Minecraft?"),
+ tr("This can cause the instance to get corrupted and should only be used if Minecraft "
+ "is frozen for some reason"),
+ QMessageBox::Question, QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes)->exec();
+ if (response == QMessageBox::Yes)
+ {
+ return m_launcher->abort();
+ }
+ return false;
+}