From 03c774eae79b5a5f34c8579a36a775063561e4ce Mon Sep 17 00:00:00 2001 From: thalieht Date: Sun, 23 Jan 2022 20:37:38 +0200 Subject: [PATCH 1/2] Add confirmation for enabling Auto TMM from context menu Closes #16046 --- src/gui/transferlistwidget.cpp | 10 +++++++++- src/gui/transferlistwidget.h | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/gui/transferlistwidget.cpp b/src/gui/transferlistwidget.cpp index 00aac45e3..ff912e28b 100644 --- a/src/gui/transferlistwidget.cpp +++ b/src/gui/transferlistwidget.cpp @@ -690,8 +690,16 @@ void TransferListWidget::setSelectedFirstLastPiecePrio(const bool enabled) const torrent->setFirstLastPiecePriority(enabled); } -void TransferListWidget::setSelectedAutoTMMEnabled(const bool enabled) const +void TransferListWidget::setSelectedAutoTMMEnabled(const bool enabled) { + if (enabled) + { + const QMessageBox::StandardButton btn = QMessageBox::question(this, tr("Enable automatic torrent management") + , tr("Are you sure you want to enable Automatic Torrent Management for the selected torrent(s)? They may be relocated.") + , (QMessageBox::Yes | QMessageBox::No), QMessageBox::Yes); + if (btn != QMessageBox::Yes) return; + } + for (BitTorrent::Torrent *const torrent : asConst(getSelectedTorrents())) torrent->setAutoTMMEnabled(enabled); } diff --git a/src/gui/transferlistwidget.h b/src/gui/transferlistwidget.h index 7b83fbabf..24500f8ff 100644 --- a/src/gui/transferlistwidget.h +++ b/src/gui/transferlistwidget.h @@ -111,7 +111,7 @@ private slots: void setSelectedTorrentsSuperSeeding(bool enabled) const; void setSelectedTorrentsSequentialDownload(bool enabled) const; void setSelectedFirstLastPiecePrio(bool enabled) const; - void setSelectedAutoTMMEnabled(bool enabled) const; + void setSelectedAutoTMMEnabled(bool enabled); void askNewCategoryForSelection(); void saveSettings(); From 62c167fc775fb19450ea6f0c9921ec119c4c74ba Mon Sep 17 00:00:00 2001 From: thalieht Date: Mon, 24 Jan 2022 00:15:04 +0200 Subject: [PATCH 2/2] Add tooltip to Automatic Torrent Management context menu action --- src/gui/transferlistwidget.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/transferlistwidget.cpp b/src/gui/transferlistwidget.cpp index ff912e28b..cad5f0928 100644 --- a/src/gui/transferlistwidget.cpp +++ b/src/gui/transferlistwidget.cpp @@ -847,6 +847,7 @@ void TransferListWidget::displayListMenu(const QPoint &) auto *listMenu = new QMenu(this); listMenu->setAttribute(Qt::WA_DeleteOnClose); + listMenu->setToolTipsVisible(true); // Create actions @@ -897,6 +898,7 @@ void TransferListWidget::displayListMenu(const QPoint &) auto *actionFirstLastPiecePrio = new TriStateAction(tr("Download first and last pieces first"), listMenu); connect(actionFirstLastPiecePrio, &QAction::triggered, this, &TransferListWidget::setSelectedFirstLastPiecePrio); auto *actionAutoTMM = new TriStateAction(tr("Automatic Torrent Management"), listMenu); + actionAutoTMM->setToolTip(tr("Automatic mode means that various torrent properties (e.g. save path) will be decided by the associated category")); connect(actionAutoTMM, &QAction::triggered, this, &TransferListWidget::setSelectedAutoTMMEnabled); auto *actionEditTracker = new QAction(UIThemeManager::instance()->getIcon("edit-rename"), tr("Edit trackers..."), listMenu); connect(actionEditTracker, &QAction::triggered, this, &TransferListWidget::editTorrentTrackers);