- Optimizing interface text
- Use string resources instead of hardcoding
This commit is contained in:
@@ -508,33 +508,25 @@ fun rememberSelectKmiDialog(onSelected: (String?) -> Unit): DialogHandle {
|
|||||||
val supportedKmi by produceState(initialValue = emptyList<String>()) {
|
val supportedKmi by produceState(initialValue = emptyList<String>()) {
|
||||||
value = getSupportedKmis()
|
value = getSupportedKmis()
|
||||||
}
|
}
|
||||||
|
|
||||||
val options = supportedKmi.map { value ->
|
val options = supportedKmi.map { value ->
|
||||||
ListOption(titleText = value)
|
ListOption(
|
||||||
|
titleText = value
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
var selection by remember { mutableStateOf<String?>(null) }
|
var selection by remember { mutableStateOf<String?>(null) }
|
||||||
|
ListDialog(state = rememberUseCaseState(visible = true, onFinishedRequest = {
|
||||||
ListDialog(
|
onSelected(selection)
|
||||||
state = rememberUseCaseState(
|
}, onCloseRequest = {
|
||||||
visible = true,
|
dismiss()
|
||||||
onFinishedRequest = {
|
}), header = Header.Default(
|
||||||
onSelected(selection)
|
title = stringResource(R.string.select_kmi),
|
||||||
},
|
), selection = ListSelection.Single(
|
||||||
onCloseRequest = {
|
showRadioButtons = true,
|
||||||
dismiss()
|
options = options,
|
||||||
}
|
) { _, option ->
|
||||||
),
|
selection = option.titleText
|
||||||
header = Header.Default(
|
})
|
||||||
title = stringResource(R.string.select_kmi),
|
|
||||||
),
|
|
||||||
selection = ListSelection.Single(
|
|
||||||
showRadioButtons = true,
|
|
||||||
options = options,
|
|
||||||
) { _, option ->
|
|
||||||
selection = option.titleText
|
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -313,7 +313,7 @@ fun ModuleScreen(navigator: DestinationsNavigator) {
|
|||||||
leadingIcon = {
|
leadingIcon = {
|
||||||
Icon(
|
Icon(
|
||||||
imageVector = Icons.Outlined.Download,
|
imageVector = Icons.Outlined.Download,
|
||||||
contentDescription = "备份"
|
contentDescription = stringResource(R.string.backup)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
onClick = {
|
onClick = {
|
||||||
@@ -326,7 +326,7 @@ fun ModuleScreen(navigator: DestinationsNavigator) {
|
|||||||
leadingIcon = {
|
leadingIcon = {
|
||||||
Icon(
|
Icon(
|
||||||
imageVector = Icons.Outlined.Refresh,
|
imageVector = Icons.Outlined.Refresh,
|
||||||
contentDescription = "还原"
|
contentDescription = stringResource(R.string.restore)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
onClick = {
|
onClick = {
|
||||||
|
|||||||
@@ -106,7 +106,6 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
viewModel.showSystemApps = !viewModel.showSystemApps
|
viewModel.showSystemApps = !viewModel.showSystemApps
|
||||||
showDropdown = false
|
showDropdown = false
|
||||||
})
|
})
|
||||||
// 批量操作菜单项已移除
|
|
||||||
DropdownMenuItem(text = {
|
DropdownMenuItem(text = {
|
||||||
Text(stringResource(R.string.backup_allowlist))
|
Text(stringResource(R.string.backup_allowlist))
|
||||||
}, onClick = {
|
}, onClick = {
|
||||||
@@ -144,7 +143,7 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
) {
|
) {
|
||||||
Text("批量授权")
|
Text(stringResource(R.string.batch_authorization))
|
||||||
}
|
}
|
||||||
|
|
||||||
Button(
|
Button(
|
||||||
@@ -154,7 +153,7 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
) {
|
) {
|
||||||
Text("批量取消授权")
|
Text(stringResource(R.string.batch_cancel_authorization))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -180,9 +179,6 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
|
|
||||||
// 显示ROOT权限应用组
|
// 显示ROOT权限应用组
|
||||||
if (rootApps.isNotEmpty()) {
|
if (rootApps.isNotEmpty()) {
|
||||||
item {
|
|
||||||
GroupHeader(title = "ROOT 权限应用")
|
|
||||||
}
|
|
||||||
items(rootApps, key = { "root_" + it.packageName + it.uid }) { app ->
|
items(rootApps, key = { "root_" + it.packageName + it.uid }) { app ->
|
||||||
AppItem(
|
AppItem(
|
||||||
app = app,
|
app = app,
|
||||||
@@ -218,9 +214,6 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
|
|
||||||
// 显示自定义配置应用组
|
// 显示自定义配置应用组
|
||||||
if (customApps.isNotEmpty()) {
|
if (customApps.isNotEmpty()) {
|
||||||
item {
|
|
||||||
GroupHeader(title = "自定义配置应用")
|
|
||||||
}
|
|
||||||
items(customApps, key = { "custom_" + it.packageName + it.uid }) { app ->
|
items(customApps, key = { "custom_" + it.packageName + it.uid }) { app ->
|
||||||
AppItem(
|
AppItem(
|
||||||
app = app,
|
app = app,
|
||||||
@@ -256,9 +249,6 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
|
|||||||
|
|
||||||
// 显示其他应用组
|
// 显示其他应用组
|
||||||
if (otherApps.isNotEmpty()) {
|
if (otherApps.isNotEmpty()) {
|
||||||
item {
|
|
||||||
GroupHeader(title = "其他应用")
|
|
||||||
}
|
|
||||||
items(otherApps, key = { "other_" + it.packageName + it.uid }) { app ->
|
items(otherApps, key = { "other_" + it.packageName + it.uid }) { app ->
|
||||||
AppItem(
|
AppItem(
|
||||||
app = app,
|
app = app,
|
||||||
|
|||||||
@@ -153,6 +153,7 @@
|
|||||||
<string name="backup_failed">备份失败:%1$s</string>
|
<string name="backup_failed">备份失败:%1$s</string>
|
||||||
<string name="backup_modules">备份模块</string>
|
<string name="backup_modules">备份模块</string>
|
||||||
<string name="restore_modules">恢复模块</string>
|
<string name="restore_modules">恢复模块</string>
|
||||||
|
<string name="backup">备份</string>
|
||||||
<!-- Restore related messages -->
|
<!-- Restore related messages -->
|
||||||
<string name="restore_success">模块已成功还原,需重启生效</string>
|
<string name="restore_success">模块已成功还原,需重启生效</string>
|
||||||
<string name="restore_failed">还原失败:%1$s</string>
|
<string name="restore_failed">还原失败:%1$s</string>
|
||||||
@@ -214,4 +215,6 @@
|
|||||||
<string name="yes">是</string>
|
<string name="yes">是</string>
|
||||||
<string name="no">否</string>
|
<string name="no">否</string>
|
||||||
<string name="failed_reboot">重启失败</string>
|
<string name="failed_reboot">重启失败</string>
|
||||||
|
<string name="batch_authorization">批量授权</string>
|
||||||
|
<string name="batch_cancel_authorization">批量取消授权</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -216,4 +216,7 @@
|
|||||||
<string name="yes">yes</string>
|
<string name="yes">yes</string>
|
||||||
<string name="no">no</string>
|
<string name="no">no</string>
|
||||||
<string name="failed_reboot">Reboot Failed</string>
|
<string name="failed_reboot">Reboot Failed</string>
|
||||||
|
<string name="batch_authorization">bulk license</string>
|
||||||
|
<string name="batch_cancel_authorization">Batch cancel authorization</string>
|
||||||
|
<string name="backup">Backup</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user