From 8b05da8e86b9d59f2ded0a968d6fac5c0f54739c Mon Sep 17 00:00:00 2001 From: "claude[bot]" <209825114+claude[bot]@users.noreply.github.com> Date: Fri, 9 Oct 2026 12:28:47 +0200 Subject: [PATCH] Keep Enable Lightning toggle visible after disabling it (#3702) --- cw_bitcoin/lib/bitcoin_wallet.dart | 6 ++++-- cw_bitcoin/lib/electrum_wallet_addresses.dart | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/cw_bitcoin/lib/bitcoin_wallet.dart b/cw_bitcoin/lib/bitcoin_wallet.dart index 1614cbe2e..132227f27 100644 --- a/cw_bitcoin/lib/bitcoin_wallet.dart +++ b/cw_bitcoin/lib/bitcoin_wallet.dart @@ -160,9 +160,11 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store { lnurlDomain: "cake.cash", cachedAddress: cachedLightningAddress, ); + walletAddresses.lightningWallet = lightningWallet; walletAddresses.setLightningAddress(walletInfo.name); } } else { + lightningWallet?.close(); lightningWallet = null; } }); @@ -426,7 +428,7 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store { bool get hasPayjoinSupport => keys.privateKey.isNotEmpty; @override - bool get hasLightningSupport => lightningWallet?.sdk != null; + bool get hasLightningSupport => seed != null && LightningWallet.isAvailable; bool get isPayjoinAvailable => unspentCoinsInfo.values .where((element) => element.walletId == id && element.isSending && !element.isFrozen) @@ -727,7 +729,7 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store { if (option == BitcoinReceivePageOption.lightning) { // Lightning is tied to the primary account only - return !isExtraAccount && hasLightningSupport; + return !isExtraAccount && hasLightningSupport && isLightningInitialized; } if (option == BitcoinReceivePageOption.silent_payments) { diff --git a/cw_bitcoin/lib/electrum_wallet_addresses.dart b/cw_bitcoin/lib/electrum_wallet_addresses.dart index 2779e2ad0..37fb57775 100644 --- a/cw_bitcoin/lib/electrum_wallet_addresses.dart +++ b/cw_bitcoin/lib/electrum_wallet_addresses.dart @@ -171,7 +171,7 @@ abstract class ElectrumWalletAddressesBase extends WalletAddresses with Store { final Bip32Slip10Secp256k1 legacyMainHd; final Bip32Slip10Secp256k1 legacySideHd; final bool isHardwareWallet; - final LightningWallet? lightningWallet; + LightningWallet? lightningWallet; @observable ObservableMap lockedReceiveAddressByType;