diff options
| author | Konstantin Ullrich <konstantinullrich12@gmail.com> | 2024-09-16 16:18:03 +0200 |
|---|---|---|
| committer | Konstantin Ullrich <konstantinullrich12@gmail.com> | 2024-09-16 16:18:03 +0200 |
| commit | 8f6d215e0f538fd5046ab972afaf270f4c4bfbe1 (patch) | |
| tree | 1f91aa9c1feba8fda5a5a7c1421300b54352d27e | |
| parent | f56b6b939a44064b1c14e79eb3a5a00a2a2a5598 (diff) | |
Migrate to ledger flutter plus
| -rw-r--r-- | impls/monero.dart/lib/src/ledger.dart | 43 | ||||
| -rw-r--r-- | impls/monero.dart/pubspec.yaml | 6 |
2 files changed, 10 insertions, 39 deletions
diff --git a/impls/monero.dart/lib/src/ledger.dart b/impls/monero.dart/lib/src/ledger.dart index fe2e3df..166bcf4 100644 --- a/impls/monero.dart/lib/src/ledger.dart +++ b/impls/monero.dart/lib/src/ledger.dart @@ -3,17 +3,13 @@ import 'dart:ffi'; import 'dart:typed_data'; import 'package:ffi/ffi.dart'; -import 'package:ledger_flutter/src/ledger.dart'; -import 'package:ledger_flutter/src/ledger/ledger_operation.dart'; -import 'package:ledger_flutter/src/models/ledger_device.dart'; -import 'package:ledger_flutter/src/utils/buffer.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, Ledger ledger, LedgerDevice device) { +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) @@ -22,7 +18,7 @@ void enableLedgerExchange( if (ledgerRequestLength > 0 && _lastLedgerRequest != ledgerRequest.join()) { _lastLedgerRequest = ledgerRequest.join(); - final response = await exchange(ledger, device, ledgerRequest); + final response = await exchange(connection, ledgerRequest); final Pointer<Uint8> result = malloc<Uint8>(response.length); for (var i = 0; i < response.length; i++) { @@ -42,43 +38,18 @@ void disableLedgerExchange() { _ledgerExchangeTimer?.cancel(); } -Future<Uint8List> exchange( - Ledger ledger, LedgerDevice device, Uint8List data) async { - return ledger.sendOperation<Uint8List>( - device, - ExchangeOperation( - cla: 0x00, - ins: 0x00, - p1: 0x00, - p2: 0x00, - inputData: data, - ), - ); -} +Future<Uint8List> exchange(LedgerConnection connection, Uint8List data) async => + connection.sendOperation<Uint8List>(ExchangeOperation(data)); class ExchangeOperation extends LedgerOperation<Uint8List> { - final int cla; - final int ins; - final int p1; - final int p2; final Uint8List inputData; - ExchangeOperation({ - required this.cla, - required this.ins, - required this.p1, - required this.p2, - required this.inputData, - }); + ExchangeOperation(this.inputData); @override Future<Uint8List> read(ByteDataReader reader) async => reader.read(reader.remainingLength); @override - Future<List<Uint8List>> write(ByteDataWriter writer) async { - writer.write(inputData); - - return [writer.toBytes()]; - } + Future<List<Uint8List>> write(ByteDataWriter writer) async => [inputData]; } diff --git a/impls/monero.dart/pubspec.yaml b/impls/monero.dart/pubspec.yaml index 4c6254b..4f42964 100644 --- a/impls/monero.dart/pubspec.yaml +++ b/impls/monero.dart/pubspec.yaml @@ -8,10 +8,10 @@ environment: dependencies: ffi: ^2.1.0 - ledger_flutter: + ledger_flutter_plus: git: - url: https://github.com/MrCyjaneK/ledger-flutter - ref: d68f1be485717bedad0779ee6114afec1896fbc9 + url: https://github.com/cake-tech/ledger-flutter-plus + ref: cake-v1 dev_dependencies: lints: ^4.0.0 |
