mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-28 12:29:51 +00:00
CW-1024 Improve performance of xmr wallet (#2128)
* - enabled development options in CI builds. - Implemented caching for account retrieval. - refactor transaction handling in `dashboard_view_model.dart` to improve efficiency and reduce unnecessary updates in xmr. - `DevMoneroCallProfilerPage`, for profiling performance of xmr,wow,zano wallet calls. * use FeatureFlag.hasDevOptions * prevent crashes in monero_c by using mutexes properly improve performance of _transactionDisposer remove unnecessary checks * remove logging, bring back simplified logic * update _transactionDisposer on length and confirmation of first and last transaction * address comments from review * don't throw unhandled exceptions in unawaited async code * use cached transaction list in getAllSubaddresses, fix usage of txHistoryMutex * [DNM] fix: crashes when opening wallet, performance issue when syncing and update dependencies * Revert "use cached transaction list in getAllSubaddresses, fix usage of txHistoryMutex" This reverts commit 4c4c33ac6a47603e970a6c8d940e90204525b241. * Revert "[DNM] fix: crashes when opening wallet, performance issue when syncing and update dependencies" This reverts commit d7603445ad6ae76d76bf179c34728ce242c8c610. * Revert "use cached transaction list in getAllSubaddresses, fix usage of txHistoryMutex" This reverts commit 4c4c33ac6a47603e970a6c8d940e90204525b241. * update shared_preferences * improve state management performance by not rendering multiple changes in transaction screen on a single frame * fix wallet switching
This commit is contained in:
parent
27eaa1b1cc
commit
cbca4c9c77
25 changed files with 498 additions and 105 deletions
|
@ -425,6 +425,7 @@ abstract class Monero {
|
|||
void setLedgerConnection(Object wallet, ledger.LedgerConnection connection);
|
||||
void resetLedgerConnection();
|
||||
void setGlobalLedgerConnection(ledger.LedgerConnection connection);
|
||||
Map<String, List<int>> debugCallLength();
|
||||
}
|
||||
|
||||
abstract class MoneroSubaddressList {
|
||||
|
@ -610,6 +611,7 @@ abstract class Wownero {
|
|||
WalletService createWowneroWalletService(Box<WalletInfo> walletInfoSource, Box<UnspentCoinsInfo> unspentCoinSource);
|
||||
Map<String, String> pendingTransactionInfo(Object transaction);
|
||||
String getLegacySeed(Object wallet, String langName);
|
||||
Map<String, List<int>> debugCallLength();
|
||||
}
|
||||
|
||||
abstract class WowneroSubaddressList {
|
||||
|
@ -1253,6 +1255,7 @@ import 'package:cw_zano/model/zano_transaction_info.dart';
|
|||
import 'package:cw_zano/zano_formatter.dart';
|
||||
import 'package:cw_zano/zano_wallet.dart';
|
||||
import 'package:cw_zano/zano_wallet_service.dart';
|
||||
import 'package:cw_zano/zano_wallet_api.dart' as api;
|
||||
import 'package:cw_zano/zano_utils.dart';
|
||||
""";
|
||||
const zanoCwPart = "part 'cw_zano.dart';";
|
||||
|
@ -1279,6 +1282,7 @@ abstract class Zano {
|
|||
Future<CryptoCurrency?> getZanoAsset(WalletBase wallet, String contractAddress);
|
||||
String getAddress(WalletBase wallet);
|
||||
bool validateAddress(String address);
|
||||
Map<String, List<int>> debugCallLength();
|
||||
}
|
||||
""";
|
||||
const zanoEmptyDefinition = 'Zano? zano;\n';
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue