Skip to content

Commit 16e13ae

Browse files
committed
app: persist show system app settings
1 parent f15e371 commit 16e13ae

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

manager/app/src/main/java/me/weishu/kernelsu/ui/screen/SuperUser.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ fun SuperUserScreen(navigator: DestinationsNavigator) {
9494
}
9595
)
9696
}, onClick = {
97-
viewModel.showSystemApps = !viewModel.showSystemApps
97+
viewModel.updateShowSystemApps(!viewModel.showSystemApps)
9898
showDropdown = false
9999
})
100100
}

manager/app/src/main/java/me/weishu/kernelsu/ui/viewmodel/SuperUserViewModel.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package me.weishu.kernelsu.ui.viewmodel
22

33
import android.content.ComponentName
4+
import android.content.Context
45
import android.content.Intent
56
import android.content.ServiceConnection
67
import android.content.pm.ApplicationInfo
@@ -28,6 +29,7 @@ import java.text.Collator
2829
import java.util.*
2930
import kotlin.coroutines.resume
3031
import kotlin.coroutines.suspendCoroutine
32+
import androidx.core.content.edit
3133

3234
class SuperUserViewModel : ViewModel() {
3335

@@ -63,11 +65,19 @@ class SuperUserViewModel : ViewModel() {
6365
}
6466
}
6567

68+
private val prefs = ksuApp.getSharedPreferences("settings", Context.MODE_PRIVATE)!!
69+
6670
var search by mutableStateOf("")
67-
var showSystemApps by mutableStateOf(false)
71+
var showSystemApps by mutableStateOf(prefs.getBoolean("show_system_apps", false))
72+
private set
6873
var isRefreshing by mutableStateOf(false)
6974
private set
7075

76+
fun updateShowSystemApps(newValue: Boolean) {
77+
showSystemApps = newValue
78+
prefs.edit { putBoolean("show_system_apps", newValue) }
79+
}
80+
7181
private val sortedList by derivedStateOf {
7282
val comparator = compareBy<AppInfo> {
7383
when {

0 commit comments

Comments
 (0)