Update to make use of lightning-kmp-appp
This commit is contained in:
@@ -7,13 +7,14 @@ import androidx.activity.ComponentActivity
|
||||
import androidx.activity.compose.setContent
|
||||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.navigation.compose.rememberNavController
|
||||
import fr.acinq.phoenix.NFCActivity
|
||||
import press.mantra.compose.PlatformContext
|
||||
import press.mantra.compose.MantraApp
|
||||
import press.mantra.compose.MantraGlobal
|
||||
import fr.acinq.phoenix.PhoenixGlobal
|
||||
import fr.acinq.phoenix.android.services.HceService
|
||||
|
||||
class MainActivity : ComponentActivity() {
|
||||
class MainActivity : ComponentActivity(), NFCActivity {
|
||||
|
||||
private var nfcAdapter: NfcAdapter? = null
|
||||
|
||||
@@ -41,11 +42,11 @@ class MainActivity : ComponentActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
fun stopHceService() {
|
||||
override fun stopHceService() {
|
||||
stopService(Intent(this@MainActivity, HceService::class.java))
|
||||
}
|
||||
|
||||
fun stopNfcReader() {
|
||||
override fun stopNfcReader() {
|
||||
if (com.machankura.compose.ui.composable.widgets.nfc.NfcStateRepository.isReading()) {
|
||||
com.machankura.compose.ui.composable.widgets.nfc.NfcStateRepository.updateState(
|
||||
com.machankura.compose.ui.composable.widgets.nfc.NfcState.Inactive)
|
||||
|
||||
@@ -7,22 +7,31 @@ import androidx.datastore.preferences.core.Preferences
|
||||
import androidx.datastore.preferences.preferencesDataStore
|
||||
import fr.acinq.phoenix.PhoenixGlobal
|
||||
import fr.acinq.phoenix.android.BusinessManager
|
||||
import fr.acinq.phoenix.android.LightningApplication
|
||||
import fr.acinq.phoenix.utils.PlatformContext
|
||||
import fr.acinq.phoenix.utils.preferences.GlobalPrefs
|
||||
|
||||
/** This datastore persists preferences across node ids. */
|
||||
val Context.globalPrefs: DataStore<Preferences> by preferencesDataStore(name = "globalprefs")
|
||||
|
||||
class MantraApplication: Application() {
|
||||
lateinit var globalPrefs: GlobalPrefs
|
||||
lateinit var phoenixGlobal: PhoenixGlobal
|
||||
class MantraApplication: Application(), LightningApplication {
|
||||
private lateinit var globalPrefs: GlobalPrefs
|
||||
private lateinit var phoenixGlobal: PhoenixGlobal
|
||||
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
|
||||
phoenixGlobal = PhoenixGlobal(PlatformContext(applicationContext))
|
||||
globalPrefs = GlobalPrefs(applicationContext.globalPrefs)
|
||||
BusinessManager.initialize(applicationContext)
|
||||
BusinessManager.initialize(this)
|
||||
|
||||
}
|
||||
|
||||
override fun getGlobalPrefs(): GlobalPrefs {
|
||||
return globalPrefs
|
||||
}
|
||||
|
||||
override fun getPhoenixGlobal(): PhoenixGlobal {
|
||||
return phoenixGlobal
|
||||
}
|
||||
}
|
||||
@@ -24,10 +24,10 @@ actual fun schedulePlatformLogic(phoenixGlobal: PhoenixGlobal) {
|
||||
}
|
||||
actual fun getShowIntroFlow(phoenixGlobal: PhoenixGlobal): Flow<Boolean> {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as MantraApplication
|
||||
return machankuraApplication.globalPrefs.getShowIntro
|
||||
return machankuraApplication.getGlobalPrefs().getShowIntro
|
||||
}
|
||||
|
||||
actual fun getGlobalPrefs(phoenixGlobal: PhoenixGlobal): GlobalPrefs {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as MantraApplication
|
||||
return machankuraApplication.globalPrefs
|
||||
return machankuraApplication.getGlobalPrefs()
|
||||
}
|
||||
@@ -36,12 +36,12 @@ actual fun loadAndDecryptSeed(phoenixGlobal: PhoenixGlobal): DecryptSeedResult {
|
||||
|
||||
actual fun getAvailableWalletsMeta(phoenixGlobal: PhoenixGlobal): Flow<Map<WalletId, UserWalletMetadata>> {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as MantraApplication
|
||||
return machankuraApplication.globalPrefs.getAvailableWalletsMeta
|
||||
return machankuraApplication.getGlobalPrefs().getAvailableWalletsMeta
|
||||
}
|
||||
|
||||
actual suspend fun saveAvailableWalletMeta(phoenixGlobal: PhoenixGlobal, metadata: UserWalletMetadata) {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as MantraApplication
|
||||
machankuraApplication.globalPrefs.saveAvailableWalletMeta(metadata)
|
||||
machankuraApplication.getGlobalPrefs().saveAvailableWalletMeta(metadata)
|
||||
}
|
||||
|
||||
actual suspend fun saveAvailableWalletMeta(
|
||||
@@ -52,7 +52,7 @@ actual suspend fun saveAvailableWalletMeta(
|
||||
isHidden: Boolean
|
||||
) {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as MantraApplication
|
||||
machankuraApplication.globalPrefs.saveAvailableWalletMeta(
|
||||
machankuraApplication.getGlobalPrefs().saveAvailableWalletMeta(
|
||||
walletId = walletId,
|
||||
name = name,
|
||||
avatar = avatar,
|
||||
|
||||
Reference in New Issue
Block a user