-
Notifications
You must be signed in to change notification settings - Fork 36.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[qt] TransactionView: highlight replacement tx after fee bump #12818
Conversation
Concept ACK |
Travis fails with:
Seems to be a QT 4 issue. Will look into that later, since it might go away if there's a way to avoid |
c92e346
to
0fa52d3
Compare
Concept ACK. NACK the timed single shot 😄 |
c601048
to
bc48ac4
Compare
src/qt/transactionview.cpp
Outdated
model->getTransactionTableModel()->updateTransaction(hashQStr, CT_UPDATED, true); | ||
|
||
#if QT_VERSION >= 0x050400 | ||
QTimer::singleShot(10, [=](){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMO just avoid the lambda and make it therefore Qt4 compile compatible.
src/qt/transactionview.cpp
Outdated
|
||
#if QT_VERSION >= 0x050400 | ||
QTimer::singleShot(10, [=](){ | ||
Q_EMIT bumpedFee(newHash); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you tried qApp->processEvents();
instead of the single shot dummy timer?
Needs rebase |
bc48ac4
to
90c614c
Compare
Rebased @promag @jonasschnelli I replaced the single shot with |
src/qt/transactionview.cpp
Outdated
@@ -202,6 +203,9 @@ TransactionView::TransactionView(const PlatformStyle *platformStyle, QWidget *pa | |||
connect(copyTxPlainText, SIGNAL(triggered()), this, SLOT(copyTxPlainText())); | |||
connect(editLabelAction, SIGNAL(triggered()), this, SLOT(editLabel())); | |||
connect(showDetailsAction, SIGNAL(triggered()), this, SLOT(showDetails())); | |||
|
|||
// Highlight transaction after fee bump | |||
connect(this, SIGNAL(bumpedFee(uint256)), this, SLOT(focusTransaction(uint256))); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could use the new connect syntax?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MarcoFalke not sure what you mean by new connect syntax: http://doc.qt.io/qt-5/signalsandslots.html
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two options ATM:
connect(this, &TransactionView::bumpedFee, [this](const uint256& txid) {
focusTransaction(txid);
});
connect(this, &TransactionView::bumpedFee, this, static_cast<void (TransactionView::*)(const uint256&)>(&TransactionView::focusTransaction));
Because TransactionView::focusTransaction
is overloaded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@promag I find the first version more readable and less intimidating. I noticed the other version in your PR for a similar signal.
The last travis run for this pull request was 60 days ago and is thus outdated. To trigger a fresh travis build, this pull request should be closed and re-opened. |
90c614c
to
d795c61
Compare
Rebased and switched the to the QT5 |
Tested ACK d795c61 |
utACK d795c61, missed the 0.17 feature freeze though. |
…e bump d795c61 [qt] TransactionView: highlight replacement tx after fee bump (Sjors Provoost) Pull request description: Consistent with #12421 which highlights the transaction after send. <img width="747" alt="1" src="https://user-images.githubusercontent.com/10217/38036280-a7358ea4-32a6-11e8-8f92-417e9e1e3e8b.png"> <img width="685" alt="2" src="https://user-images.githubusercontent.com/10217/38036289-aac87040-32a6-11e8-9f94-81745ff6c592.png"> ~I'm not too proud of the `QTimer::singleShot(10` bit; any suggestions on how to properly wait for the transactions table to become aware of the new transaction?~ Although I could have called `focusTransaction()` directly from `TransactionView::bumpFee()` I'm using the same signal as the send screen. This should make it easier to move fee bump / transaction replacement functionality around later. Tree-SHA512: 242055b7c3d32c7b2cf871f5ceda2581221902fd53fa29e0b092713fc16d3191adbe8cbb28417d522dda9febec8cc05e07afe3489cd7caaecd33460c1dde6fbc
…fter fee bump d795c61 [qt] TransactionView: highlight replacement tx after fee bump (Sjors Provoost) Pull request description: Consistent with bitcoin#12421 which highlights the transaction after send. <img width="747" alt="1" src="https://user-images.githubusercontent.com/10217/38036280-a7358ea4-32a6-11e8-8f92-417e9e1e3e8b.png"> <img width="685" alt="2" src="https://user-images.githubusercontent.com/10217/38036289-aac87040-32a6-11e8-9f94-81745ff6c592.png"> ~I'm not too proud of the `QTimer::singleShot(10` bit; any suggestions on how to properly wait for the transactions table to become aware of the new transaction?~ Although I could have called `focusTransaction()` directly from `TransactionView::bumpFee()` I'm using the same signal as the send screen. This should make it easier to move fee bump / transaction replacement functionality around later. Tree-SHA512: 242055b7c3d32c7b2cf871f5ceda2581221902fd53fa29e0b092713fc16d3191adbe8cbb28417d522dda9febec8cc05e07afe3489cd7caaecd33460c1dde6fbc # Conflicts: # src/qt/transactionview.cpp # src/qt/transactionview.h # src/qt/walletmodel.cpp # src/qt/walletmodel.h
…fter fee bump d795c61 [qt] TransactionView: highlight replacement tx after fee bump (Sjors Provoost) Pull request description: Consistent with bitcoin#12421 which highlights the transaction after send. <img width="747" alt="1" src="https://user-images.githubusercontent.com/10217/38036280-a7358ea4-32a6-11e8-8f92-417e9e1e3e8b.png"> <img width="685" alt="2" src="https://user-images.githubusercontent.com/10217/38036289-aac87040-32a6-11e8-9f94-81745ff6c592.png"> ~I'm not too proud of the `QTimer::singleShot(10` bit; any suggestions on how to properly wait for the transactions table to become aware of the new transaction?~ Although I could have called `focusTransaction()` directly from `TransactionView::bumpFee()` I'm using the same signal as the send screen. This should make it easier to move fee bump / transaction replacement functionality around later. Tree-SHA512: 242055b7c3d32c7b2cf871f5ceda2581221902fd53fa29e0b092713fc16d3191adbe8cbb28417d522dda9febec8cc05e07afe3489cd7caaecd33460c1dde6fbc # Conflicts: # src/qt/transactionview.cpp # src/qt/transactionview.h # src/qt/walletmodel.cpp # src/qt/walletmodel.h
…fter fee bump d795c61 [qt] TransactionView: highlight replacement tx after fee bump (Sjors Provoost) Pull request description: Consistent with bitcoin#12421 which highlights the transaction after send. <img width="747" alt="1" src="https://user-images.githubusercontent.com/10217/38036280-a7358ea4-32a6-11e8-8f92-417e9e1e3e8b.png"> <img width="685" alt="2" src="https://user-images.githubusercontent.com/10217/38036289-aac87040-32a6-11e8-9f94-81745ff6c592.png"> ~I'm not too proud of the `QTimer::singleShot(10` bit; any suggestions on how to properly wait for the transactions table to become aware of the new transaction?~ Although I could have called `focusTransaction()` directly from `TransactionView::bumpFee()` I'm using the same signal as the send screen. This should make it easier to move fee bump / transaction replacement functionality around later. Tree-SHA512: 242055b7c3d32c7b2cf871f5ceda2581221902fd53fa29e0b092713fc16d3191adbe8cbb28417d522dda9febec8cc05e07afe3489cd7caaecd33460c1dde6fbc # Conflicts: # src/qt/transactionview.cpp # src/qt/transactionview.h # src/qt/walletmodel.cpp # src/qt/walletmodel.h
Consistent with #12421 which highlights the transaction after send.
I'm not too proud of theQTimer::singleShot(10
bit; any suggestions on how to properly wait for the transactions table to become aware of the new transaction?Although I could have called
focusTransaction()
directly fromTransactionView::bumpFee()
I'm using the same signal as the send screen. This should make it easier to move fee bump / transaction replacement functionality around later.