From fcbb02a115b507d53ff4a42577244d5df983aa6b Mon Sep 17 00:00:00 2001 From: Rifat Azad Date: Sun, 5 Jan 2025 17:06:37 +0600 Subject: [PATCH] manager: refresh superuser applist on appprofile exit --- .../main/java/com/rifsxd/ksunext/ui/screen/SuperUser.kt | 8 ++++++++ .../com/rifsxd/ksunext/ui/viewmodel/SuperUserViewModel.kt | 3 +++ 2 files changed, 11 insertions(+) diff --git a/manager/app/src/main/java/com/rifsxd/ksunext/ui/screen/SuperUser.kt b/manager/app/src/main/java/com/rifsxd/ksunext/ui/screen/SuperUser.kt index 736e3993..bdfc7798 100644 --- a/manager/app/src/main/java/com/rifsxd/ksunext/ui/screen/SuperUser.kt +++ b/manager/app/src/main/java/com/rifsxd/ksunext/ui/screen/SuperUser.kt @@ -56,6 +56,13 @@ fun SuperUserScreen(navigator: DestinationsNavigator) { } } + LaunchedEffect(Unit) { + if (viewModel.refreshOnReturn) { + viewModel.fetchAppList() + viewModel.refreshOnReturn = false + } + } + Scaffold( topBar = { SearchAppBar( @@ -120,6 +127,7 @@ fun SuperUserScreen(navigator: DestinationsNavigator) { ) { items(viewModel.appList, key = { it.packageName + it.uid }) { app -> AppItem(app) { + viewModel.refreshOnReturn = true navigator.navigate(AppProfileScreenDestination(app)) } } diff --git a/manager/app/src/main/java/com/rifsxd/ksunext/ui/viewmodel/SuperUserViewModel.kt b/manager/app/src/main/java/com/rifsxd/ksunext/ui/viewmodel/SuperUserViewModel.kt index 76a630e6..f2ce58ce 100644 --- a/manager/app/src/main/java/com/rifsxd/ksunext/ui/viewmodel/SuperUserViewModel.kt +++ b/manager/app/src/main/java/com/rifsxd/ksunext/ui/viewmodel/SuperUserViewModel.kt @@ -31,6 +31,9 @@ import kotlin.coroutines.suspendCoroutine class SuperUserViewModel : ViewModel() { + var refreshOnReturn by mutableStateOf(false) + public set + companion object { private const val TAG = "SuperUserViewModel" private var apps by mutableStateOf>(emptyList())