summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortmfang <tmfang@google.com>2018-11-26 18:41:01 +0800
committertmfang <tmfang@google.com>2018-11-27 13:12:53 +0800
commitdce94bb23762aa8292cd1fc9a4ee69cde1fa886f (patch)
tree6cffb0b8254e0209be464ee0cfce4c381c6d7a5b
parent9dbb20cc23a71e6ed97b8242b53d9faa97cc4145 (diff)
downloadpackages_apps_Settings-dce94bb23762aa8292cd1fc9a4ee69cde1fa886f.tar.gz
packages_apps_Settings-dce94bb23762aa8292cd1fc9a4ee69cde1fa886f.tar.bz2
packages_apps_Settings-dce94bb23762aa8292cd1fc9a4ee69cde1fa886f.zip
Use SettingsLib's LayoutPreference
- Remove LayoutPreference in Settings source code. - Remove unused style, layout - Replace old imports to com.android.settingslib.widget.LayoutPreference - Replace old XML tag to com.android.settingslib.widget.LayoutPreference Test: robotest, manual test Bug: 120005054 Change-Id: I9ae1ae14a16f443e11ac5d75b6038c7c5e253844
-rw-r--r--res/layout/layout_preference_frame.xml18
-rw-r--r--res/layout/settings_entity_header.xml105
-rw-r--r--res/values/styles.xml24
-rw-r--r--res/xml/account_type_settings.xml4
-rw-r--r--res/xml/app_info_settings.xml4
-rw-r--r--res/xml/app_notification_settings.xml4
-rw-r--r--res/xml/app_storage_settings.xml4
-rw-r--r--res/xml/bluetooth_device_details_fragment.xml2
-rw-r--r--res/xml/channel_notification_settings.xml4
-rw-r--r--res/xml/dream_fragment_overview.xml2
-rw-r--r--res/xml/my_device_info.xml2
-rw-r--r--res/xml/night_display_settings.xml2
-rw-r--r--res/xml/notification_group_settings.xml4
-rw-r--r--res/xml/power_usage_detail.xml2
-rw-r--r--res/xml/power_usage_details.xml2
-rw-r--r--res/xml/power_usage_summary.xml2
-rw-r--r--res/xml/security_settings_face.xml2
-rw-r--r--res/xml/usb_details_fragment.xml2
-rw-r--r--res/xml/wifi_network_details_fragment.xml2
-rw-r--r--res/xml/zen_mode_event_rule_settings.xml4
-rw-r--r--res/xml/zen_mode_schedule_rule_settings.xml4
-rw-r--r--res/xml/zen_mode_settings.xml2
-rw-r--r--src/com/android/settings/SettingsPreferenceFragment.java2
-rw-r--r--src/com/android/settings/accounts/AccountHeaderPreferenceController.java2
-rw-r--r--src/com/android/settings/accounts/RemoveAccountPreferenceController.java2
-rw-r--r--src/com/android/settings/applications/AppStorageSettings.java1
-rw-r--r--src/com/android/settings/applications/LayoutPreference.java119
-rw-r--r--src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceController.java3
-rw-r--r--src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceController.java2
-rw-r--r--src/com/android/settings/biometrics/face/FaceSettingsRemoveButtonPreferenceController.java2
-rw-r--r--src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java2
-rw-r--r--src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java2
-rw-r--r--src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java3
-rw-r--r--src/com/android/settings/display/ColorModePreferenceFragment.java2
-rw-r--r--src/com/android/settings/display/NightDisplayActivationPreferenceController.java2
-rw-r--r--src/com/android/settings/dream/StartNowPreferenceController.java2
-rw-r--r--src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java2
-rw-r--r--src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java2
-rw-r--r--src/com/android/settings/fuelgauge/PowerUsageSummary.java2
-rw-r--r--src/com/android/settings/notification/BlockPreferenceController.java2
-rw-r--r--src/com/android/settings/notification/HeaderPreferenceController.java2
-rw-r--r--src/com/android/settings/notification/NotificationSwitchBarPreference.java2
-rw-r--r--src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java10
-rw-r--r--src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java2
-rw-r--r--src/com/android/settings/notification/ZenModeButtonPreferenceController.java2
-rw-r--r--src/com/android/settings/widget/EntityHeaderController.java5
-rw-r--r--src/com/android/settings/widget/TwoStateButtonPreference.java2
-rw-r--r--src/com/android/settings/wifi/details/WifiDetailPreferenceController.java2
-rw-r--r--tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java1
-rw-r--r--tests/robotests/src/com/android/settings/applications/LayoutPreferenceTest.java93
-rw-r--r--tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/display/ColorModePreferenceFragmentTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/display/NightDisplayActivationPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/dream/StartNowPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/testutils/SettingsRobolectricTestRunner.java2
-rw-r--r--tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java2
-rw-r--r--tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java2
67 files changed, 76 insertions, 434 deletions
diff --git a/res/layout/layout_preference_frame.xml b/res/layout/layout_preference_frame.xml
deleted file mode 100644
index eec3d7af34..0000000000
--- a/res/layout/layout_preference_frame.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<!--
- Copyright (C) 2015 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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
diff --git a/res/layout/settings_entity_header.xml b/res/layout/settings_entity_header.xml
deleted file mode 100644
index 5f5fe004a9..0000000000
--- a/res/layout/settings_entity_header.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2017 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.
- -->
-
-<!-- Entity header -->
-<RelativeLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/entity_header"
- style="@style/EntityHeader"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal">
-
- <LinearLayout
- android:id="@+id/entity_header_content"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerHorizontal="true"
- android:gravity="center_horizontal"
- android:orientation="vertical">
-
- <ImageView
- android:id="@+id/entity_header_icon"
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:scaleType="fitXY"
- android:antialias="true"/>
-
- <TextView
- android:id="@+id/entity_header_title"
- style="@style/TextAppearance.EntityHeaderTitle"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="false"
- android:ellipsize="marquee"
- android:textDirection="locale"
- android:layout_marginTop="8dp"/>
-
- <TextView
- android:id="@+id/install_type"
- style="@style/TextAppearance.EntityHeaderSummary"
- android:visibility="gone"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="2dp"/>
-
- <TextView
- android:id="@+id/entity_header_summary"
- style="@style/TextAppearance.EntityHeaderSummary"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="2dp"/>
-
- <TextView
- android:id="@+id/entity_header_second_summary"
- style="@style/TextAppearance.EntityHeaderSummary"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
-
- </LinearLayout>
-
- <LinearLayout
- android:id="@+id/entity_header_links"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:layout_centerVertical="true"
- android:layout_alignParentEnd="true"
- android:orientation="vertical">
-
- <ImageButton
- android:id="@android:id/button1"
- style="?android:attr/actionOverflowButtonStyle"
- android:layout_width="wrap_content"
- android:layout_weight="1"
- android:layout_height="0dp"
- android:minWidth="@dimen/min_tap_target_size"
- android:src="@null"
- android:tint="?android:attr/colorAccent" />
-
- <ImageButton
- android:id="@android:id/button2"
- style="?android:attr/actionOverflowButtonStyle"
- android:layout_width="wrap_content"
- android:layout_weight="1"
- android:layout_height="0dp"
- android:minWidth="@dimen/min_tap_target_size"
- android:src="@null"
- android:tint="?android:attr/colorAccent" />
-
- </LinearLayout>
-
-</RelativeLayout>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 3ce11931eb..4be1bb3569 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -331,23 +331,6 @@
<item name="android:textColor">?android:attr/textColorSecondary</item>
</style>
- <style name="TextAppearance.EntityHeaderTitle"
- parent="@android:style/TextAppearance.Material.Subhead">
- <item name="android:fontFamily">@*android:string/config_headlineFontFamilyMedium</item>
- <item name="android:textColor">?android:attr/textColorPrimary</item>
- <item name="android:textSize">20sp</item>
- </style>
-
- <style name="TextAppearance.EntityHeaderSummary"
- parent="@android:style/TextAppearance.Material.Body1">
- <item name="android:textAlignment">viewStart</item>
- <item name="android:textColor">?android:attr/textColorSecondary</item>
- <item name="android:gravity">start</item>
- <item name="android:singleLine">true</item>
- <item name="android:ellipsize">marquee</item>
- <item name="android:textSize">14sp</item>
- </style>
-
<style name="TextAppearance.ZenOnboardingButton">
<item name="android:fontFamily">sans-serif-medium</item>
<item name="android:textSize">14sp</item>
@@ -418,13 +401,6 @@
<item name="android:progressDrawable">@drawable/ring_progress</item>
</style>
- <style name="EntityHeader">
- <item name="android:background">?android:attr/colorPrimaryDark</item>
- <item name="android:paddingTop">24dp</item>
- <item name="android:paddingBottom">16dp</item>
- <item name="android:paddingEnd">16dp</item>
- </style>
-
<style name="ActionPrimaryButton" parent="android:Widget.DeviceDefault.Button.Colored"/>
<style name="ActionSecondaryButton" parent="android:Widget.DeviceDefault.Button"/>
diff --git a/res/xml/account_type_settings.xml b/res/xml/account_type_settings.xml
index 29f92ea230..98a5e8b67c 100644
--- a/res/xml/account_type_settings.xml
+++ b/res/xml/account_type_settings.xml
@@ -19,7 +19,7 @@
android:title="@string/account_settings_title"
settings:keywords="@string/keywords_accounts">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="account_header"
android:layout="@layout/settings_entity_header"
android:selectable="false"
@@ -35,7 +35,7 @@
android:icon="@drawable/ic_sync"
android:order="200"/>
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="remove_account"
android:layout="@layout/remove_account_button"
android:order="1000"
diff --git a/res/xml/app_info_settings.xml b/res/xml/app_info_settings.xml
index 1e320e4009..c13215a906 100644
--- a/res/xml/app_info_settings.xml
+++ b/res/xml/app_info_settings.xml
@@ -21,14 +21,14 @@
android:key="installed_app_detail_settings_screen"
settings:initialExpandedChildrenCount="6">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="header_view"
android:layout="@layout/settings_entity_header"
android:selectable="false"
android:order="-10000"
settings:allowDividerBelow="true"/>
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="instant_app_buttons"
android:layout="@layout/instant_app_buttons"
android:selectable="false"
diff --git a/res/xml/app_notification_settings.xml b/res/xml/app_notification_settings.xml
index 0056ef2100..49d64a9731 100644
--- a/res/xml/app_notification_settings.xml
+++ b/res/xml/app_notification_settings.xml
@@ -18,11 +18,11 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="app_notifications">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="pref_app_header"
android:layout="@layout/settings_entity_header" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="block"
android:layout="@layout/styled_switch_bar" />
diff --git a/res/xml/app_storage_settings.xml b/res/xml/app_storage_settings.xml
index 14ad180a93..7036d2736d 100644
--- a/res/xml/app_storage_settings.xml
+++ b/res/xml/app_storage_settings.xml
@@ -34,7 +34,7 @@
android:selectable="false"
android:layout="@layout/horizontal_preference" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="change_storage_button"
android:selectable="false"
android:layout="@layout/single_button_panel" />
@@ -78,7 +78,7 @@
android:layout="@layout/preference_category_no_label"
settings:allowDividerAbove="false"
settings:allowDividerBelow="false">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="clear_uri_button"
android:layout="@layout/single_button_panel"
android:selectable="false" />
diff --git a/res/xml/bluetooth_device_details_fragment.xml b/res/xml/bluetooth_device_details_fragment.xml
index 01114b6c54..6449e4bc16 100644
--- a/res/xml/bluetooth_device_details_fragment.xml
+++ b/res/xml/bluetooth_device_details_fragment.xml
@@ -19,7 +19,7 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:title="@string/device_details_title">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="bluetooth_device_header"
android:layout="@layout/settings_entity_header"
android:selectable="false"
diff --git a/res/xml/channel_notification_settings.xml b/res/xml/channel_notification_settings.xml
index 5afc70de7a..9e9e7a9678 100644
--- a/res/xml/channel_notification_settings.xml
+++ b/res/xml/channel_notification_settings.xml
@@ -20,12 +20,12 @@
android:key="channel_settings"
android:title="@string/notification_channel_title" >
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="pref_app_header"
android:order="1"
android:layout="@layout/settings_entity_header" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="block"
android:order="2"
android:layout="@layout/styled_switch_bar" />
diff --git a/res/xml/dream_fragment_overview.xml b/res/xml/dream_fragment_overview.xml
index a6214d18a1..e4c2eb5365 100644
--- a/res/xml/dream_fragment_overview.xml
+++ b/res/xml/dream_fragment_overview.xml
@@ -35,7 +35,7 @@
<!-- Layout preference doesn't obey allowDividerAbove, so put it in a PreferenceCategory -->
<PreferenceCategory
android:key="dream_start_now_category">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="dream_start_now_button_container"
android:selectable="false"
android:layout="@layout/dream_start_button" />
diff --git a/res/xml/my_device_info.xml b/res/xml/my_device_info.xml
index 7165218ecb..998a2f9879 100644
--- a/res/xml/my_device_info.xml
+++ b/res/xml/my_device_info.xml
@@ -21,7 +21,7 @@
android:key="my_device_info_pref_screen"
android:title="@string/about_settings">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="my_device_info_header"
android:order="0"
android:layout="@layout/settings_entity_header"
diff --git a/res/xml/night_display_settings.xml b/res/xml/night_display_settings.xml
index 12c8bc7c2f..b6f625174f 100644
--- a/res/xml/night_display_settings.xml
+++ b/res/xml/night_display_settings.xml
@@ -43,7 +43,7 @@
settings:keywords="@string/keywords_display_night_display"
settings:controller="com.android.settings.display.NightDisplayIntensityPreferenceController" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="night_display_activated"
android:title="@string/night_display_title"
android:selectable="false"
diff --git a/res/xml/notification_group_settings.xml b/res/xml/notification_group_settings.xml
index 0d4184def7..7192f90cdc 100644
--- a/res/xml/notification_group_settings.xml
+++ b/res/xml/notification_group_settings.xml
@@ -17,11 +17,11 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="pref_app_header"
android:layout="@layout/settings_entity_header" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="block"
android:layout="@layout/styled_switch_bar" />
diff --git a/res/xml/power_usage_detail.xml b/res/xml/power_usage_detail.xml
index c854f777e3..12c7e214a3 100644
--- a/res/xml/power_usage_detail.xml
+++ b/res/xml/power_usage_detail.xml
@@ -19,7 +19,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="header_view"
android:layout="@layout/settings_entity_header"
android:selectable="false"
diff --git a/res/xml/power_usage_details.xml b/res/xml/power_usage_details.xml
index 85a2ce762c..8c79116f79 100644
--- a/res/xml/power_usage_details.xml
+++ b/res/xml/power_usage_details.xml
@@ -17,7 +17,7 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="two_buttons"
android:layout="@layout/two_buttons_panel"
android:selectable="false" />
diff --git a/res/xml/power_usage_summary.xml b/res/xml/power_usage_summary.xml
index 48e1276bc3..14d8edaaa9 100644
--- a/res/xml/power_usage_summary.xml
+++ b/res/xml/power_usage_summary.xml
@@ -21,7 +21,7 @@
android:title="@string/power_usage_summary_title"
settings:keywords="@string/keywords_battery">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="battery_header"
android:title="@string/summary_placeholder"
android:selectable="false"
diff --git a/res/xml/security_settings_face.xml b/res/xml/security_settings_face.xml
index 2bdfdc80e2..c202a6cdf2 100644
--- a/res/xml/security_settings_face.xml
+++ b/res/xml/security_settings_face.xml
@@ -55,7 +55,7 @@
android:title="@string/security_settings_face_settings_improve_face">
</Preference>
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="security_settings_face_delete_faces_container"
android:selectable="false"
android:layout="@layout/face_remove_button" />
diff --git a/res/xml/usb_details_fragment.xml b/res/xml/usb_details_fragment.xml
index 5c1efcf19b..4a6cefa261 100644
--- a/res/xml/usb_details_fragment.xml
+++ b/res/xml/usb_details_fragment.xml
@@ -20,7 +20,7 @@
android:title="@string/usb_preference"
android:key="usb_details_fragment">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="usb_device_header"
android:layout="@layout/settings_entity_header"
android:selectable="false"/>
diff --git a/res/xml/wifi_network_details_fragment.xml b/res/xml/wifi_network_details_fragment.xml
index 4198b76fb2..45e7349011 100644
--- a/res/xml/wifi_network_details_fragment.xml
+++ b/res/xml/wifi_network_details_fragment.xml
@@ -19,7 +19,7 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
settings:initialExpandedChildrenCount="5">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="connection_header"
android:layout="@layout/settings_entity_header"
android:selectable="false"
diff --git a/res/xml/zen_mode_event_rule_settings.xml b/res/xml/zen_mode_event_rule_settings.xml
index ea37855171..c871fe16dc 100644
--- a/res/xml/zen_mode_event_rule_settings.xml
+++ b/res/xml/zen_mode_event_rule_settings.xml
@@ -20,11 +20,11 @@
android:key="zen_mode_event_rule_settings"
android:title="@string/zen_mode_automatic_rule_settings_page_title">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="pref_app_header"
android:layout="@layout/settings_entity_header" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="zen_automatic_rule_switch"
android:layout="@layout/styled_switch_bar" />
diff --git a/res/xml/zen_mode_schedule_rule_settings.xml b/res/xml/zen_mode_schedule_rule_settings.xml
index e201b8722f..d05bbd2735 100644
--- a/res/xml/zen_mode_schedule_rule_settings.xml
+++ b/res/xml/zen_mode_schedule_rule_settings.xml
@@ -20,11 +20,11 @@
android:key="zen_mode_schedule_rule_settings"
android:title="@string/zen_mode_automatic_rule_settings_page_title">
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="pref_app_header"
android:layout="@layout/settings_entity_header" />
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="zen_automatic_rule_switch"
android:layout="@layout/styled_switch_bar" />
diff --git a/res/xml/zen_mode_settings.xml b/res/xml/zen_mode_settings.xml
index 20143080c4..832150a034 100644
--- a/res/xml/zen_mode_settings.xml
+++ b/res/xml/zen_mode_settings.xml
@@ -65,7 +65,7 @@
android:fragment="com.android.settings.notification.ZenModeAutomationSettings"/>
<!-- Turn on DND button -->
- <com.android.settings.applications.LayoutPreference
+ <com.android.settingslib.widget.LayoutPreference
android:key="zen_mode_settings_button_container"
android:selectable="false"
android:layout="@layout/zen_mode_settings_button"
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index 5cfe2188d2..6933cfd665 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -42,7 +42,6 @@ import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settings.search.Indexable;
@@ -55,6 +54,7 @@ import com.android.settingslib.CustomDialogPreferenceCompat;
import com.android.settingslib.CustomEditTextPreferenceCompat;
import com.android.settingslib.core.instrumentation.Instrumentable;
import com.android.settingslib.widget.FooterPreferenceMixinCompat;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.UUID;
diff --git a/src/com/android/settings/accounts/AccountHeaderPreferenceController.java b/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
index 36a70218d9..d762095641 100644
--- a/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
+++ b/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
@@ -29,7 +29,6 @@ import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.accounts.AuthenticatorHelper;
@@ -37,6 +36,7 @@ import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.widget.LayoutPreference;
public class AccountHeaderPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin, LifecycleObserver, OnResume {
diff --git a/src/com/android/settings/accounts/RemoveAccountPreferenceController.java b/src/com/android/settings/accounts/RemoveAccountPreferenceController.java
index 9770332e83..06eddd324e 100644
--- a/src/com/android/settings/accounts/RemoveAccountPreferenceController.java
+++ b/src/com/android/settings/accounts/RemoveAccountPreferenceController.java
@@ -39,13 +39,13 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.widget.LayoutPreference;
import java.io.IOException;
diff --git a/src/com/android/settings/applications/AppStorageSettings.java b/src/com/android/settings/applications/AppStorageSettings.java
index 841fb5150f..61ce33d3dc 100644
--- a/src/com/android/settings/applications/AppStorageSettings.java
+++ b/src/com/android/settings/applications/AppStorageSettings.java
@@ -58,6 +58,7 @@ import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.applications.ApplicationsState.Callbacks;
import com.android.settingslib.applications.StorageStatsSource;
import com.android.settingslib.applications.StorageStatsSource.AppStorageStats;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.Collections;
import java.util.List;
diff --git a/src/com/android/settings/applications/LayoutPreference.java b/src/com/android/settings/applications/LayoutPreference.java
deleted file mode 100644
index 68413e7a84..0000000000
--- a/src/com/android/settings/applications/LayoutPreference.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (C) 2015 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.applications;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.FrameLayout;
-
-import androidx.core.content.res.TypedArrayUtils;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceViewHolder;
-
-import com.android.settings.R;
-import com.android.settings.Utils;
-
-public class LayoutPreference extends Preference {
-
- private final View.OnClickListener mClickListener = v -> performClick(v);
- private boolean mAllowDividerAbove;
- private boolean mAllowDividerBelow;
- private View mRootView;
-
- public LayoutPreference(Context context, AttributeSet attrs) {
- super(context, attrs);
- init(context, attrs, 0 /* defStyleAttr */);
- }
-
- public LayoutPreference(Context context, AttributeSet attrs, int defStyleAttr) {
- super(context, attrs, defStyleAttr);
- init(context, attrs, defStyleAttr);
- }
-
- public LayoutPreference(Context context, int resource) {
- this(context, LayoutInflater.from(context).inflate(resource, null, false));
- }
-
- public LayoutPreference(Context context, View view) {
- super(context);
- setView(view);
- }
-
- private void init(Context context, AttributeSet attrs, int defStyleAttr) {
- TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.Preference);
- mAllowDividerAbove = TypedArrayUtils.getBoolean(a, R.styleable.Preference_allowDividerAbove,
- R.styleable.Preference_allowDividerAbove, false);
- mAllowDividerBelow = TypedArrayUtils.getBoolean(a, R.styleable.Preference_allowDividerBelow,
- R.styleable.Preference_allowDividerBelow, false);
- a.recycle();
-
- a = context.obtainStyledAttributes(
- attrs, com.android.internal.R.styleable.Preference, defStyleAttr, 0);
- int layoutResource = a.getResourceId(com.android.internal.R.styleable.Preference_layout,
- 0);
- if (layoutResource == 0) {
- throw new IllegalArgumentException("LayoutPreference requires a layout to be defined");
- }
- a.recycle();
-
- // Need to create view now so that findViewById can be called immediately.
- final View view = LayoutInflater.from(getContext())
- .inflate(layoutResource, null, false);
- setView(view);
- }
-
- private void setView(View view) {
- setLayoutResource(R.layout.layout_preference_frame);
- mRootView = view;
- setShouldDisableView(false);
- }
-
- @Override
- public void onBindViewHolder(PreferenceViewHolder holder) {
- holder.itemView.setOnClickListener(mClickListener);
-
- final boolean selectable = isSelectable();
- holder.itemView.setFocusable(selectable);
- holder.itemView.setClickable(selectable);
- holder.setDividerAllowedAbove(mAllowDividerAbove);
- holder.setDividerAllowedBelow(mAllowDividerBelow);
-
- FrameLayout layout = (FrameLayout) holder.itemView;
- layout.removeAllViews();
- ViewGroup parent = (ViewGroup) mRootView.getParent();
- if (parent != null) {
- parent.removeView(mRootView);
- }
- layout.addView(mRootView);
- }
-
- public <T extends View> T findViewById(int id) {
- return mRootView.findViewById(id);
- }
-
- public void setAllowDividerBelow(boolean allowed) {
- mAllowDividerBelow = allowed;
- }
-
- public boolean isAllowDividerBelow() {
- return mAllowDividerBelow;
- }
-} \ No newline at end of file
diff --git a/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceController.java b/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceController.java
index 5f41ae0afe..f65bb9be5f 100644
--- a/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceController.java
@@ -23,8 +23,6 @@ import android.content.pm.PackageInfo;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.Utils;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.applications.AppUtils;
@@ -32,6 +30,7 @@ import com.android.settingslib.applications.ApplicationsState.AppEntry;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
+import com.android.settingslib.widget.LayoutPreference;
public class AppHeaderViewPreferenceController extends BasePreferenceController
implements AppInfoDashboardFragment.Callback, LifecycleObserver, OnStart {
diff --git a/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceController.java b/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceController.java
index f710f2e3b1..23c01216f9 100644
--- a/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceController.java
@@ -34,7 +34,6 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.applications.AppStoreUtil;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -42,6 +41,7 @@ import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnCreateOptionsMenu;
import com.android.settingslib.core.lifecycle.events.OnOptionsItemSelected;
import com.android.settingslib.core.lifecycle.events.OnPrepareOptionsMenu;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.List;
diff --git a/src/com/android/settings/biometrics/face/FaceSettingsRemoveButtonPreferenceController.java b/src/com/android/settings/biometrics/face/FaceSettingsRemoveButtonPreferenceController.java
index d1fdc48f38..8e41eff37d 100644
--- a/src/com/android/settings/biometrics/face/FaceSettingsRemoveButtonPreferenceController.java
+++ b/src/com/android/settings/biometrics/face/FaceSettingsRemoveButtonPreferenceController.java
@@ -23,8 +23,8 @@ import android.widget.Button;
import androidx.preference.Preference;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.LayoutPreference;
/**
* Controller for the remove button.
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java b/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
index 1795c07a89..11bd1741ca 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
@@ -25,13 +25,13 @@ import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
/**
* This class adds a header with device name and status (connected/disconnected, etc.).
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java
index 0e1811d70e..26b21a1faf 100644
--- a/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java
@@ -21,8 +21,8 @@ import android.content.Context;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.widget.EntityHeaderController;
+import com.android.settingslib.widget.LayoutPreference;
/**
* This class adds a header with device name.
diff --git a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
index 8c6c5aea0c..8b21f0d963 100644
--- a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
+++ b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
@@ -29,9 +29,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.accounts.EmergencyInfoPreferenceController;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.deviceinfo.BluetoothAddressPreferenceController;
import com.android.settings.deviceinfo.BrandedAccountPreferenceController;
import com.android.settings.deviceinfo.BuildNumberPreferenceController;
@@ -53,6 +51,7 @@ import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.search.SearchIndexable;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/src/com/android/settings/display/ColorModePreferenceFragment.java b/src/com/android/settings/display/ColorModePreferenceFragment.java
index bf307b68b8..2a21379c4b 100644
--- a/src/com/android/settings/display/ColorModePreferenceFragment.java
+++ b/src/com/android/settings/display/ColorModePreferenceFragment.java
@@ -23,12 +23,12 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.app.ColorDisplayController;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
import com.android.settings.widget.RadioButtonPickerFragment;
import com.android.settingslib.search.SearchIndexable;
import com.android.settingslib.widget.CandidateInfo;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/src/com/android/settings/display/NightDisplayActivationPreferenceController.java b/src/com/android/settings/display/NightDisplayActivationPreferenceController.java
index 706ac8539c..35cb5edcf1 100644
--- a/src/com/android/settings/display/NightDisplayActivationPreferenceController.java
+++ b/src/com/android/settings/display/NightDisplayActivationPreferenceController.java
@@ -28,8 +28,8 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.app.ColorDisplayController;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.TogglePreferenceController;
+import com.android.settingslib.widget.LayoutPreference;
public class NightDisplayActivationPreferenceController extends TogglePreferenceController {
diff --git a/src/com/android/settings/dream/StartNowPreferenceController.java b/src/com/android/settings/dream/StartNowPreferenceController.java
index 5519a0efc4..9e45ea3737 100644
--- a/src/com/android/settings/dream/StartNowPreferenceController.java
+++ b/src/com/android/settings/dream/StartNowPreferenceController.java
@@ -23,10 +23,10 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.dream.DreamBackend;
+import com.android.settingslib.widget.LayoutPreference;
public class StartNowPreferenceController extends AbstractPreferenceController implements
PreferenceControllerMixin {
diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
index ce9cabcf42..6ad50a981c 100644
--- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
@@ -39,7 +39,6 @@ import com.android.internal.util.ArrayUtils;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.Utils;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.applications.appinfo.AppButtonsPreferenceController;
import com.android.settings.applications.appinfo.ButtonActionDialogFragment;
import com.android.settings.core.InstrumentedPreferenceFragment;
@@ -52,6 +51,7 @@ import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.utils.StringUtil;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
index e5a2e5e0ca..48f4cc13c4 100644
--- a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
@@ -30,7 +30,6 @@ import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.EntityHeaderController;
@@ -38,6 +37,7 @@ import com.android.settingslib.Utils;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
+import com.android.settingslib.widget.LayoutPreference;
/**
* Controller that update the battery header view
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index f7c31e58f4..85aa915b73 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -39,7 +39,6 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.Utils;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
@@ -49,6 +48,7 @@ import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.search.SearchIndexable;
import com.android.settingslib.utils.PowerUtil;
import com.android.settingslib.utils.StringUtil;
+import com.android.settingslib.widget.LayoutPreference;
import java.util.Collections;
import java.util.List;
diff --git a/src/com/android/settings/notification/BlockPreferenceController.java b/src/com/android/settings/notification/BlockPreferenceController.java
index bee32f511a..960526cb05 100644
--- a/src/com/android/settings/notification/BlockPreferenceController.java
+++ b/src/com/android/settings/notification/BlockPreferenceController.java
@@ -27,9 +27,9 @@ import android.widget.Switch;
import androidx.preference.Preference;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.SwitchBar;
+import com.android.settingslib.widget.LayoutPreference;
public class BlockPreferenceController extends NotificationPreferenceController
implements PreferenceControllerMixin, SwitchBar.OnSwitchChangeListener {
diff --git a/src/com/android/settings/notification/HeaderPreferenceController.java b/src/com/android/settings/notification/HeaderPreferenceController.java
index f0c860f351..0c091b437a 100644
--- a/src/com/android/settings/notification/HeaderPreferenceController.java
+++ b/src/com/android/settings/notification/HeaderPreferenceController.java
@@ -31,10 +31,10 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
public class HeaderPreferenceController extends NotificationPreferenceController
implements PreferenceControllerMixin, LifecycleObserver {
diff --git a/src/com/android/settings/notification/NotificationSwitchBarPreference.java b/src/com/android/settings/notification/NotificationSwitchBarPreference.java
index ff42987992..01c4f6ab46 100644
--- a/src/com/android/settings/notification/NotificationSwitchBarPreference.java
+++ b/src/com/android/settings/notification/NotificationSwitchBarPreference.java
@@ -22,9 +22,9 @@ import android.view.View;
import androidx.preference.PreferenceViewHolder;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.widget.ToggleSwitch;
import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.widget.LayoutPreference;
public class NotificationSwitchBarPreference extends LayoutPreference {
private ToggleSwitch mSwitch;
diff --git a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
index 41eb1113e1..72bb0e3d61 100644
--- a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
+++ b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
@@ -28,16 +28,16 @@ import android.text.TextUtils;
import android.util.Slog;
import android.view.View;
+import androidx.fragment.app.Fragment;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
+
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.lifecycle.Lifecycle;
-
-import androidx.fragment.app.Fragment;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceFragmentCompat;
+import com.android.settingslib.widget.LayoutPreference;
public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModePreferenceController
implements PreferenceControllerMixin {
diff --git a/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java b/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
index d4114026c1..f38deb3516 100644
--- a/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
+++ b/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
@@ -25,9 +25,9 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.widget.SwitchBar;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
public class ZenAutomaticRuleSwitchPreferenceController extends
AbstractZenModeAutomaticRulePreferenceController implements
diff --git a/src/com/android/settings/notification/ZenModeButtonPreferenceController.java b/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
index 3e45899b2e..8ebc6b8ab5 100644
--- a/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
+++ b/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
@@ -26,9 +26,9 @@ import androidx.preference.Preference;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
public class ZenModeButtonPreferenceController extends AbstractZenModePreferenceController
implements PreferenceControllerMixin {
diff --git a/src/com/android/settings/widget/EntityHeaderController.java b/src/com/android/settings/widget/EntityHeaderController.java
index 267838cc0a..056f6b46f8 100644
--- a/src/com/android/settings/widget/EntityHeaderController.java
+++ b/src/com/android/settings/widget/EntityHeaderController.java
@@ -16,8 +16,7 @@
package com.android.settings.widget;
-import static com.android.internal.logging.nano.MetricsProto.MetricsEvent
- .ACTION_OPEN_APP_NOTIFICATION_SETTING;
+import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.ACTION_OPEN_APP_NOTIFICATION_SETTING;
import android.annotation.IdRes;
import android.annotation.UserIdInt;
@@ -48,11 +47,11 @@ import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.applications.AppInfoBase;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/src/com/android/settings/widget/TwoStateButtonPreference.java b/src/com/android/settings/widget/TwoStateButtonPreference.java
index b154fb4193..eeee65def8 100644
--- a/src/com/android/settings/widget/TwoStateButtonPreference.java
+++ b/src/com/android/settings/widget/TwoStateButtonPreference.java
@@ -26,7 +26,7 @@ import androidx.annotation.VisibleForTesting;
import androidx.core.content.res.TypedArrayUtils;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
+import com.android.settingslib.widget.LayoutPreference;
/**
* Preference that presents a button with two states(On vs Off)
diff --git a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
index 3bf38a773a..9a3398ad94 100644
--- a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
+++ b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
@@ -54,7 +54,6 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
import com.android.settings.Utils;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.ActionButtonPreference;
import com.android.settings.widget.EntityHeaderController;
@@ -68,6 +67,7 @@ import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.widget.LayoutPreference;
import com.android.settingslib.wifi.AccessPoint;
import java.net.Inet4Address;
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
index 19a140c5b0..aeb5f54769 100644
--- a/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
@@ -35,11 +35,11 @@ import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.accounts.AuthenticatorHelper;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java
index 3bebd66e08..83ea218491 100644
--- a/tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java
@@ -51,12 +51,12 @@ import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowAccountManager;
import com.android.settings.testutils.shadow.ShadowContentResolver;
import com.android.settings.testutils.shadow.ShadowDevicePolicyManager;
import com.android.settings.testutils.shadow.ShadowUserManager;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java b/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
index ddcbf85e49..3031f5b1a0 100644
--- a/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
+++ b/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
@@ -44,6 +44,7 @@ import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.After;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/applications/LayoutPreferenceTest.java b/tests/robotests/src/com/android/settings/applications/LayoutPreferenceTest.java
deleted file mode 100644
index 899d4cb650..0000000000
--- a/tests/robotests/src/com/android/settings/applications/LayoutPreferenceTest.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (C) 2017 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.applications;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-
-import android.content.Context;
-import android.view.LayoutInflater;
-
-import androidx.preference.Preference.OnPreferenceClickListener;
-import androidx.preference.PreferenceViewHolder;
-
-import com.android.settings.R;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.robolectric.RuntimeEnvironment;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-public class LayoutPreferenceTest {
-
- private Context mContext;
- private LayoutPreference mPreference;
- private PreferenceViewHolder mHolder;
-
- @Before
- public void setUp() {
- mContext = RuntimeEnvironment.application;
- mPreference = new LayoutPreference(mContext, R.layout.two_action_buttons);
- mHolder = PreferenceViewHolder.createInstanceForTests(LayoutInflater.from(mContext)
- .inflate(R.layout.layout_preference_frame, null, false));
- }
-
- @Test
- public void setOnClickListener_shouldAttachToRootView() {
- final OnPreferenceClickListener listener = mock(OnPreferenceClickListener.class);
-
- mPreference.setOnPreferenceClickListener(listener);
- mPreference.onBindViewHolder(mHolder);
-
- mHolder.itemView.callOnClick();
-
- verify(listener).onPreferenceClick(mPreference);
- assertThat(mHolder.itemView.isFocusable()).isTrue();
- assertThat(mHolder.itemView.isClickable()).isTrue();
- }
-
- @Test
- public void setNonSelectable_viewShouldNotBeSelectable() {
- mPreference.setSelectable(false);
- mPreference.onBindViewHolder(mHolder);
-
- assertThat(mHolder.itemView.isFocusable()).isFalse();
- assertThat(mHolder.itemView.isClickable()).isFalse();
- }
-
- @Test
- public void disableSomeView_shouldMaintainStateAfterBind() {
- mPreference.findViewById(R.id.button1).setEnabled(false);
- mPreference.findViewById(R.id.button2).setEnabled(true);
-
- mPreference.onBindViewHolder(mHolder);
-
- assertThat(mPreference.findViewById(R.id.button1).isEnabled()).isFalse();
- assertThat(mPreference.findViewById(R.id.button2).isEnabled()).isTrue();
- }
-
- @Test
- public void allowDividerBelow_shouldSaveCorrectDividerStatus() {
- mPreference.setAllowDividerBelow(true);
-
- assertThat(mPreference.isAllowDividerBelow()).isTrue();
- }
-}
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
index d3e00c3715..67702f1dc4 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
@@ -42,10 +42,10 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceControllerTest.java
index 5d8c842646..6879b7de2f 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/InstantAppButtonsPreferenceControllerTest.java
@@ -48,11 +48,11 @@ import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
index 0430e0f4e5..e62e338bcc 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
@@ -33,7 +33,6 @@ import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowBluetoothDevice;
@@ -41,6 +40,7 @@ import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.After;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
index ec697ad4b6..2aa38d7188 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
@@ -31,12 +31,12 @@ import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.testutils.DrawableTestHelper;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.After;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/display/ColorModePreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/display/ColorModePreferenceFragmentTest.java
index 3aae145c55..859912aa71 100644
--- a/tests/robotests/src/com/android/settings/display/ColorModePreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/display/ColorModePreferenceFragmentTest.java
@@ -34,10 +34,10 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.app.ColorDisplayController;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settingslib.widget.CandidateInfo;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/display/NightDisplayActivationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/NightDisplayActivationPreferenceControllerTest.java
index 30dedb6a00..84d184de41 100644
--- a/tests/robotests/src/com/android/settings/display/NightDisplayActivationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/NightDisplayActivationPreferenceControllerTest.java
@@ -26,9 +26,9 @@ import android.view.View;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/dream/StartNowPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/dream/StartNowPreferenceControllerTest.java
index fc7edc2827..21cb9f153f 100644
--- a/tests/robotests/src/com/android/settings/dream/StartNowPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/dream/StartNowPreferenceControllerTest.java
@@ -28,9 +28,9 @@ import android.widget.Button;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.dream.DreamBackend;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
index 1a8d58dff0..c9086abf77 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
@@ -51,7 +51,6 @@ import com.android.internal.os.BatterySipper;
import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowActivityManager;
@@ -61,6 +60,7 @@ import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.After;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
index 5541654bc5..7797a786e5 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java
@@ -42,7 +42,6 @@ import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
@@ -50,6 +49,7 @@ import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.After;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
index cf1a5f346d..14caf2c818 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
@@ -48,12 +48,12 @@ import com.android.internal.os.BatterySipper;
import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.XmlTestUtils;
import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
index 06ef6010c1..0ebcaefa43 100644
--- a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
@@ -45,9 +45,9 @@ import android.content.Context;
import android.os.UserManager;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.widget.SwitchBar;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java
index 57c8712992..04dac26708 100644
--- a/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java
@@ -37,7 +37,7 @@ import android.view.View;
import androidx.fragment.app.FragmentActivity;
import androidx.preference.PreferenceFragmentCompat;
-import com.android.settings.applications.LayoutPreference;
+import com.android.settingslib.widget.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/testutils/SettingsRobolectricTestRunner.java b/tests/robotests/src/com/android/settings/testutils/SettingsRobolectricTestRunner.java
index 5e5410ce0c..9417e9c934 100644
--- a/tests/robotests/src/com/android/settings/testutils/SettingsRobolectricTestRunner.java
+++ b/tests/robotests/src/com/android/settings/testutils/SettingsRobolectricTestRunner.java
@@ -84,6 +84,8 @@ public class SettingsRobolectricTestRunner extends RobolectricTestRunner {
paths.add(new ResourcePath(null,
Fs.fromURL(new URL("file:frameworks/base/packages/SettingsLib/SearchWidget/res/")), null));
paths.add(new ResourcePath(null,
+ Fs.fromURL(new URL("file:frameworks/base/packages/SettingsLib/SettingsLayoutPreference/res")), null));
+ paths.add(new ResourcePath(null,
Fs.fromURL(new URL("file:frameworks/base/core/res/res")), null));
paths.add(new ResourcePath(null,
Fs.fromURL(new URL("file:frameworks/opt/setupwizard/library/main/res")), null));
diff --git a/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java b/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
index 5d60810627..5639549348 100644
--- a/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
@@ -46,10 +46,10 @@ import androidx.fragment.app.FragmentActivity;
import androidx.preference.Preference;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.ShadowIconDrawableFactory;
import com.android.settingslib.applications.ApplicationsState;
+import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
diff --git a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
index 59e6287e07..4a0988a25c 100644
--- a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
@@ -62,7 +62,6 @@ import androidx.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowBidiFormatter;
import com.android.settings.testutils.shadow.ShadowDevicePolicyManager;
@@ -73,6 +72,7 @@ import com.android.settings.widget.EntityHeaderController;
import com.android.settings.wifi.WifiDetailPreference;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.LayoutPreference;
import com.android.settingslib.wifi.AccessPoint;
import org.junit.Before;