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(
icon = {
if (screen == Screen.Settings && hasUpdate) {
BadgedBox(badge = { Badge() }) {
BadgedBox(badge = { Badge(containerColor = MaterialTheme.colorScheme.primary) }) {
Icon(screen.icon, contentDescription = null)
}
} else {

View File

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

View File

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

View File

@@ -2,6 +2,7 @@ package io.nekohasekai.sfa.database
import androidx.room.Room
import io.nekohasekai.sfa.Application
import io.nekohasekai.sfa.BuildConfig
import io.nekohasekai.sfa.bg.ProxyService
import io.nekohasekai.sfa.bg.VPNService
import io.nekohasekai.sfa.constant.Path
@@ -40,7 +41,17 @@ object Settings {
var startedByUser by dataStore.boolean(SettingsKey.STARTED_BY_USER)
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 dynamicNotification by dataStore.boolean(SettingsKey.DYNAMIC_NOTIFICATION) { true }
var useComposeUI by dataStore.boolean(SettingsKey.USE_COMPOSE_UI) { true }