Browse Source

Add confirmation to resume/pause all

This adds a confirmation dialog to Pause All and Resume All. First I wanted to only add it in Tray, but honestly, clicking around in the menu, using hotkeys might trigger it just as easy.

Closes #17683.
PR #17945.
adaptive-webui-19844
BallsOfSpaghetti 2 years ago committed by GitHub
parent
commit
162273da47
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 18
      src/gui/transferlistwidget.cpp
  2. 26
      src/webui/www/private/scripts/mocha-init.js

18
src/gui/transferlistwidget.cpp

@ -363,12 +363,30 @@ void TransferListWidget::setSelectedTorrentsLocation() @@ -363,12 +363,30 @@ void TransferListWidget::setSelectedTorrentsLocation()
void TransferListWidget::pauseAllTorrents()
{
// Show confirmation if user would really like to Pause All
const QMessageBox::StandardButton ret =
QMessageBox::question(this, tr("Confirm pause")
, tr("Would you like to pause all torrents?")
, (QMessageBox::Yes | QMessageBox::No));
if (ret != QMessageBox::Yes)
return;
for (BitTorrent::Torrent *const torrent : asConst(BitTorrent::Session::instance()->torrents()))
torrent->pause();
}
void TransferListWidget::resumeAllTorrents()
{
// Show confirmation if user would really like to Resume All
const QMessageBox::StandardButton ret =
QMessageBox::question(this, tr("Confirm resume")
, tr("Would you like to resume all torrents?")
, (QMessageBox::Yes | QMessageBox::No));
if (ret != QMessageBox::Yes)
return;
for (BitTorrent::Torrent *const torrent : asConst(BitTorrent::Session::instance()->torrents()))
torrent->resume();
}

26
src/webui/www/private/scripts/mocha-init.js

@ -979,18 +979,34 @@ const initializeWindows = function() { @@ -979,18 +979,34 @@ const initializeWindows = function() {
}
};
['pause', 'resume'].each(function(item) {
addClickEvent(item + 'All', function(e) {
new Event(e).stop();
addClickEvent('pauseAll', (e) => {
new Event(e).stop();
if (confirm('QBT_TR(Would you like to pause all torrents?)QBT_TR[CONTEXT=MainWindow]')) {
new Request({
url: 'api/v2/torrents/' + item,
url: 'api/v2/torrents/pause',
method: 'post',
data: {
hashes: "all"
}
}).send();
updateMainData();
});
}
});
addClickEvent('resumeAll', (e) => {
new Event(e).stop();
if (confirm('QBT_TR(Would you like to resume all torrents?)QBT_TR[CONTEXT=MainWindow]')) {
new Request({
url: 'api/v2/torrents/resume',
method: 'post',
data: {
hashes: "all"
}
}).send();
updateMainData();
}
});
['pause', 'resume', 'recheck'].each(function(item) {

Loading…
Cancel
Save