Fork Aux to make Torch
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||
|
||||
<application
|
||||
android:name=".InomboloApplication"
|
||||
android:name=".TorchApplication"
|
||||
android:allowBackup="true"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
@@ -16,7 +16,7 @@
|
||||
android:theme="@android:style/Theme.Material.Light.NoActionBar">
|
||||
<activity
|
||||
android:exported="true"
|
||||
android:name="ac.cord.auxiliary.android.MainActivity">
|
||||
android:name="at.torch.android.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package ac.cord.auxiliary.android
|
||||
package at.torch.android
|
||||
|
||||
import ac.cord.auxiliary.compose.AuxApp
|
||||
import ac.cord.auxiliary.compose.AuxGlobal
|
||||
import ac.cord.auxiliary.compose.PlatformContext
|
||||
import at.torch.auxiliary.compose.AuxApp
|
||||
import at.torch.auxiliary.compose.AuxGlobal
|
||||
import at.torch.compose.PlatformContext
|
||||
import android.content.Intent
|
||||
import android.nfc.NfcAdapter
|
||||
import android.os.Bundle
|
||||
@@ -48,8 +48,9 @@ class MainActivity : ComponentActivity() {
|
||||
}
|
||||
|
||||
fun stopNfcReader() {
|
||||
if (NfcStateRepository.isReading()) {
|
||||
NfcStateRepository.updateState(NfcState.Inactive)
|
||||
if (_root_ide_package_.com.machankura.compose.ui.composable.widgets.nfc.NfcStateRepository.isReading()) {
|
||||
_root_ide_package_.com.machankura.compose.ui.composable.widgets.nfc.NfcStateRepository.updateState(
|
||||
_root_ide_package_.com.machankura.compose.ui.composable.widgets.nfc.NfcState.Inactive)
|
||||
}
|
||||
nfcAdapter?.disableReaderMode(this@MainActivity)
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package ac.cord.auxiliary.android
|
||||
package at.torch.android
|
||||
|
||||
import android.app.Application
|
||||
import android.content.Context
|
||||
@@ -7,14 +7,13 @@ 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.utils.Logging
|
||||
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 InomboloApplication: Application() {
|
||||
class TorchApplication: Application() {
|
||||
lateinit var globalPrefs: GlobalPrefs
|
||||
lateinit var phoenixGlobal: PhoenixGlobal
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package ac.cord.auxiliary.compose
|
||||
package at.torch.compose
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
|
||||
actual object AppVersion {
|
||||
actual val versionName: String
|
||||
@@ -1,4 +1,4 @@
|
||||
package ac.cord.auxiliary.compose
|
||||
package at.torch.compose
|
||||
|
||||
import android.os.Build
|
||||
|
||||
@@ -6,4 +6,4 @@ class AndroidPlatform : Platform {
|
||||
override val name: String = "Android ${Build.VERSION.SDK_INT}"
|
||||
}
|
||||
|
||||
actual fun getPlatform(): Platform = AndroidPlatform()
|
||||
actual fun getPlatform(): Platform = _root_ide_package_.at.torch.compose.AndroidPlatform()
|
||||
@@ -1,4 +1,4 @@
|
||||
package ac.cord.auxiliary.compose
|
||||
package at.torch.compose
|
||||
|
||||
import android.content.Context
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
package ac.cord.auxiliary.compose.database.builder
|
||||
package at.torch.compose.database.builder
|
||||
|
||||
import ac.cord.auxiliary.compose.PlatformContext
|
||||
import ac.cord.auxiliary.compose.database.AuxDatabase
|
||||
import at.torch.compose.PlatformContext
|
||||
import at.torch.compose.database.TorchDatabase
|
||||
import androidx.room3.Room
|
||||
import androidx.room3.RoomDatabase
|
||||
|
||||
actual object PlatformDatabaseBuilder {
|
||||
actual fun getDatabaseBuilder(platformContext: PlatformContext): RoomDatabase.Builder<AuxDatabase> {
|
||||
actual fun getDatabaseBuilder(platformContext: PlatformContext): RoomDatabase.Builder<TorchDatabase> {
|
||||
val appContext = platformContext.applicationContext
|
||||
|
||||
val dbFile = appContext.getDatabasePath("aux.db")
|
||||
return Room.databaseBuilder<AuxDatabase>(
|
||||
return Room.databaseBuilder<TorchDatabase>(
|
||||
context = appContext,
|
||||
name = dbFile.absolutePath
|
||||
)
|
||||
}
|
||||
|
||||
actual fun getInMemoryDatabaseBuilder(platform: PlatformContext): RoomDatabase.Builder<AuxDatabase> {
|
||||
actual fun getInMemoryDatabaseBuilder(platform: PlatformContext): RoomDatabase.Builder<TorchDatabase> {
|
||||
return Room.inMemoryDatabaseBuilder(
|
||||
context = platform.applicationContext
|
||||
)
|
||||
@@ -1,6 +1,6 @@
|
||||
package ac.cord.auxiliary.compose.extensions
|
||||
package at.torch.compose.extensions
|
||||
|
||||
import ac.cord.auxiliary.android.InomboloApplication
|
||||
import at.torch.android.TorchApplication
|
||||
import fr.acinq.phoenix.PhoenixGlobal
|
||||
import fr.acinq.phoenix.android.BusinessManager
|
||||
import fr.acinq.phoenix.android.services.ChannelsWatcher
|
||||
@@ -23,11 +23,11 @@ actual fun schedulePlatformLogic(phoenixGlobal: PhoenixGlobal) {
|
||||
ContactsPhotoCleaner.schedule(phoenixGlobal.ctx.applicationContext)
|
||||
}
|
||||
actual fun getShowIntroFlow(phoenixGlobal: PhoenixGlobal): Flow<Boolean> {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as InomboloApplication
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as TorchApplication
|
||||
return machankuraApplication.globalPrefs.getShowIntro
|
||||
}
|
||||
|
||||
actual fun getGlobalPrefs(phoenixGlobal: PhoenixGlobal): GlobalPrefs {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as InomboloApplication
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as TorchApplication
|
||||
return machankuraApplication.globalPrefs
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package ac.cord.auxiliary.compose.ui.theme
|
||||
package at.torch.compose.ui.theme
|
||||
|
||||
import android.os.Build
|
||||
import androidx.compose.material3.ColorScheme
|
||||
@@ -1,7 +1,7 @@
|
||||
package ac.cord.auxiliary.compose.ui.view.model
|
||||
package at.torch.compose.ui.view.model
|
||||
|
||||
import ac.cord.auxiliary.android.InomboloApplication
|
||||
import ac.cord.auxiliary.compose.AppVersion
|
||||
import at.torch.android.TorchApplication
|
||||
import at.torch.auxiliary.compose.AppVersion
|
||||
import co.touchlab.kermit.Logger
|
||||
import fr.acinq.bitcoin.MnemonicCode
|
||||
import fr.acinq.lightning.crypto.LocalKeyManager
|
||||
@@ -35,12 +35,12 @@ actual fun loadAndDecryptSeed(phoenixGlobal: PhoenixGlobal): DecryptSeedResult {
|
||||
}
|
||||
|
||||
actual fun getAvailableWalletsMeta(phoenixGlobal: PhoenixGlobal): Flow<Map<WalletId, UserWalletMetadata>> {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as InomboloApplication
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as TorchApplication
|
||||
return machankuraApplication.globalPrefs.getAvailableWalletsMeta
|
||||
}
|
||||
|
||||
actual suspend fun saveAvailableWalletMeta(phoenixGlobal: PhoenixGlobal, metadata: UserWalletMetadata) {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as InomboloApplication
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as TorchApplication
|
||||
machankuraApplication.globalPrefs.saveAvailableWalletMeta(metadata)
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ actual suspend fun saveAvailableWalletMeta(
|
||||
avatar: String,
|
||||
isHidden: Boolean
|
||||
) {
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as InomboloApplication
|
||||
val machankuraApplication = phoenixGlobal.ctx.applicationContext as TorchApplication
|
||||
machankuraApplication.globalPrefs.saveAvailableWalletMeta(
|
||||
walletId = walletId,
|
||||
name = name,
|
||||
@@ -16,9 +16,9 @@
|
||||
|
||||
package fr.acinq.phoenix.android
|
||||
|
||||
import ac.cord.auxiliary.android.InomboloApplication
|
||||
import ac.cord.auxiliary.compose.AppVersion
|
||||
import ac.cord.auxiliary.compose.ui.composable.widgets.wallet.WalletAvatars
|
||||
import at.torch.android.TorchApplication
|
||||
import at.torch.auxiliary.compose.AppVersion
|
||||
import at.torch.auxiliary.compose.ui.composable.widgets.wallet.WalletAvatars
|
||||
import android.content.Context
|
||||
import android.text.format.DateUtils
|
||||
import fr.acinq.lightning.LiquidityEvents
|
||||
@@ -34,10 +34,8 @@ import fr.acinq.phoenix.data.StartupParams
|
||||
import fr.acinq.phoenix.data.WalletId
|
||||
import fr.acinq.phoenix.data.inFlightPaymentsCount
|
||||
import fr.acinq.phoenix.managers.AppConnectionsDaemon
|
||||
import fr.acinq.phoenix.managers.DataStoreManager
|
||||
import fr.acinq.phoenix.managers.NodeParamsManager
|
||||
import fr.acinq.phoenix.managers.PeerManager
|
||||
import fr.acinq.phoenix.managers.WalletManager
|
||||
import fr.acinq.phoenix.managers.global.CurrencyManager
|
||||
import fr.acinq.phoenix.utils.MnemonicLanguage
|
||||
import fr.acinq.phoenix.utils.SystemNotificationHelper
|
||||
@@ -47,7 +45,6 @@ import fr.acinq.phoenix.utils.preferences.UserWalletMetadata
|
||||
import fr.acinq.phoenix.utils.preferences.getByWalletIdOrDefault
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.SupervisorJob
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
@@ -70,7 +67,7 @@ object BusinessManager {
|
||||
|
||||
// No memory leaks because this can only contain the application context.
|
||||
private lateinit var appContext: Context
|
||||
private val application by lazy { appContext as InomboloApplication }
|
||||
private val application by lazy { appContext as TorchApplication }
|
||||
|
||||
/** A map of (walletId -> active businesses) */
|
||||
private val _businessFlow = MutableStateFlow<Map<WalletId, BusinessRunning>>(emptyMap())
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package fr.acinq.phoenix.android.services
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import android.content.Context
|
||||
import androidx.work.CoroutineWorker
|
||||
import androidx.work.ExistingPeriodicWorkPolicy
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package fr.acinq.phoenix.android.services
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import android.content.Context
|
||||
import androidx.work.CoroutineWorker
|
||||
import androidx.work.ExistingPeriodicWorkPolicy
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package fr.acinq.phoenix.android.services
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import android.content.Context
|
||||
import androidx.work.CoroutineWorker
|
||||
import androidx.work.ExistingPeriodicWorkPolicy
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
|
||||
package fr.acinq.phoenix.android.services
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import ac.cord.auxiliary.android.InomboloApplication
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import at.torch.android.TorchApplication
|
||||
import android.content.Context
|
||||
import android.os.Build
|
||||
import androidx.work.CoroutineWorker
|
||||
@@ -95,7 +95,7 @@ class InflightPaymentsWatcher(context: Context, workerParams: WorkerParameters)
|
||||
}
|
||||
|
||||
val watchResult = userWallets.map { (walletId, wallet) ->
|
||||
val walletMetadata = (applicationContext as InomboloApplication).globalPrefs.getAvailableWalletsMeta.first().getByWalletIdOrDefault(walletId)
|
||||
val walletMetadata = (applicationContext as TorchApplication).globalPrefs.getAvailableWalletsMeta.first().getByWalletIdOrDefault(walletId)
|
||||
watchWallet(walletId, walletMetadata, wallet.words)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,16 +1,12 @@
|
||||
package fr.acinq.phoenix.android.services
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import ac.cord.auxiliary.android.InomboloApplication
|
||||
import android.app.Notification
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import at.torch.android.TorchApplication
|
||||
import android.app.Service
|
||||
import android.content.Intent
|
||||
import android.content.pm.ServiceInfo
|
||||
import android.os.Build
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import androidx.core.app.NotificationManagerCompat
|
||||
import androidx.core.app.ServiceCompat
|
||||
import fr.acinq.lightning.utils.Connection
|
||||
import fr.acinq.phoenix.PhoenixBusiness
|
||||
import fr.acinq.phoenix.PhoenixGlobal
|
||||
@@ -104,7 +100,7 @@ class PaymentsForegroundService : Service() {
|
||||
is DecryptSeedResult.Failure -> {
|
||||
log.info("unable to read seed, ignoring background message (reason=$reason)")
|
||||
serviceScope.launch {
|
||||
val walletMetadataMap = (application as InomboloApplication).globalPrefs.getAvailableWalletsMeta.first()
|
||||
val walletMetadataMap = (application as TorchApplication).globalPrefs.getAvailableWalletsMeta.first()
|
||||
val metadata = walletMetadataMap.getByWalletIdOrDefault(walletId)
|
||||
when (reason) {
|
||||
"IncomingPayment" -> SystemNotificationHelper.notifyPaymentMissedAppUnavailable(applicationContext, metadata)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package fr.acinq.phoenix.utils
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import android.content.Context
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
|
||||
@@ -16,12 +16,11 @@
|
||||
|
||||
package fr.acinq.phoenix.utils
|
||||
|
||||
import ac.cord.auxiliary.android.BuildConfig
|
||||
import ac.cord.auxiliary.android.MainActivity
|
||||
import ac.cord.auxiliary.android.R
|
||||
import at.torch.auxiliary.android.BuildConfig
|
||||
import at.torch.android.MainActivity
|
||||
import at.torch.auxiliary.android.R
|
||||
import android.Manifest
|
||||
import android.app.Notification
|
||||
import android.app.NotificationChannel
|
||||
import android.app.NotificationManager
|
||||
import android.app.PendingIntent
|
||||
import android.content.Context
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package fr.acinq.phoenix.utils.extensions
|
||||
|
||||
import ac.cord.auxiliary.android.MainActivity
|
||||
import at.torch.android.MainActivity
|
||||
import android.content.Context
|
||||
import android.content.ContextWrapper
|
||||
|
||||
|
||||
Reference in New Issue
Block a user