mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-28 12:29:51 +00:00
Mweb enhancements 4 (#1768)
* [skip-ci] show mweb confirmations, show last mweb balance while syncing * potential send-all fix * [skip-ci] undo fix that didn't work * [skip-ci] undo unnecessary changes * [skip ci] add export mweb logs screen * [skip ci] cleanup * confirmation fixes * catch electrum call errors * [skip ci] undo some changes * potential electrum fixes + mweb logs display only last 10000 characters * Add question mark and link to MWEB card * updates * show negative unconfirmed mweb balanaces + other fixes [skip ci] * error handling * [skip ci] [wip] check if node supports mweb * check fee before building tx * [skip ci] minor * [skip ci] minor * mweb node setting [wip] [skip ci] * prioritize mweb coins when selecting inputs from the pool * potential connection edgecase fix * translations + mweb node fixes * don't use mweb for exchange refund address * add peg in / out labels and make 6 confs only show up for peg in / out * bump bitcoin_base version to v9 * [skip ci] fix logs page * don't fetch txinfo for non-mweb addresses [skip ci] * fix non-mweb confirmations * rename always scan to enable mweb * Update litecoin_wallet_addresses.dart Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com> * Update cw_mweb.dart Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com> * [skip ci] review updates pt.1 * [skip ci] minor code cleanup * [skip ci] use exception handler * exception handling [skip ci] * [skip ci] exception handling * trigger build * pegout label fixes * fix showing change transactions on peg-out * minor code cleanup and minor peg-out fix * final balance fixes * non-mweb confirmations potential fix * [skip ci] wip * trigger build --------- Co-authored-by: tuxpizza <tuxsudo@tux.pizza> Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
This commit is contained in:
parent
109d9b458e
commit
c8cfc2cff1
55 changed files with 821 additions and 207 deletions
|
@ -13,8 +13,18 @@ class CwMweb {
|
|||
static RpcClient? _rpcClient;
|
||||
static ClientChannel? _clientChannel;
|
||||
static int? _port;
|
||||
static const TIMEOUT_DURATION = Duration(seconds: 5);
|
||||
static const TIMEOUT_DURATION = Duration(seconds: 15);
|
||||
static Timer? logTimer;
|
||||
static String? nodeUriOverride;
|
||||
|
||||
|
||||
static Future<void> setNodeUriOverride(String uri) async {
|
||||
nodeUriOverride = uri;
|
||||
if (_rpcClient != null) {
|
||||
await stop();
|
||||
// will be re-started automatically when the next rpc call is made
|
||||
}
|
||||
}
|
||||
|
||||
static void readFileWithTimer(String filePath) {
|
||||
final file = File(filePath);
|
||||
|
@ -47,7 +57,7 @@ class CwMweb {
|
|||
String debugLogPath = "${appDir.path}/logs/debug.log";
|
||||
readFileWithTimer(debugLogPath);
|
||||
|
||||
_port = await CwMwebPlatform.instance.start(appDir.path, ltcNodeUri);
|
||||
_port = await CwMwebPlatform.instance.start(appDir.path, nodeUriOverride ?? ltcNodeUri);
|
||||
if (_port == null || _port == 0) {
|
||||
throw Exception("Failed to start server");
|
||||
}
|
||||
|
@ -197,4 +207,18 @@ class CwMweb {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
static Future<BroadcastResponse> broadcast(BroadcastRequest request) async {
|
||||
log("mweb.broadcast() called");
|
||||
try {
|
||||
_rpcClient = await stub();
|
||||
return await _rpcClient!.broadcast(request, options: CallOptions(timeout: TIMEOUT_DURATION));
|
||||
} on GrpcError catch (e) {
|
||||
log('Caught grpc error: ${e.message}');
|
||||
throw "error from broadcast mweb: $e";
|
||||
} catch (e) {
|
||||
log("Error getting create: $e");
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue