Merge "Check config to Show/Hide Private space Hide Illustration" into main
diff --git a/res/xml/private_space_hide_locked.xml b/res/xml/private_space_hide_locked.xml
index d166b73..56dd151 100644
--- a/res/xml/private_space_hide_locked.xml
+++ b/res/xml/private_space_hide_locked.xml
@@ -21,7 +21,8 @@
<com.android.settingslib.widget.IllustrationPreference
android:key="private_space_hide_illustration"
settings:searchable="false"
- settings:lottie_rawRes="@raw/private_space_hide_when_locked_illustration"/>
+ settings:lottie_rawRes="@raw/private_space_hide_when_locked_illustration"
+ settings:controller="com.android.settings.privatespace.HidePrivateSpaceIllustrationController"/>
<com.android.settingslib.widget.MainSwitchPreference
android:key="hide_when_locked"
@@ -35,7 +36,9 @@
settings:searchable="false" />
<PreferenceCategory
- android:title="@string/private_space_access_header">
+ android:key="private_space_access"
+ android:title="@string/private_space_access_header"
+ settings:controller="com.android.settings.privatespace.HidePrivateSpaceCategoryController">
<Preference
android:key="search_when_locked_footer"
diff --git a/src/com/android/settings/privatespace/HidePrivateSpaceCategoryController.java b/src/com/android/settings/privatespace/HidePrivateSpaceCategoryController.java
new file mode 100644
index 0000000..d754b20
--- /dev/null
+++ b/src/com/android/settings/privatespace/HidePrivateSpaceCategoryController.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.privatespace;
+
+import android.content.Context;
+import android.content.res.Resources;
+
+import androidx.annotation.NonNull;
+
+import com.android.settings.widget.PreferenceCategoryController;
+
+public class HidePrivateSpaceCategoryController extends PreferenceCategoryController {
+ public HidePrivateSpaceCategoryController(@NonNull Context context, @NonNull String key) {
+ super(context, key);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ if (android.multiuser.Flags.privateSpaceSearchIllustrationConfig()) {
+ boolean configValue =
+ Resources.getSystem()
+ .getBoolean(
+ com.android.internal.R.bool
+ .config_enableSearchTileHideIllustrationInPrivateSpace);
+ return configValue ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
+ }
+ return AVAILABLE;
+ }
+}
diff --git a/src/com/android/settings/privatespace/HidePrivateSpaceIllustrationController.java b/src/com/android/settings/privatespace/HidePrivateSpaceIllustrationController.java
new file mode 100644
index 0000000..1606498
--- /dev/null
+++ b/src/com/android/settings/privatespace/HidePrivateSpaceIllustrationController.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.privatespace;
+
+import android.content.Context;
+import android.content.res.Resources;
+
+import androidx.annotation.NonNull;
+
+import com.android.settings.core.BasePreferenceController;
+
+public class HidePrivateSpaceIllustrationController extends BasePreferenceController {
+
+ public HidePrivateSpaceIllustrationController(@NonNull Context context, @NonNull String key) {
+ super(context, key);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ if (android.multiuser.Flags.privateSpaceSearchIllustrationConfig()) {
+ boolean configValue =
+ Resources.getSystem()
+ .getBoolean(
+ com.android.internal.R.bool
+ .config_enableSearchTileHideIllustrationInPrivateSpace);
+ return configValue ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
+ }
+ return AVAILABLE;
+ }
+}