Skip to content

Commit 3f68f02

Browse files
committed
Merge bitcoin-core#362: Add keyboard shortcuts to context menus
e4c916a Bugfix: GUI: Use a different shortcut for "1 d&ay" banning, due to conflict with "&Disconnect" (Luke Dashjr) 94e7cdd GUI: Add keyboard shortcuts for other context menus (Luke Dashjr) 02b5263 GUI: Restore keyboard shortcuts for context menu entries (Luke Dashjr) Pull request description: Various keyboard shortcuts were lost in bitcoin-core#263; this restores them, and also adds new ones for other context menus. Note that with a context menu open, simply the shortcut by itself (no Alt) is used. ACKs for top commit: jarolrod: Code Review ACK e4c916a hebasto: ACK e4c916a, tested on Linux Mint 20.1 (Qt 5.12.8). Tree-SHA512: 949461acf7aac592bc48a1c5abad41b167365830e0cedb3aa11b6a87bd347e16126830ea87936f9c9efc4b7df5b09d3833fae784964d6d119ed45703cfba2ffd
2 parents 3a2c84a + e4c916a commit 3f68f02

File tree

6 files changed

+33
-33
lines changed

6 files changed

+33
-33
lines changed

src/qt/addressbookpage.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,12 +114,12 @@ AddressBookPage::AddressBookPage(const PlatformStyle *platformStyle, Mode _mode,
114114

115115
// Build context menu
116116
contextMenu = new QMenu(this);
117-
contextMenu->addAction(tr("Copy Address"), this, &AddressBookPage::on_copyAddress_clicked);
118-
contextMenu->addAction(tr("Copy Label"), this, &AddressBookPage::onCopyLabelAction);
119-
contextMenu->addAction(tr("Edit"), this, &AddressBookPage::onEditAction);
117+
contextMenu->addAction(tr("&Copy Address"), this, &AddressBookPage::on_copyAddress_clicked);
118+
contextMenu->addAction(tr("Copy &Label"), this, &AddressBookPage::onCopyLabelAction);
119+
contextMenu->addAction(tr("&Edit"), this, &AddressBookPage::onEditAction);
120120

121121
if (tab == SendingTab) {
122-
contextMenu->addAction(tr("Delete"), this, &AddressBookPage::on_deleteAddress_clicked);
122+
contextMenu->addAction(tr("&Delete"), this, &AddressBookPage::on_deleteAddress_clicked);
123123
}
124124

125125
connect(ui->tableView, &QWidget::customContextMenuRequested, this, &AddressBookPage::contextualMenu);

src/qt/coincontroldialog.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,13 @@ CoinControlDialog::CoinControlDialog(CCoinControl& coin_control, WalletModel* _m
5252

5353
// context menu
5454
contextMenu = new QMenu(this);
55-
contextMenu->addAction(tr("Copy address"), this, &CoinControlDialog::copyAddress);
56-
contextMenu->addAction(tr("Copy label"), this, &CoinControlDialog::copyLabel);
57-
contextMenu->addAction(tr("Copy amount"), this, &CoinControlDialog::copyAmount);
58-
copyTransactionHashAction = contextMenu->addAction(tr("Copy transaction ID"), this, &CoinControlDialog::copyTransactionHash);
55+
contextMenu->addAction(tr("&Copy address"), this, &CoinControlDialog::copyAddress);
56+
contextMenu->addAction(tr("Copy &label"), this, &CoinControlDialog::copyLabel);
57+
contextMenu->addAction(tr("Copy &amount"), this, &CoinControlDialog::copyAmount);
58+
copyTransactionHashAction = contextMenu->addAction(tr("Copy transaction &ID"), this, &CoinControlDialog::copyTransactionHash);
5959
contextMenu->addSeparator();
60-
lockAction = contextMenu->addAction(tr("Lock unspent"), this, &CoinControlDialog::lockCoin);
61-
unlockAction = contextMenu->addAction(tr("Unlock unspent"), this, &CoinControlDialog::unlockCoin);
60+
lockAction = contextMenu->addAction(tr("L&ock unspent"), this, &CoinControlDialog::lockCoin);
61+
unlockAction = contextMenu->addAction(tr("&Unlock unspent"), this, &CoinControlDialog::unlockCoin);
6262
connect(ui->treeWidget, &QWidget::customContextMenuRequested, this, &CoinControlDialog::showMenu);
6363

6464
// clipboard actions

src/qt/qrimagewidget.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ QRImageWidget::QRImageWidget(QWidget *parent):
2727
QLabel(parent), contextMenu(nullptr)
2828
{
2929
contextMenu = new QMenu(this);
30-
contextMenu->addAction(tr("Save Image…"), this, &QRImageWidget::saveImage);
31-
contextMenu->addAction(tr("Copy Image"), this, &QRImageWidget::copyImage);
30+
contextMenu->addAction(tr("&Save Image…"), this, &QRImageWidget::saveImage);
31+
contextMenu->addAction(tr("&Copy Image"), this, &QRImageWidget::copyImage);
3232
}
3333

3434
bool QRImageWidget::setQR(const QString& data, const QString& text)

src/qt/receivecoinsdialog.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ ReceiveCoinsDialog::ReceiveCoinsDialog(const PlatformStyle *_platformStyle, QWid
4444

4545
// context menu
4646
contextMenu = new QMenu(this);
47-
contextMenu->addAction(tr("Copy URI"), this, &ReceiveCoinsDialog::copyURI);
48-
contextMenu->addAction(tr("Copy address"), this, &ReceiveCoinsDialog::copyAddress);
49-
copyLabelAction = contextMenu->addAction(tr("Copy label"), this, &ReceiveCoinsDialog::copyLabel);
50-
copyMessageAction = contextMenu->addAction(tr("Copy message"), this, &ReceiveCoinsDialog::copyMessage);
51-
copyAmountAction = contextMenu->addAction(tr("Copy amount"), this, &ReceiveCoinsDialog::copyAmount);
47+
contextMenu->addAction(tr("Copy &URI"), this, &ReceiveCoinsDialog::copyURI);
48+
contextMenu->addAction(tr("&Copy address"), this, &ReceiveCoinsDialog::copyAddress);
49+
copyLabelAction = contextMenu->addAction(tr("Copy &label"), this, &ReceiveCoinsDialog::copyLabel);
50+
copyMessageAction = contextMenu->addAction(tr("Copy &message"), this, &ReceiveCoinsDialog::copyMessage);
51+
copyAmountAction = contextMenu->addAction(tr("Copy &amount"), this, &ReceiveCoinsDialog::copyAmount);
5252
connect(ui->recentRequestsView, &QWidget::customContextMenuRequested, this, &ReceiveCoinsDialog::showMenu);
5353

5454
connect(ui->clearButton, &QPushButton::clicked, this, &ReceiveCoinsDialog::clear);

src/qt/rpcconsole.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -675,11 +675,11 @@ void RPCConsole::setClientModel(ClientModel *model, int bestblock_height, int64_
675675

676676
// create peer table context menu
677677
peersTableContextMenu = new QMenu(this);
678-
peersTableContextMenu->addAction(tr("Disconnect"), this, &RPCConsole::disconnectSelectedNode);
679-
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 hour"), [this] { banSelectedNode(60 * 60); });
680-
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 day"), [this] { banSelectedNode(60 * 60 * 24); });
681-
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 week"), [this] { banSelectedNode(60 * 60 * 24 * 7); });
682-
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 year"), [this] { banSelectedNode(60 * 60 * 24 * 365); });
678+
peersTableContextMenu->addAction(tr("&Disconnect"), this, &RPCConsole::disconnectSelectedNode);
679+
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 &hour"), [this] { banSelectedNode(60 * 60); });
680+
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 d&ay"), [this] { banSelectedNode(60 * 60 * 24); });
681+
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 &week"), [this] { banSelectedNode(60 * 60 * 24 * 7); });
682+
peersTableContextMenu->addAction(ts.ban_for + " " + tr("1 &year"), [this] { banSelectedNode(60 * 60 * 24 * 365); });
683683
connect(ui->peerWidget, &QTableView::customContextMenuRequested, this, &RPCConsole::showPeersTableContextMenu);
684684

685685
// peer table signal handling - update peer details when selecting new node
@@ -701,7 +701,7 @@ void RPCConsole::setClientModel(ClientModel *model, int bestblock_height, int64_
701701

702702
// create ban table context menu
703703
banTableContextMenu = new QMenu(this);
704-
banTableContextMenu->addAction(tr("Unban"), this, &RPCConsole::unbanSelectedNode);
704+
banTableContextMenu->addAction(tr("&Unban"), this, &RPCConsole::unbanSelectedNode);
705705
connect(ui->banlistWidget, &QTableView::customContextMenuRequested, this, &RPCConsole::showBanTableContextMenu);
706706

707707
// ban table signal handling - clear peer details when clicking a peer in the ban table

src/qt/transactionview.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -163,19 +163,19 @@ TransactionView::TransactionView(const PlatformStyle *platformStyle, QWidget *pa
163163

164164
contextMenu = new QMenu(this);
165165
contextMenu->setObjectName("contextMenu");
166-
copyAddressAction = contextMenu->addAction(tr("Copy address"), this, &TransactionView::copyAddress);
167-
copyLabelAction = contextMenu->addAction(tr("Copy label"), this, &TransactionView::copyLabel);
168-
contextMenu->addAction(tr("Copy amount"), this, &TransactionView::copyAmount);
169-
contextMenu->addAction(tr("Copy transaction ID"), this, &TransactionView::copyTxID);
170-
contextMenu->addAction(tr("Copy raw transaction"), this, &TransactionView::copyTxHex);
171-
contextMenu->addAction(tr("Copy full transaction details"), this, &TransactionView::copyTxPlainText);
172-
contextMenu->addAction(tr("Show transaction details"), this, &TransactionView::showDetails);
166+
copyAddressAction = contextMenu->addAction(tr("&Copy address"), this, &TransactionView::copyAddress);
167+
copyLabelAction = contextMenu->addAction(tr("Copy &label"), this, &TransactionView::copyLabel);
168+
contextMenu->addAction(tr("Copy &amount"), this, &TransactionView::copyAmount);
169+
contextMenu->addAction(tr("Copy transaction &ID"), this, &TransactionView::copyTxID);
170+
contextMenu->addAction(tr("Copy &raw transaction"), this, &TransactionView::copyTxHex);
171+
contextMenu->addAction(tr("Copy full transaction &details"), this, &TransactionView::copyTxPlainText);
172+
contextMenu->addAction(tr("&Show transaction details"), this, &TransactionView::showDetails);
173173
contextMenu->addSeparator();
174-
bumpFeeAction = contextMenu->addAction(tr("Increase transaction fee"));
174+
bumpFeeAction = contextMenu->addAction(tr("Increase transaction &fee"));
175175
GUIUtil::ExceptionSafeConnect(bumpFeeAction, &QAction::triggered, this, &TransactionView::bumpFee);
176176
bumpFeeAction->setObjectName("bumpFeeAction");
177-
abandonAction = contextMenu->addAction(tr("Abandon transaction"), this, &TransactionView::abandonTx);
178-
contextMenu->addAction(tr("Edit address label"), this, &TransactionView::editLabel);
177+
abandonAction = contextMenu->addAction(tr("A&bandon transaction"), this, &TransactionView::abandonTx);
178+
contextMenu->addAction(tr("&Edit address label"), this, &TransactionView::editLabel);
179179

180180
connect(dateWidget, qOverload<int>(&QComboBox::activated), this, &TransactionView::chooseDate);
181181
connect(typeWidget, qOverload<int>(&QComboBox::activated), this, &TransactionView::chooseType);

0 commit comments

Comments
 (0)