From 33211d86903869e7bb23fa7b3d2f8e42fd592ba8 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Sat, 5 May 2018 16:59:21 +0200 Subject: [PATCH] DolphinQt2: Don't show pop-ups in the middle of extracting a whole disc --- .../DolphinQt2/Config/FilesystemWidget.cpp | 18 +++++++++--------- .../Core/DolphinQt2/Config/FilesystemWidget.h | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Source/Core/DolphinQt2/Config/FilesystemWidget.cpp b/Source/Core/DolphinQt2/Config/FilesystemWidget.cpp index 5c8126c219..dc27b9df91 100644 --- a/Source/Core/DolphinQt2/Config/FilesystemWidget.cpp +++ b/Source/Core/DolphinQt2/Config/FilesystemWidget.cpp @@ -173,8 +173,13 @@ void FilesystemWidget::ShowContextMenu(const QPoint&) AddAction(menu, tr("Extract System Data..."), this, [this, partition] { auto folder = SelectFolder(); - if (!folder.isEmpty()) - ExtractSystemData(partition, folder); + if (folder.isEmpty()) + return; + + if (ExtractSystemData(partition, folder)) + QMessageBox::information(nullptr, tr("Success"), tr("Successfully extracted system data.")); + else + QMessageBox::critical(nullptr, tr("Error"), tr("Failed to extract system data.")); }); } @@ -242,14 +247,9 @@ void FilesystemWidget::ExtractPartition(const DiscIO::Partition& partition, cons ExtractSystemData(partition, out); } -void FilesystemWidget::ExtractSystemData(const DiscIO::Partition& partition, const QString& out) +bool FilesystemWidget::ExtractSystemData(const DiscIO::Partition& partition, const QString& out) { - bool success = DiscIO::ExportSystemData(*m_volume, partition, out.toStdString()); - - if (success) - QMessageBox::information(nullptr, tr("Success"), tr("Successfully extracted system data.")); - else - QMessageBox::critical(nullptr, tr("Error"), tr("Failed to extract system data.")); + return DiscIO::ExportSystemData(*m_volume, partition, out.toStdString()); } void FilesystemWidget::ExtractDirectory(const DiscIO::Partition& partition, const QString& path, diff --git a/Source/Core/DolphinQt2/Config/FilesystemWidget.h b/Source/Core/DolphinQt2/Config/FilesystemWidget.h index b06892f811..925672c49a 100644 --- a/Source/Core/DolphinQt2/Config/FilesystemWidget.h +++ b/Source/Core/DolphinQt2/Config/FilesystemWidget.h @@ -39,7 +39,7 @@ private: void ExtractDirectory(const DiscIO::Partition& partition, const QString& path, const QString& out); void ExtractFile(const DiscIO::Partition& partition, const QString& path, const QString& out); - void ExtractSystemData(const DiscIO::Partition& partition, const QString& out); + bool ExtractSystemData(const DiscIO::Partition& partition, const QString& out); void CheckIntegrity(const DiscIO::Partition& partition); DiscIO::Partition GetPartitionFromID(int id);