mirror of
https://github.com/feather-wallet/feather.git
synced 2024-12-22 19:49:28 +00:00
history: add option to remove failed tx
This commit is contained in:
parent
fcf5ab2bd1
commit
52a69a454e
5 changed files with 32 additions and 1 deletions
2
monero
2
monero
|
@ -1 +1 @@
|
||||||
Subproject commit 9df7f6b7eff0a4e1c0e33539c5d9849a0e374c14
|
Subproject commit 3f9cbd8c5f08e2944f5aba87ee29917821b99b8c
|
|
@ -90,6 +90,10 @@ void HistoryWidget::showContextMenu(const QPoint &point) {
|
||||||
menu.addAction("Resend transaction", this, &HistoryWidget::onResendTransaction);
|
menu.addAction("Resend transaction", this, &HistoryWidget::onResendTransaction);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (tx->isFailed()) {
|
||||||
|
menu.addAction("Remove from history", this, &HistoryWidget::onRemoveFromHistory);
|
||||||
|
}
|
||||||
|
|
||||||
menu.addMenu(m_copyMenu);
|
menu.addMenu(m_copyMenu);
|
||||||
menu.addAction("Show details", this, &HistoryWidget::showTxDetails);
|
menu.addAction("Show details", this, &HistoryWidget::showTxDetails);
|
||||||
menu.addAction("View on block explorer", this, &HistoryWidget::onViewOnBlockExplorer);
|
menu.addAction("View on block explorer", this, &HistoryWidget::onViewOnBlockExplorer);
|
||||||
|
@ -106,6 +110,16 @@ void HistoryWidget::onResendTransaction() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HistoryWidget::onRemoveFromHistory() {
|
||||||
|
auto *tx = ui->history->currentEntry();
|
||||||
|
if (!tx) return;
|
||||||
|
|
||||||
|
auto result = QMessageBox::question(this, "Remove transaction from history", "Are you sure you want to remove this transaction from the history?");
|
||||||
|
if (result == QMessageBox::Yes) {
|
||||||
|
m_wallet->removeFailedTx(tx->hash());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void HistoryWidget::resetModel()
|
void HistoryWidget::resetModel()
|
||||||
{
|
{
|
||||||
// Save view state
|
// Save view state
|
||||||
|
|
|
@ -42,6 +42,7 @@ private slots:
|
||||||
void onViewOnBlockExplorer();
|
void onViewOnBlockExplorer();
|
||||||
void setSearchFilter(const QString &filter);
|
void setSearchFilter(const QString &filter);
|
||||||
void onResendTransaction();
|
void onResendTransaction();
|
||||||
|
void onRemoveFromHistory();
|
||||||
void createTxProof();
|
void createTxProof();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -1032,6 +1032,20 @@ bool Wallet::submitTxFile(const QString &fileName) const
|
||||||
return m_walletImpl->importKeyImages(fileName.toStdString() + "_keyImages");
|
return m_walletImpl->importKeyImages(fileName.toStdString() + "_keyImages");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Wallet::removeFailedTx(const QString &txid)
|
||||||
|
{
|
||||||
|
crypto::hash txid_;
|
||||||
|
if(!epee::string_tools::hex_to_pod(txid.toStdString(), txid_))
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool r = m_wallet2->remove_failed_tx(txid_);
|
||||||
|
m_history->refresh();
|
||||||
|
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
// #################### Models ####################
|
// #################### Models ####################
|
||||||
|
|
||||||
TransactionHistory *Wallet::history() const {
|
TransactionHistory *Wallet::history() const {
|
||||||
|
|
|
@ -345,6 +345,8 @@ public:
|
||||||
//! Submit a transfer from file
|
//! Submit a transfer from file
|
||||||
bool submitTxFile(const QString &fileName) const;
|
bool submitTxFile(const QString &fileName) const;
|
||||||
|
|
||||||
|
bool removeFailedTx(const QString &txid);
|
||||||
|
|
||||||
// ##### Models #####
|
// ##### Models #####
|
||||||
TransactionHistory* history() const;
|
TransactionHistory* history() const;
|
||||||
TransactionHistoryProxyModel* historyModel();
|
TransactionHistoryProxyModel* historyModel();
|
||||||
|
|
Loading…
Reference in a new issue