From 50e8eab484425b059e7808c6bd6ca32cc08562a3 Mon Sep 17 00:00:00 2001 From: David Magno Date: Wed, 14 Jun 2023 10:41:52 +0200 Subject: [PATCH] 'Mobile plan' is searchable even if it is unavailable 'Mobile plan' yields a search hit event though the 'Mobile plan' setting is unavailable on the device. Bug: 287198186 Test: Manual Change-Id: Ibc6f01602a364ae902f8a6ce15083890e89446d2 --- .../network/MobilePlanPreferenceController.java | 2 +- .../settings/network/NetworkDashboardFragment.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/network/MobilePlanPreferenceController.java b/src/com/android/settings/network/MobilePlanPreferenceController.java index d8963ad9374..fcca5e61594 100644 --- a/src/com/android/settings/network/MobilePlanPreferenceController.java +++ b/src/com/android/settings/network/MobilePlanPreferenceController.java @@ -57,7 +57,7 @@ public class MobilePlanPreferenceController extends AbstractPreferenceController public static final int MANAGE_MOBILE_PLAN_DIALOG_ID = 1; private static final String TAG = "MobilePlanPrefContr"; - private static final String KEY_MANAGE_MOBILE_PLAN = "manage_mobile_plan"; + static final String KEY_MANAGE_MOBILE_PLAN = "manage_mobile_plan"; private static final String SAVED_MANAGE_MOBILE_PLAN_MSG = "mManageMobilePlanMessage"; private final UserManager mUserManager; diff --git a/src/com/android/settings/network/NetworkDashboardFragment.java b/src/com/android/settings/network/NetworkDashboardFragment.java index 0cd24dc2a28..eaedae604dd 100644 --- a/src/com/android/settings/network/NetworkDashboardFragment.java +++ b/src/com/android/settings/network/NetworkDashboardFragment.java @@ -174,5 +174,17 @@ public class NetworkDashboardFragment extends DashboardFragment implements null /* metricsFeatureProvider */, null /* fragment */, null /* mobilePlanHost */); } + + @Override + public List getNonIndexableKeys(Context context) { + final List keys = super.getNonIndexableKeys(context); + + MobilePlanPreferenceController mppc = + new MobilePlanPreferenceController(context, null); + if (!mppc.isAvailable()) { + keys.add(MobilePlanPreferenceController.KEY_MANAGE_MOBILE_PLAN); + } + return keys; + } }; }