diff options
author | 2024-09-10 15:24:14 +0000 | |
---|---|---|
committer | 2024-09-10 15:27:06 +0000 | |
commit | ccb48efe9970d74dcb3ec7e944404c0d3cbb65db (patch) | |
tree | 92cfa392d04066a4e79c9bc29ea0cb904a919389 | |
parent | f10899124005cf0fac8cb10ad4452f2c7eeccf51 (diff) |
Fix for inconsistent names in Default App experience
Role Behaviour updates the underlying preference title. Screen is updated to display that title instead of the default value.
Fixes: b/357663942
Test: Manually tested. Existing test passes.
Flag: EXEMPT bugfix
LOW_COVERAGE_REASON=OTHER_FORM_FACTOR
Screenshot: https://screenshot.googleplex.com/7USktfxiRKZeKTt
Relnote: "Fix for inconsistent names in Default App experience"
Change-Id: Ib92c7a5ec4ad989078516dc70c837c2a3128adee
3 files changed, 12 insertions, 7 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppHelper.kt b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppHelper.kt index 06b4e61be..a47719cf7 100644 --- a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppHelper.kt +++ b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppHelper.kt @@ -44,7 +44,7 @@ class WearDefaultAppHelper( if (role.shouldShowNone()) { WearRoleApplicationPreference( context = context, - label = context.getString(R.string.default_app_none), + defaultLabel = context.getString(R.string.default_app_none), checked = !hasHolderApplication(qualifyingApplications), onDefaultCheckChanged = { _ -> viewModel.setNoneDefaultApp() } ) @@ -62,7 +62,7 @@ class WearDefaultAppHelper( val selected = pair.second WearRoleApplicationPreference( context = context, - label = Utils.getFullAppLabel(appInfo, context), + defaultLabel = Utils.getFullAppLabel(appInfo, context), checked = selected, onDefaultCheckChanged = { _ -> run { @@ -115,6 +115,7 @@ class WearDefaultAppHelper( confirmDialogViewModel.confirmDialogArgs = null confirmDialogViewModel.showConfirmDialogLiveData.value = false } + private fun setDefaultApp(packageName: String) { viewModel.setDefaultApp(packageName) } diff --git a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppScreen.kt b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppScreen.kt index a133aa2c3..5d4233c6e 100644 --- a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppScreen.kt +++ b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearDefaultAppScreen.kt @@ -63,7 +63,7 @@ private fun WearDefaultAppContent( helper.getNonePreference(qualifyingApplications)?.let { item { ToggleChip( - label = it.label, + label = it.title.toString(), icon = it.icon, checked = it.checked, onCheckedChanged = it.onDefaultCheckChanged, @@ -75,10 +75,10 @@ private fun WearDefaultAppContent( for (pref in helper.getPreferences(qualifyingApplications)) { item { ToggleChip( - label = pref.label, + label = pref.title.toString(), icon = pref.icon, colors = - if (pref.isEnabled()) { + if (pref.isEnabled) { ToggleChipDefaults.toggleChipColors() } else { toggleChipDisabledColors() diff --git a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearRoleApplicationPreference.kt b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearRoleApplicationPreference.kt index abaa33a56..6cd52f576 100644 --- a/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearRoleApplicationPreference.kt +++ b/PermissionController/src/com/android/permissioncontroller/role/ui/wear/WearRoleApplicationPreference.kt @@ -27,17 +27,21 @@ import com.android.permissioncontroller.role.ui.RoleApplicationPreference */ class WearRoleApplicationPreference( context: Context, - val label: String, + defaultLabel: String, val checked: Boolean, val onDefaultCheckChanged: (Boolean) -> Unit = {}, private var restrictionIntent: Intent? = null ) : TwoStatePreference(context), RoleApplicationPreference { + init { + title = defaultLabel + } + fun getOnCheckChanged(): (Boolean) -> Unit = restrictionIntent?.let { { _ -> context.startActivity(it) } } ?: onDefaultCheckChanged override fun setRestrictionIntent(restrictionIntent: Intent?) { this.restrictionIntent = restrictionIntent - setEnabled(restrictionIntent == null) + isEnabled = restrictionIntent == null } override fun asTwoStatePreference(): TwoStatePreference = this |