11package com.simplemobiletools.launcher.activities
22
3+ import android.content.Intent
4+ import android.content.pm.PackageManager
35import android.os.Bundle
46import com.simplemobiletools.commons.helpers.NavigationIcon
57import com.simplemobiletools.commons.helpers.ensureBackgroundThread
68import com.simplemobiletools.commons.views.MyGridLayoutManager
79import com.simplemobiletools.launcher.R
810import com.simplemobiletools.launcher.adapters.HiddenIconsAdapter
911import com.simplemobiletools.launcher.extensions.getColumnCount
12+ import com.simplemobiletools.launcher.extensions.getDrawableForPackageName
1013import com.simplemobiletools.launcher.extensions.hiddenIconsDB
1114import com.simplemobiletools.launcher.models.HiddenIcon
1215import kotlinx.android.synthetic.main.activity_hidden_icons.*
@@ -29,10 +32,25 @@ class HiddenIconsActivity : SimpleActivity() {
2932 private fun updateIcons () {
3033 ensureBackgroundThread {
3134 val hiddenIcons = hiddenIconsDB.getHiddenIcons().toMutableList() as ArrayList <HiddenIcon >
32- HiddenIconsAdapter (this , hiddenIcons) {
35+ val intent = Intent (Intent .ACTION_MAIN , null )
36+ intent.addCategory(Intent .CATEGORY_LAUNCHER )
3337
34- }.apply {
35- manage_hidden_icons_list.adapter = this
38+ val list = packageManager.queryIntentActivities(intent, PackageManager .PERMISSION_GRANTED )
39+ for (info in list) {
40+ val componentInfo = info.activityInfo.applicationInfo
41+ val packageName = componentInfo.packageName
42+ val activityName = info.activityInfo.name
43+ hiddenIcons.firstOrNull { it.getIconIdentifier() == " $packageName /$activityName " }?.apply {
44+ drawable = info.loadIcon(packageManager) ? : getDrawableForPackageName(packageName)
45+ }
46+ }
47+
48+ runOnUiThread {
49+ HiddenIconsAdapter (this , hiddenIcons) {
50+
51+ }.apply {
52+ manage_hidden_icons_list.adapter = this
53+ }
3654 }
3755 }
3856 }
0 commit comments