diff --git a/res/xml/privacy_dashboard_settings.xml b/res/xml/privacy_dashboard_settings.xml index f8f916e916a..4abdeda79ea 100644 --- a/res/xml/privacy_dashboard_settings.xml +++ b/res/xml/privacy_dashboard_settings.xml @@ -86,8 +86,7 @@ + android:summary="@string/summary_placeholder"/> + android:order="999"/> diff --git a/src/com/android/settings/privacy/PrivacyDashboardFragment.java b/src/com/android/settings/privacy/PrivacyDashboardFragment.java index 75ed225e3a6..46a05b06109 100644 --- a/src/com/android/settings/privacy/PrivacyDashboardFragment.java +++ b/src/com/android/settings/privacy/PrivacyDashboardFragment.java @@ -25,9 +25,12 @@ import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_PROF import android.app.settings.SettingsEnums; import android.content.Context; import android.os.Bundle; +import android.os.UserHandle; +import android.os.UserManager; import android.provider.SearchIndexableResource; import com.android.settings.R; +import com.android.settings.Utils; import com.android.settings.dashboard.DashboardFragment; import com.android.settings.notification.LockScreenNotificationPreferenceController; import com.android.settings.safetycenter.SafetyCenterManagerWrapper; @@ -131,5 +134,21 @@ public class PrivacyDashboardFragment extends DashboardFragment { Context context) { return buildPreferenceControllers(context, null); } + + @Override + public List getNonIndexableKeys(Context context) { + final List keys = super.getNonIndexableKeys(context); + final int profileUserId = + Utils.getManagedProfileId( + UserManager.get(context), UserHandle.myUserId()); + // If work profile is supported, we should keep the search result. + if (profileUserId != UserHandle.USER_NULL) { + return keys; + } + + // Otherwise, we should hide the search result. + keys.add(KEY_NOTIFICATION_WORK_PROFILE_NOTIFICATIONS); + return keys; + } }; }