summaryrefslogtreecommitdiff
path: root/impls/monero.dart/lib
diff options
context:
space:
mode:
authorKonstantin Ullrich <konstantinullrich12@gmail.com>2024-10-18 17:48:38 +0200
committerKonstantin Ullrich <konstantinullrich12@gmail.com>2024-10-18 17:48:57 +0200
commitf956f6b78164412c60ba6e7e368afc17635ae7ce (patch)
tree9083f276ea3ca0e6360e2164f34c101de82c15eb /impls/monero.dart/lib
parentcaaf1e56b1d2a254b332fdf848926fb963af4a3b (diff)
Remove ledger_flutter_plus dependency
Diffstat (limited to 'impls/monero.dart/lib')
-rw-r--r--impls/monero.dart/lib/src/ledger.dart55
1 files changed, 0 insertions, 55 deletions
diff --git a/impls/monero.dart/lib/src/ledger.dart b/impls/monero.dart/lib/src/ledger.dart
deleted file mode 100644
index 166bcf4..0000000
--- a/impls/monero.dart/lib/src/ledger.dart
+++ /dev/null
@@ -1,55 +0,0 @@
-import 'dart:async';
-import 'dart:ffi';
-import 'dart:typed_data';
-
-import 'package:ffi/ffi.dart';
-import 'package:ledger_flutter_plus/ledger_flutter_plus.dart';
-import 'package:monero/monero.dart' as monero;
-
-Timer? _ledgerExchangeTimer;
-String _lastLedgerRequest = '';
-
-void enableLedgerExchange(monero.wallet ptr, LedgerConnection connection) {
- _ledgerExchangeTimer = Timer.periodic(Duration(milliseconds: 1), (_) async {
- final ledgerRequestLength = monero.Wallet_getSendToDeviceLength(ptr);
- final ledgerRequest = monero.Wallet_getSendToDevice(ptr)
- .cast<Uint8>()
- .asTypedList(ledgerRequestLength);
- if (ledgerRequestLength > 0 && _lastLedgerRequest != ledgerRequest.join()) {
- _lastLedgerRequest = ledgerRequest.join();
-
- final response = await exchange(connection, ledgerRequest);
-
- final Pointer<Uint8> result = malloc<Uint8>(response.length);
- for (var i = 0; i < response.length; i++) {
- result.asTypedList(response.length)[i] = response[i];
- }
-
- monero.Wallet_setDeviceReceivedData(
- ptr, result.cast<UnsignedChar>(), response.length);
-
- monero.Wallet_setDeviceSendData(
- ptr, malloc<Uint8>(0).cast<UnsignedChar>(), 0);
- }
- });
-}
-
-void disableLedgerExchange() {
- _ledgerExchangeTimer?.cancel();
-}
-
-Future<Uint8List> exchange(LedgerConnection connection, Uint8List data) async =>
- connection.sendOperation<Uint8List>(ExchangeOperation(data));
-
-class ExchangeOperation extends LedgerOperation<Uint8List> {
- final Uint8List inputData;
-
- ExchangeOperation(this.inputData);
-
- @override
- Future<Uint8List> read(ByteDataReader reader) async =>
- reader.read(reader.remainingLength);
-
- @override
- Future<List<Uint8List>> write(ByteDataWriter writer) async => [inputData];
-}