diff --git a/applications/src/main/java/de/mm20/launcher2/applications/AppRepository.kt b/applications/src/main/java/de/mm20/launcher2/applications/AppRepository.kt index c54ede69..e2bcfd62 100644 --- a/applications/src/main/java/de/mm20/launcher2/applications/AppRepository.kt +++ b/applications/src/main/java/de/mm20/launcher2/applications/AppRepository.kt @@ -35,7 +35,7 @@ internal class AppRepositoryImpl( private val launcherApps = context.getSystemService(Context.LAUNCHER_APPS_SERVICE) as LauncherApps - private val installedApps = MutableStateFlow>(emptyList()) + private val installedApps = MutableStateFlow>(emptyList()) private val installations = MutableStateFlow>(mutableListOf()) private val hiddenItems = hiddenItemsRepository.hiddenItemsKeys private val suspendedPackages = MutableStateFlow>(emptyList()) @@ -85,7 +85,7 @@ internal class AppRepositoryImpl( } override fun onPackageRemoved(packageName: String, user: UserHandle) { - installedApps.value = installedApps.value.filter { packageName != (it.`package`) } + installedApps.value = installedApps.value.filter { packageName != (it.`package`) || it.getUser() != user } } override fun onShortcutsChanged( @@ -167,7 +167,7 @@ internal class AppRepositoryImpl( return suspendedPackages } - private fun getApplications(packageName: String): List { + private fun getApplications(packageName: String): List { if (packageName == context.packageName) return emptyList() return profiles.map { p -> @@ -179,7 +179,7 @@ internal class AppRepositoryImpl( private fun getApplication( launcherActivityInfo: LauncherActivityInfo, profile: UserHandle - ): Application? { + ): LauncherApp? { if (launcherActivityInfo.applicationInfo.packageName == context.packageName && !context.packageName.endsWith( ".debug" )