From 32527f3544c9a60b5956702ca5646cd29dc65cc0 Mon Sep 17 00:00:00 2001 From: SmartKraft Date: Wed, 7 Oct 2026 13:28:59 +0200 Subject: [PATCH] fix(home): Show app alias on home screen, favorites and widget Renaming an app only changed its name in the app drawer. The home screen, the favorites list, notification badge labels and the home apps widget kept showing the original label. Add Prefs.getAppDisplayName() (alias if set, otherwise the app label) and use it in all of these places. --- .../github/codeworkscreativehub/mlauncher/data/Prefs.kt | 5 +++++ .../codeworkscreativehub/mlauncher/ui/HomeFragment.kt | 8 ++++---- .../mlauncher/ui/adapter/FavoriteAdapter.kt | 2 +- .../mlauncher/ui/widgets/home/HomeAppsWidgetProvider.kt | 2 +- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/data/Prefs.kt b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/data/Prefs.kt index 49a5cd967..dd1b9dd30 100644 --- a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/data/Prefs.kt +++ b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/data/Prefs.kt @@ -908,6 +908,11 @@ class Prefs(val context: Context) { prefsNormal.edit { putString("${appPackage}_ALIAS", appAlias) } } + /** The name to show for [app]: the alias the user gave it, or its own label. */ + fun getAppDisplayName(app: AppListItem): String { + return getAppAlias(app.settingsKey).takeIf { it.isNotBlank() } ?: app.activityLabel + } + fun setProfileCounter(profile: String, counter: Int) { prefsNormal.edit { putInt(profile, counter) } } diff --git a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/HomeFragment.kt b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/HomeFragment.kt index f61034aff..aa7d5dd33 100644 --- a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/HomeFragment.kt +++ b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/HomeFragment.kt @@ -857,7 +857,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener, View.OnLongClickListe // Set properties of existingAppView textSize = prefs.appSize.toFloat() id = i - text = prefs.getHomeAppModel(i).activityLabel + text = prefs.getAppDisplayName(prefs.getHomeAppModel(i)) getHomeAppsGestureListener() setOnClickListener(this@HomeFragment) if (!prefs.extendHomeAppsArea) { @@ -1042,7 +1042,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener, View.OnLongClickListe text = if (homeApp.activityPackage.isBlank()) { getLocalizedString(R.string.select_app) } else { - prefs.getAppAlias(homeApp.settingsKey).takeIf { it.isNotBlank() } ?: homeApp.activityLabel + prefs.getAppDisplayName(homeApp) } getHomeAppsGestureListener() @@ -1138,7 +1138,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener, View.OnLongClickListe this.text = if (count > 0) { val circledNumber = getCircledDigit(count) - val newText = "${appModel.activityLabel} $circledNumber" + val newText = "${prefs.getAppDisplayName(appModel)} $circledNumber" val spannable = SpannableString(newText) val start = newText.indexOf(circledNumber) @@ -1168,7 +1168,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener, View.OnLongClickListe spannable } else { - appModel.activityLabel + prefs.getAppDisplayName(appModel) } AppLogger.d("HomeFragment", "Notification count updated for $packageName: $count") diff --git a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/adapter/FavoriteAdapter.kt b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/adapter/FavoriteAdapter.kt index 54f78bcfb..46032be19 100644 --- a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/adapter/FavoriteAdapter.kt +++ b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/adapter/FavoriteAdapter.kt @@ -37,7 +37,7 @@ class FavoriteAdapter( val appItem = apps[position] // Set the label text from the app item - holder.appTextView.text = appItem.activityLabel + holder.appTextView.text = prefs.getAppDisplayName(appItem) // Set the text size and color dynamically using prefs holder.appTextView.setTextColor(prefs.appColor) // Get color from prefs diff --git a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/widgets/home/HomeAppsWidgetProvider.kt b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/widgets/home/HomeAppsWidgetProvider.kt index 57cd6d66b..26af90728 100644 --- a/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/widgets/home/HomeAppsWidgetProvider.kt +++ b/app/src/main/java/com/github/codeworkscreativehub/mlauncher/ui/widgets/home/HomeAppsWidgetProvider.kt @@ -48,7 +48,7 @@ class HomeAppsWidgetProvider : AppWidgetProvider() { } catch (_: Exception) { appModel.activityLabel }.let { label -> - if (appModel.isShortcut) prefs.getAppAlias(appModel.settingsKey).ifBlank { label } else label + prefs.getAppAlias(appModel.settingsKey).ifBlank { label } } // --- Get icon safely ---