manager: hide su related settings screen items if ksuVersion is null

This commit is contained in:
rifsxd
2025-02-28 00:35:13 +06:00
parent 4eac2f783e
commit d5d4304120

View File

@@ -170,19 +170,21 @@ fun SettingScreen(navigator: DestinationsNavigator) {
} }
} }
if (Natives.version >= Natives.MINIMAL_SUPPORTED_SU_COMPAT) { if (ksuVersion != null) {
var isSuDisabled by rememberSaveable { if (Natives.version >= Natives.MINIMAL_SUPPORTED_SU_COMPAT) {
mutableStateOf(!Natives.isSuEnabled()) var isSuDisabled by rememberSaveable {
} mutableStateOf(!Natives.isSuEnabled())
SwitchItem( }
icon = Icons.Filled.RemoveModerator, SwitchItem(
title = stringResource(id = R.string.settings_disable_su), icon = Icons.Filled.RemoveModerator,
summary = stringResource(id = R.string.settings_disable_su_summary), title = stringResource(id = R.string.settings_disable_su),
checked = isSuDisabled summary = stringResource(id = R.string.settings_disable_su_summary),
) { checked -> checked = isSuDisabled
val shouldEnable = !checked ) { checked ->
if (Natives.setSuEnabled(shouldEnable)) { val shouldEnable = !checked
isSuDisabled = !shouldEnable if (Natives.setSuEnabled(shouldEnable)) {
isSuDisabled = !shouldEnable
}
} }
} }
} }
@@ -316,14 +318,17 @@ fun SettingScreen(navigator: DestinationsNavigator) {
prefs.getBoolean("enable_web_debugging", false) prefs.getBoolean("enable_web_debugging", false)
) )
} }
SwitchItem(
icon = Icons.Filled.Web, if (ksuVersion != null) {
title = stringResource(id = R.string.enable_web_debugging), SwitchItem(
summary = stringResource(id = R.string.enable_web_debugging_summary), icon = Icons.Filled.Web,
checked = enableWebDebugging title = stringResource(id = R.string.enable_web_debugging),
) { summary = stringResource(id = R.string.enable_web_debugging_summary),
prefs.edit().putBoolean("enable_web_debugging", it).apply() checked = enableWebDebugging
enableWebDebugging = it ) {
prefs.edit().putBoolean("enable_web_debugging", it).apply()
enableWebDebugging = it
}
} }
var developerOptionsEnabled by rememberSaveable { var developerOptionsEnabled by rememberSaveable {