mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 03:52:49 +01:00
Merge #6457: fix(qt): improve GUI responsiveness for huge wallets
a4378fc2ff
fix(qt): emit dataChanged for the whole model in TransactionTableModel (UdjinM6) Pull request description: ## Issue being fixed or feature implemented Somehow a 500k+ txes wallet is MUCH more responsive with this patch. I'm not sure if it's macos only or not though, pls test. ## What was done? ## How Has This Been Tested? Run a wallet with 100k+ txes in it and send a tx or try changing units. ## Breaking Changes ## Checklist: - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: knst: ACKa4378fc2ff
PastaPastaPasta: utACKa4378fc2ff
Tree-SHA512: eb0116f99f145ee131bd4a69895c9384dc26fc113ee034a2af74a92b0770b33631455a79e5826dc004f922ac182481eb26c54255274e186a47da3796da9550a6
This commit is contained in:
commit
babafbb1be
@ -314,10 +314,7 @@ void TransactionTableModel::updateAddressBook(const QString& address, const QStr
|
|||||||
void TransactionTableModel::updateConfirmations()
|
void TransactionTableModel::updateConfirmations()
|
||||||
{
|
{
|
||||||
// Blocks came in since last poll.
|
// Blocks came in since last poll.
|
||||||
// Invalidate status (number of confirmations) and (possibly) description
|
Q_EMIT dataChanged(QModelIndex(), QModelIndex());
|
||||||
// for all rows. Qt is smart enough to only actually request the data for the
|
|
||||||
// visible rows.
|
|
||||||
Q_EMIT dataChanged(index(0, Status), index(priv->size()-1, Status));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -799,7 +796,7 @@ void TransactionTableModel::updateDisplayUnit()
|
|||||||
{
|
{
|
||||||
// emit dataChanged to update Amount column with the current unit
|
// emit dataChanged to update Amount column with the current unit
|
||||||
updateAmountColumnTitle();
|
updateAmountColumnTitle();
|
||||||
Q_EMIT dataChanged(index(0, Amount), index(priv->size()-1, Amount));
|
Q_EMIT dataChanged(QModelIndex(), QModelIndex());
|
||||||
}
|
}
|
||||||
|
|
||||||
void TransactionTablePriv::NotifyTransactionChanged(const uint256 &hash, ChangeType status)
|
void TransactionTablePriv::NotifyTransactionChanged(const uint256 &hash, ChangeType status)
|
||||||
|
Loading…
Reference in New Issue
Block a user