diff --git a/src/gui/transferlistwidget.cpp b/src/gui/transferlistwidget.cpp index 6fb71bfaa..48348ab05 100644 --- a/src/gui/transferlistwidget.cpp +++ b/src/gui/transferlistwidget.cpp @@ -231,6 +231,9 @@ TransferListWidget::TransferListWidget(IGUIApplication *app, QWidget *parent) connect(editHotkey, &QShortcut::activated, this, &TransferListWidget::renameSelectedTorrent); const auto *deleteHotkey = new QShortcut(Utils::KeySequence::deleteItem(), this, nullptr, nullptr, Qt::WidgetShortcut); connect(deleteHotkey, &QShortcut::activated, this, &TransferListWidget::softDeleteSelectedTorrents); + // Declare Backspace as alternative for compact keyboards + const auto *deleteHotkeyAlt = new QShortcut(Qt::Key_Backspace, this, nullptr, nullptr, Qt::WidgetShortcut); + connect(deleteHotkeyAlt, &QShortcut::activated, this, &TransferListWidget::softDeleteSelectedTorrents); const auto *permDeleteHotkey = new QShortcut((Qt::SHIFT | Qt::Key_Delete), this, nullptr, nullptr, Qt::WidgetShortcut); connect(permDeleteHotkey, &QShortcut::activated, this, &TransferListWidget::permDeleteSelectedTorrents); const auto *doubleClickHotkeyReturn = new QShortcut(Qt::Key_Return, this, nullptr, nullptr, Qt::WidgetShortcut); diff --git a/src/webui/www/private/scripts/client.js b/src/webui/www/private/scripts/client.js index 01f29e25f..fef8cad58 100644 --- a/src/webui/www/private/scripts/client.js +++ b/src/webui/www/private/scripts/client.js @@ -1773,6 +1773,23 @@ window.addEventListener("DOMContentLoaded", (event) => { event.preventDefault(); deleteSelectedTorrentsFN(event.shiftKey); break; + + case "Backspace": + if ((event.target.nodeName === "INPUT") || (event.target.nodeName === "TEXTAREA")) + return; + if (event.target.isContentEditable) + return; + event.preventDefault(); + deleteSelectedTorrentsFN(event.shiftKey); + break; + + case "Escape": + if (event.target.isContentEditable) + return; + event.preventDefault(); + if (typeof MochaUI.Windows.instances["confirmDeletionPage"] !== "undefined") + MochaUI.Windows.instances["confirmDeletionPage"].close(); + break; } });