diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/superuser/SuperuserViewModel.kt b/app/src/main/java/com/topjohnwu/magisk/ui/superuser/SuperuserViewModel.kt index 062cdd961..c083861c2 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/superuser/SuperuserViewModel.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/superuser/SuperuserViewModel.kt @@ -62,7 +62,10 @@ class SuperuserViewModel( fun deletePressed(item: PolicyRvItem) { fun updateState() = deletePolicy(item.item) - .subscribeK { items.remove(item) } + .map { items.filterIsInstance().toMutableList() } + .map { it.removeAll { it.item.packageName == item.item.packageName }; it } + .map { it to items.calculateDiff(it) } + .subscribeK { items.update(it.first, it.second) } .add() withView {