Default update track to beta for pre-release versions and use primary color for update badges

This commit is contained in:
世界
2025-12-18 19:38:30 +08:00
parent d69a6b38b9
commit edf3491f61
4 changed files with 15 additions and 4 deletions

View File

@@ -475,7 +475,7 @@ class ComposeActivity : ComponentActivity(), ServiceConnection.Callback {
NavigationBarItem( NavigationBarItem(
icon = { icon = {
if (screen == Screen.Settings && hasUpdate) { if (screen == Screen.Settings && hasUpdate) {
BadgedBox(badge = { Badge() }) { BadgedBox(badge = { Badge(containerColor = MaterialTheme.colorScheme.primary) }) {
Icon(screen.icon, contentDescription = null) Icon(screen.icon, contentDescription = null)
} }
} else { } else {

View File

@@ -142,7 +142,7 @@ fun AppSettingsScreen(navController: NavController) {
}, },
trailingContent = { trailingContent = {
if (hasUpdate) { if (hasUpdate) {
Badge { Text("New") } Badge(containerColor = MaterialTheme.colorScheme.primary) { Text("New") }
} }
}, },
modifier = modifier =

View File

@@ -105,7 +105,7 @@ fun SettingsScreen(navController: NavController) {
}, },
trailingContent = { trailingContent = {
if (hasUpdate) { if (hasUpdate) {
Badge() Badge(containerColor = MaterialTheme.colorScheme.primary)
} }
}, },
modifier = modifier =

View File

@@ -2,6 +2,7 @@ package io.nekohasekai.sfa.database
import androidx.room.Room import androidx.room.Room
import io.nekohasekai.sfa.Application import io.nekohasekai.sfa.Application
import io.nekohasekai.sfa.BuildConfig
import io.nekohasekai.sfa.bg.ProxyService import io.nekohasekai.sfa.bg.ProxyService
import io.nekohasekai.sfa.bg.VPNService import io.nekohasekai.sfa.bg.VPNService
import io.nekohasekai.sfa.constant.Path import io.nekohasekai.sfa.constant.Path
@@ -40,7 +41,17 @@ object Settings {
var startedByUser by dataStore.boolean(SettingsKey.STARTED_BY_USER) var startedByUser by dataStore.boolean(SettingsKey.STARTED_BY_USER)
var checkUpdateEnabled by dataStore.boolean(SettingsKey.CHECK_UPDATE_ENABLED) { true } var checkUpdateEnabled by dataStore.boolean(SettingsKey.CHECK_UPDATE_ENABLED) { true }
var updateTrack by dataStore.string(SettingsKey.UPDATE_TRACK) { "stable" } var updateTrack by dataStore.string(SettingsKey.UPDATE_TRACK) {
val versionName = BuildConfig.VERSION_NAME.lowercase()
if (versionName.contains("-alpha") ||
versionName.contains("-beta") ||
versionName.contains("-rc")
) {
"beta"
} else {
"stable"
}
}
var disableMemoryLimit by dataStore.boolean(SettingsKey.DISABLE_MEMORY_LIMIT) var disableMemoryLimit by dataStore.boolean(SettingsKey.DISABLE_MEMORY_LIMIT)
var dynamicNotification by dataStore.boolean(SettingsKey.DYNAMIC_NOTIFICATION) { true } var dynamicNotification by dataStore.boolean(SettingsKey.DYNAMIC_NOTIFICATION) { true }
var useComposeUI by dataStore.boolean(SettingsKey.USE_COMPOSE_UI) { true } var useComposeUI by dataStore.boolean(SettingsKey.USE_COMPOSE_UI) { true }