@@ -107,6 +107,7 @@ class MainActivity : SimpleActivity(), FlingListener {
107107 rect.right,
108108 rect.bottom,
109109 item.shortcutInfo!! .`package`,
110+ " " ,
110111 label,
111112 ITEM_TYPE_SHORTCUT ,
112113 " " ,
@@ -396,7 +397,7 @@ class MainActivity : SimpleActivity(), FlingListener {
396397 val clickedGridItem = home_screen_grid.isClickingGridItem(x.toInt(), y.toInt())
397398 if (clickedGridItem != null ) {
398399 if (clickedGridItem.type == ITEM_TYPE_ICON ) {
399- launchApp(clickedGridItem.packageName)
400+ launchApp(clickedGridItem.packageName, clickedGridItem.activityName )
400401 } else if (clickedGridItem.type == ITEM_TYPE_SHORTCUT ) {
401402 if (clickedGridItem.intent.isNotEmpty()) {
402403 launchShortcutIntent(clickedGridItem)
@@ -567,7 +568,6 @@ class MainActivity : SimpleActivity(), FlingListener {
567568 @SuppressLint(" WrongConstant" )
568569 fun getAllAppLaunchers (): ArrayList <AppLauncher > {
569570 val allApps = ArrayList <AppLauncher >()
570- val allPackageNames = ArrayList <String >()
571571 val intent = Intent (Intent .ACTION_MAIN , null )
572572 intent.addCategory(Intent .CATEGORY_LAUNCHER )
573573
@@ -576,36 +576,33 @@ class MainActivity : SimpleActivity(), FlingListener {
576576 val list = packageManager.queryIntentActivities(intent, PackageManager .PERMISSION_GRANTED )
577577 for (info in list) {
578578 val componentInfo = info.activityInfo.applicationInfo
579- val packageName = componentInfo.packageName
579+ var packageName = componentInfo.packageName
580580 if (packageName == simpleLauncher || packageName == microG) {
581581 continue
582582 }
583583
584584 val label = info.loadLabel(packageManager).toString()
585- val drawable = getDrawableForPackageName(packageName) ? : continue
585+ val drawable = info.loadIcon(packageManager) ? : getDrawableForPackageName(packageName) ? : continue
586586 val placeholderColor = calculateAverageColor(drawable.toBitmap())
587-
588- allPackageNames.add(packageName)
589- allApps.add(AppLauncher (null , label, packageName, 0 , placeholderColor, drawable))
587+ val activityName = info.activityInfo.name
588+ allApps.add(AppLauncher (null , label, packageName, activityName, 0 , placeholderColor, drawable))
590589 }
591590
592591 // add Simple Launchers settings as an app
593592 val drawable = getDrawableForPackageName(packageName)
594593 val placeholderColor = calculateAverageColor(drawable!! .toBitmap())
595- val launcherSettings = AppLauncher (null , getString(R .string.launcher_settings), packageName, 0 , placeholderColor, drawable)
594+ val launcherSettings = AppLauncher (null , getString(R .string.launcher_settings), packageName, " " , 0 , placeholderColor, drawable)
596595 allApps.add(launcherSettings)
597-
598- val launchers = allApps.distinctBy { it.packageName } as ArrayList <AppLauncher >
599- launchersDB.insertAll(launchers)
600- return launchers
596+ launchersDB.insertAll(allApps)
597+ return allApps
601598 }
602599
603600 private fun getDefaultAppPackages (appLaunchers : ArrayList <AppLauncher >) {
604601 val homeScreenGridItems = ArrayList <HomeScreenGridItem >()
605602 try {
606603 val defaultDialerPackage = (getSystemService(Context .TELECOM_SERVICE ) as TelecomManager ).defaultDialerPackage
607604 appLaunchers.firstOrNull { it.packageName == defaultDialerPackage }?.apply {
608- val dialerIcon = HomeScreenGridItem (null , 0 , ROW_COUNT - 1 , 0 , ROW_COUNT - 1 , defaultDialerPackage, title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
605+ val dialerIcon = HomeScreenGridItem (null , 0 , ROW_COUNT - 1 , 0 , ROW_COUNT - 1 , defaultDialerPackage, " " , title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
609606 homeScreenGridItems.add(dialerIcon)
610607 }
611608 } catch (e: Exception ) {
@@ -615,7 +612,7 @@ class MainActivity : SimpleActivity(), FlingListener {
615612 val defaultSMSMessengerPackage = Telephony .Sms .getDefaultSmsPackage(this )
616613 appLaunchers.firstOrNull { it.packageName == defaultSMSMessengerPackage }?.apply {
617614 val SMSMessengerIcon =
618- HomeScreenGridItem (null , 1 , ROW_COUNT - 1 , 1 , ROW_COUNT - 1 , defaultSMSMessengerPackage, title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
615+ HomeScreenGridItem (null , 1 , ROW_COUNT - 1 , 1 , ROW_COUNT - 1 , defaultSMSMessengerPackage, " " , title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
619616 homeScreenGridItems.add(SMSMessengerIcon )
620617 }
621618 } catch (e: Exception ) {
@@ -627,7 +624,7 @@ class MainActivity : SimpleActivity(), FlingListener {
627624 val defaultBrowserPackage = resolveInfo!! .activityInfo.packageName
628625 appLaunchers.firstOrNull { it.packageName == defaultBrowserPackage }?.apply {
629626 val browserIcon =
630- HomeScreenGridItem (null , 2 , ROW_COUNT - 1 , 2 , ROW_COUNT - 1 , defaultBrowserPackage, title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
627+ HomeScreenGridItem (null , 2 , ROW_COUNT - 1 , 2 , ROW_COUNT - 1 , defaultBrowserPackage, " " , title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
631628 homeScreenGridItems.add(browserIcon)
632629 }
633630 } catch (e: Exception ) {
@@ -638,7 +635,7 @@ class MainActivity : SimpleActivity(), FlingListener {
638635 val storePackage = potentialStores.firstOrNull { isPackageInstalled(it) && appLaunchers.map { it.packageName }.contains(it) }
639636 if (storePackage != null ) {
640637 appLaunchers.firstOrNull { it.packageName == storePackage }?.apply {
641- val storeIcon = HomeScreenGridItem (null , 3 , ROW_COUNT - 1 , 3 , ROW_COUNT - 1 , storePackage, title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
638+ val storeIcon = HomeScreenGridItem (null , 3 , ROW_COUNT - 1 , 3 , ROW_COUNT - 1 , storePackage, " " , title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
642639 homeScreenGridItems.add(storeIcon)
643640 }
644641 }
@@ -650,7 +647,7 @@ class MainActivity : SimpleActivity(), FlingListener {
650647 val resolveInfo = packageManager.resolveActivity(cameraIntent, PackageManager .MATCH_DEFAULT_ONLY )
651648 val defaultCameraPackage = resolveInfo!! .activityInfo.packageName
652649 appLaunchers.firstOrNull { it.packageName == defaultCameraPackage }?.apply {
653- val cameraIcon = HomeScreenGridItem (null , 4 , ROW_COUNT - 1 , 4 , ROW_COUNT - 1 , defaultCameraPackage, title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
650+ val cameraIcon = HomeScreenGridItem (null , 4 , ROW_COUNT - 1 , 4 , ROW_COUNT - 1 , defaultCameraPackage, " " , title, ITEM_TYPE_ICON , " " , - 1 , " " , " " , null )
654651 homeScreenGridItems.add(cameraIcon)
655652 }
656653 } catch (e: Exception ) {
0 commit comments