GUI/ReceiveCoinsDialog: Allow copying labels/messages/amounts as long as at least one selected request has it populated

This commit is contained in:
Luke Dashjr 2023-09-15 02:15:55 +00:00
parent 77f5a0c4c9
commit c830072fbd

View File

@ -319,9 +319,9 @@ void ReceiveCoinsDialog::showMenu(const QPoint &point)
} else if (sel.size() > 1) { } else if (sel.size() > 1) {
// multiple selection // multiple selection
copyLabelAction->setDisabled(false); copyLabelAction->setDisabled(true);
copyMessageAction->setDisabled(false); copyMessageAction->setDisabled(true);
copyAmountAction->setDisabled(false); copyAmountAction->setDisabled(true);
// disable context menu actions when appropriate // disable context menu actions when appropriate
const RecentRequestsTableModel* const submodel = model->getRecentRequestsTableModel(); const RecentRequestsTableModel* const submodel = model->getRecentRequestsTableModel();
@ -331,14 +331,14 @@ void ReceiveCoinsDialog::showMenu(const QPoint &point)
continue; continue;
} }
const RecentRequestEntry& req = submodel->entry(selection.row()); const RecentRequestEntry& req = submodel->entry(selection.row());
if (req.recipient.label.isEmpty()) { if (!req.recipient.label.isEmpty()) {
copyLabelAction->setDisabled(true); copyLabelAction->setDisabled(false);
} }
if (req.recipient.message.isEmpty()) { if (!req.recipient.message.isEmpty()) {
copyMessageAction->setDisabled(true); copyMessageAction->setDisabled(false);
} }
if (req.recipient.amount == 0) { if (req.recipient.amount != 0) {
copyAmountAction->setDisabled(true); copyAmountAction->setDisabled(false);
} }
} }
contextMenu->exec(QCursor::pos()); contextMenu->exec(QCursor::pos());