From 649a55a1fa7ad205c93fed3dade303513f593f0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ensar=20Saraj=C4=8Di=C4=87?= Date: Mon, 17 Jul 2023 16:01:44 +0200 Subject: [PATCH] Fix crash when removing last hidden icon from HiddenIconsActivity This used to crash with: android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:8372) at android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:1444) This prevents that crash by ensuring that updates to `manage_hidden_icons_placeholder` happens on UI thread --- .../launcher/activities/HiddenIconsActivity.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/launcher/activities/HiddenIconsActivity.kt b/app/src/main/kotlin/com/simplemobiletools/launcher/activities/HiddenIconsActivity.kt index 634b842..476da6c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/launcher/activities/HiddenIconsActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/launcher/activities/HiddenIconsActivity.kt @@ -46,7 +46,11 @@ class HiddenIconsActivity : SimpleActivity(), RefreshRecyclerViewListener { }) ).toMutableList() as ArrayList - manage_hidden_icons_placeholder.beVisibleIf(hiddenIcons.isEmpty()) + val hiddenIconsEmpty = hiddenIcons.isEmpty() + runOnUiThread { + manage_hidden_icons_placeholder.beVisibleIf(hiddenIconsEmpty) + } + if (hiddenIcons.isNotEmpty()) { val intent = Intent(Intent.ACTION_MAIN, null) intent.addCategory(Intent.CATEGORY_LAUNCHER)