ViewModel refactoring: Work profile part

close #169
Improve UI, fix #172
fix #165
This commit is contained in:
BinTianqi
2025-09-27 15:57:45 +08:00
parent 5928dbb657
commit a9452ac14e
11 changed files with 275 additions and 146 deletions

View File

@@ -417,11 +417,22 @@ fun Home(vm: MyViewModel, onLock: () -> Unit) {
composable<AddApnSetting> { AddApnSettingScreen(it.arguments?.getParcelable("setting"), ::navigateUp) }
composable<WorkProfile> { WorkProfileScreen(::navigateUp, ::navigate) }
composable<OrganizationOwnedProfile> { OrganizationOwnedProfileScreen(::navigateUp) }
composable<CreateWorkProfile> { CreateWorkProfileScreen(::navigateUp) }
composable<SuspendPersonalApp> { SuspendPersonalAppScreen(::navigateUp) }
composable<CrossProfileIntentFilter> { CrossProfileIntentFilterScreen(::navigateUp) }
composable<DeleteWorkProfile> { DeleteWorkProfileScreen(::navigateUp) }
composable<OrganizationOwnedProfile> {
OrganizationOwnedProfileScreen(vm::activateOrgProfileByShizuku, ::navigateUp)
}
composable<CreateWorkProfile> {
CreateWorkProfileScreen(vm::createWorkProfile, ::navigateUp)
}
composable<SuspendPersonalApp> {
SuspendPersonalAppScreen(
vm::getPersonalAppsSuspendedReason, vm::setPersonalAppsSuspended,
vm::getProfileMaxTimeOff, vm::setProfileMaxTimeOff, ::navigateUp
)
}
composable<CrossProfileIntentFilter> {
CrossProfileIntentFilterScreen(vm::addCrossProfileIntentFilter, ::navigateUp)
}
composable<DeleteWorkProfile> { DeleteWorkProfileScreen(vm::wipeData, ::navigateUp) }
composable<ApplicationsList> {
val canSwitchView = (it.toRoute() as ApplicationsList).canSwitchView