[skip ci]: Adding a check for LKM mode to the KPM info card

This commit is contained in:
ShirkNeko
2025-04-21 09:20:38 +08:00
parent 5941fa1ec7
commit 626db4be56
2 changed files with 21 additions and 16 deletions

View File

@@ -20,6 +20,8 @@ import androidx.navigation.compose.rememberNavController
import com.ramcosta.composedestinations.DestinationsNavHost import com.ramcosta.composedestinations.DestinationsNavHost
import com.ramcosta.composedestinations.animations.NavHostAnimatedDestinationStyle import com.ramcosta.composedestinations.animations.NavHostAnimatedDestinationStyle
import com.ramcosta.composedestinations.generated.NavGraphs import com.ramcosta.composedestinations.generated.NavGraphs
import com.ramcosta.composedestinations.spec.NavHostGraphSpec
import com.ramcosta.composedestinations.spec.RouteOrDirection
import com.ramcosta.composedestinations.utils.isRouteOnBackStackAsState import com.ramcosta.composedestinations.utils.isRouteOnBackStackAsState
import com.ramcosta.composedestinations.utils.rememberDestinationsNavigator import com.ramcosta.composedestinations.utils.rememberDestinationsNavigator
import io.zako.zako.UltraToolInstall import io.zako.zako.UltraToolInstall
@@ -65,7 +67,7 @@ class MainActivity : ComponentActivity() {
) { ) {
DestinationsNavHost( DestinationsNavHost(
modifier = Modifier.padding(innerPadding), modifier = Modifier.padding(innerPadding),
navGraph = NavGraphs.root, navGraph = NavGraphs.root as NavHostGraphSpec,
navController = navController, navController = navController,
defaultTransitions = object : NavHostAnimatedDestinationStyle() { defaultTransitions = object : NavHostAnimatedDestinationStyle() {
override val enterTransition: AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition override val enterTransition: AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition
@@ -112,7 +114,7 @@ private fun BottomBar(navController: NavHostController) {
navigator.popBackStack(destination.direction, false) navigator.popBackStack(destination.direction, false)
} }
navigator.navigate(destination.direction) { navigator.navigate(destination.direction) {
popUpTo(NavGraphs.root) { popUpTo(NavGraphs.root as RouteOrDirection) {
saveState = true saveState = true
} }
launchSingleTop = true launchSingleTop = true
@@ -128,7 +130,7 @@ private fun BottomBar(navController: NavHostController) {
}, },
label = { Text(stringResource(destination.label)) }, label = { Text(stringResource(destination.label)) },
alwaysShowLabel = false, alwaysShowLabel = false,
colors = androidx.compose.material3.NavigationBarItemDefaults.colors( colors = NavigationBarItemDefaults.colors(
unselectedTextColor = MaterialTheme.colorScheme.onSurfaceVariant unselectedTextColor = MaterialTheme.colorScheme.onSurfaceVariant
) )
) )
@@ -143,7 +145,7 @@ private fun BottomBar(navController: NavHostController) {
navigator.popBackStack(destination.direction, false) navigator.popBackStack(destination.direction, false)
} }
navigator.navigate(destination.direction) { navigator.navigate(destination.direction) {
popUpTo(NavGraphs.root) { popUpTo(NavGraphs.root as RouteOrDirection) {
saveState = true saveState = true
} }
launchSingleTop = true launchSingleTop = true

View File

@@ -561,6 +561,7 @@ fun DonateCard() {
@Composable @Composable
private fun InfoCard() { private fun InfoCard() {
val lkmMode = Natives.isLkmMode
val context = LocalContext.current val context = LocalContext.current
val isSimpleMode = LocalContext.current.getSharedPreferences("settings", Context.MODE_PRIVATE) val isSimpleMode = LocalContext.current.getSharedPreferences("settings", Context.MODE_PRIVATE)
.getBoolean("is_simple_mode", false) .getBoolean("is_simple_mode", false)
@@ -617,22 +618,24 @@ private fun InfoCard() {
if (!isSimpleMode) { if (!isSimpleMode) {
val kpmVersion = getKpmVersion() if (lkmMode != true) {
var displayVersion: String val kpmVersion = getKpmVersion()
val isKpmConfigured = checkKpmConfigured() var displayVersion: String
val isKpmConfigured = checkKpmConfigured()
if (kpmVersion.isEmpty() || kpmVersion.startsWith("Error")) { if (kpmVersion.isEmpty() || kpmVersion.startsWith("Error")) {
val statusText = if (isKpmConfigured) { val statusText = if (isKpmConfigured) {
stringResource(R.string.kernel_patched) stringResource(R.string.kernel_patched)
} else {
stringResource(R.string.kernel_not_enabled)
}
displayVersion = "${stringResource(R.string.not_supported)} ($statusText)"
} else { } else {
stringResource(R.string.kernel_not_enabled) displayVersion = "${stringResource(R.string.supported)} ($kpmVersion)"
} }
displayVersion = "${stringResource(R.string.not_supported)} ($statusText)" Spacer(Modifier.height(16.dp))
} else { InfoCardItem(stringResource(R.string.home_kpm_version), displayVersion)
displayVersion = "${stringResource(R.string.supported)} ($kpmVersion)"
} }
Spacer(Modifier.height(16.dp))
InfoCardItem(stringResource(R.string.home_kpm_version), displayVersion)
} }
val isHideSusfsStatus = LocalContext.current.getSharedPreferences("settings", Context.MODE_PRIVATE) val isHideSusfsStatus = LocalContext.current.getSharedPreferences("settings", Context.MODE_PRIVATE)