Merge "Enable use_resource_processor for all sysui deps" into main
diff --git a/src/com/android/settings/accessibility/FlashNotificationsPreviewPreference.java b/src/com/android/settings/accessibility/FlashNotificationsPreviewPreference.java
index 79534d8..5b669fa 100644
--- a/src/com/android/settings/accessibility/FlashNotificationsPreviewPreference.java
+++ b/src/com/android/settings/accessibility/FlashNotificationsPreviewPreference.java
@@ -63,7 +63,7 @@
     private void init() {
         setLayoutResource(R.layout.flash_notification_preview_preference);
         mBackgroundEnabled = getContext().getDrawable(
-                com.android.settingslib.widget.R.drawable.settingslib_switch_bar_bg_on);
+                com.android.settingslib.widget.mainswitch.R.drawable.settingslib_switch_bar_bg_on);
         mBackgroundDisabled = getContext().getDrawable(R.drawable.switch_bar_bg_disabled);
         mTextColorDisabled = Utils.getColorAttrDefaultColor(getContext(),
                 android.R.attr.textColorPrimary);
diff --git a/src/com/android/settings/accessibility/VibrationSettings.java b/src/com/android/settings/accessibility/VibrationSettings.java
index e7a249b..53592a7 100644
--- a/src/com/android/settings/accessibility/VibrationSettings.java
+++ b/src/com/android/settings/accessibility/VibrationSettings.java
@@ -81,7 +81,7 @@
                 R.integer.config_vibration_supported_intensity_levels);
         if (rv != null && supportedIntensities > 1) {
             final int bottom_padding = res.getDimensionPixelSize(
-                    com.android.settingslib.widget.R.dimen.settingslib_listPreferredItemPaddingEnd);
+                    com.android.settingslib.widget.theme.R.dimen.settingslib_listPreferredItemPaddingEnd);
             rv.setPaddingRelative(rv.getPaddingStart(), rv.getPaddingTop(), rv.getPaddingEnd(),
                     rv.getPaddingBottom() + bottom_padding);
         }
diff --git a/src/com/android/settings/accounts/AccountTypePreferenceLoader.java b/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
index ddf92f5..72366d4 100644
--- a/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
+++ b/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
@@ -93,7 +93,7 @@
                             desc.packageName, 0, mUserHandle);
                     final Theme baseTheme = mFragment.getResources().newTheme();
                     baseTheme.applyStyle(
-                            com.android.settingslib.widget.R.style.Theme_SettingsBase, true);
+                            com.android.settingslib.widget.theme.R.style.Theme_SettingsBase, true);
                     final Context themedCtx =
                             new LocalClassLoaderContextThemeWrapper(getClass(), targetCtx, 0);
                     themedCtx.getTheme().setTo(baseTheme);
diff --git a/src/com/android/settings/applications/appcompat/RadioWithImagePreference.java b/src/com/android/settings/applications/appcompat/RadioWithImagePreference.java
index b47b679..7d4f315 100644
--- a/src/com/android/settings/applications/appcompat/RadioWithImagePreference.java
+++ b/src/com/android/settings/applications/appcompat/RadioWithImagePreference.java
@@ -127,7 +127,8 @@
     }
 
     private void init() {
-        setWidgetLayoutResource(R.layout.preference_widget_radiobutton);
+        setWidgetLayoutResource(
+                com.android.settingslib.widget.preference.radio.R.layout.preference_widget_radiobutton);
         setLayoutResource(R.layout.radio_with_image_preference);
         setIconSpaceReserved(false);
     }
diff --git a/src/com/android/settings/applications/appinfo/ExternalSourcesDetails.java b/src/com/android/settings/applications/appinfo/ExternalSourcesDetails.java
index 2d1375c..9a41f25 100644
--- a/src/com/android/settings/applications/appinfo/ExternalSourcesDetails.java
+++ b/src/com/android/settings/applications/appinfo/ExternalSourcesDetails.java
@@ -88,7 +88,7 @@
                         UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY,
                         userHandle);
         if ((userRestrictionSource & UserManager.RESTRICTION_SOURCE_SYSTEM) != 0) {
-            return context.getString(com.android.settingslib.widget.R.string.disabled_by_admin);
+            return context.getString(com.android.settingslib.widget.restricted.R.string.disabled_by_admin);
         } else if (userRestrictionSource != 0) {
             return context.getString(com.android.settingslib.R.string.disabled);
         }
diff --git a/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java b/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
index b8f1b4c..1f15aec 100644
--- a/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
+++ b/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
@@ -73,7 +73,7 @@
         mAppName = itemView.findViewById(android.R.id.title);
         mAppIcon = itemView.findViewById(android.R.id.icon);
         mSummary = itemView.findViewById(android.R.id.summary);
-        mDisabled = itemView.findViewById(com.android.settingslib.widget.R.id.appendix);
+        mDisabled = itemView.findViewById(com.android.settingslib.widget.preference.app.R.id.appendix);
         mSwitch = itemView.findViewById(R.id.switchWidget);
         mWidgetContainer = itemView.findViewById(android.R.id.widget_frame);
         mAddIcon = itemView.findViewById(R.id.add_preference_widget);
@@ -86,7 +86,7 @@
 
     static View newView(ViewGroup parent, boolean twoTarget, int listType) {
         ViewGroup view = (ViewGroup) LayoutInflater.from(parent.getContext())
-                .inflate(com.android.settingslib.widget.R.layout.preference_app, parent, false);
+                .inflate(com.android.settingslib.widget.preference.app.R.layout.preference_app, parent, false);
         ViewGroup widgetFrame = view.findViewById(android.R.id.widget_frame);
         if (twoTarget) {
             if (widgetFrame != null) {
@@ -98,7 +98,7 @@
                             .inflate(R.layout.preference_widget_primary_switch, widgetFrame, true);
                 }
                 View divider = LayoutInflater.from(parent.getContext()).inflate(
-                        com.android.settingslib.widget.R.layout.preference_two_target_divider,
+                        com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target_divider,
                         view, false);
                 // second to last, before widget frame
                 view.addView(divider, view.getChildCount() - 1);
@@ -111,7 +111,7 @@
 
     static View newHeader(ViewGroup parent, int resText) {
         ViewGroup view = (ViewGroup) LayoutInflater.from(parent.getContext())
-                .inflate(com.android.settingslib.widget.R.layout.preference_app_header,
+                .inflate(com.android.settingslib.widget.preference.app.R.layout.preference_app_header,
                         parent, false);
         TextView textView = view.findViewById(R.id.apps_top_intro_text);
         textView.setText(resText);
diff --git a/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java b/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
index 42d2db2..faa1b51 100644
--- a/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
+++ b/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
@@ -209,7 +209,7 @@
         }
 
         final ImageView personalIconView = mHeader.findViewById(
-                com.android.settingslib.widget.R.id.entity_header_icon_personal);
+                com.android.settingslib.widget.preference.layout.R.id.entity_header_icon_personal);
         if (personalIconView != null) {
             Drawable icon = IconDrawableFactory.newInstance(mContext)
                     .getBadgedIcon(mPackageInfo.applicationInfo, personalProfile.getIdentifier())
@@ -221,7 +221,7 @@
         }
 
         final ImageView workIconView = mHeader.findViewById(
-                com.android.settingslib.widget.R.id.entity_header_icon_work);
+                com.android.settingslib.widget.preference.layout.R.id.entity_header_icon_work);
         if (workIconView != null) {
             Drawable icon = IconDrawableFactory.newInstance(mContext)
                     .getBadgedIcon(mPackageInfo.applicationInfo, workProfile.getIdentifier())
@@ -502,11 +502,11 @@
         mSwitchPref.setChecked(true);
         mSwitchPref.setTitle(R.string.interact_across_profiles_switch_enabled);
         final ImageView horizontalArrowIcon =
-                mHeader.findViewById(com.android.settingslib.widget.R.id.entity_header_swap_horiz);
+                mHeader.findViewById(com.android.settingslib.widget.preference.layout.R.id.entity_header_swap_horiz);
         if (horizontalArrowIcon != null) {
             horizontalArrowIcon.setImageDrawable(
                     mContext.getDrawable(
-                            com.android.settingslib.widget.R.drawable.ic_swap_horiz_blue));
+                            com.android.settingslib.widget.preference.layout.R.drawable.ic_swap_horiz_blue));
         }
     }
 
@@ -514,11 +514,11 @@
         mSwitchPref.setChecked(false);
         mSwitchPref.setTitle(R.string.interact_across_profiles_switch_disabled);
         final ImageView horizontalArrowIcon =
-                mHeader.findViewById(com.android.settingslib.widget.R.id.entity_header_swap_horiz);
+                mHeader.findViewById(com.android.settingslib.widget.preference.layout.R.id.entity_header_swap_horiz);
         if (horizontalArrowIcon != null) {
             horizontalArrowIcon.setImageDrawable(
                     mContext.getDrawable(
-                            com.android.settingslib.widget.R.drawable.ic_swap_horiz_grey));
+                            com.android.settingslib.widget.preference.layout.R.drawable.ic_swap_horiz_grey));
         }
     }
 
diff --git a/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java b/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
index 13f056d..2914cf4 100644
--- a/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
+++ b/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
@@ -113,7 +113,7 @@
         });
 
         mAlertDialog = new AlertDialog.Builder(mContext,
-                com.android.settingslib.widget.R.style.Theme_AlertDialog_SettingsLib)
+                com.android.settingslib.widget.theme.R.style.Theme_AlertDialog_SettingsLib)
             .setView(layout)
             .create();
 
diff --git a/src/com/android/settings/bluetooth/BluetoothBroadcastSourcePreference.java b/src/com/android/settings/bluetooth/BluetoothBroadcastSourcePreference.java
index 6ec356e..d0fabc6 100644
--- a/src/com/android/settings/bluetooth/BluetoothBroadcastSourcePreference.java
+++ b/src/com/android/settings/bluetooth/BluetoothBroadcastSourcePreference.java
@@ -60,7 +60,7 @@
     @Override
     public void onBindViewHolder(final PreferenceViewHolder view) {
         super.onBindViewHolder(view);
-        view.findViewById(com.android.settingslib.widget.R.id.two_target_divider)
+        view.findViewById(com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider)
                 .setVisibility(View.INVISIBLE);
         final ImageButton imageButton =
                 (ImageButton) view.findViewById(com.android.settingslib.R.id.icon_button);
diff --git a/src/com/android/settings/core/SettingsBaseActivity.java b/src/com/android/settings/core/SettingsBaseActivity.java
index d5b3103..e43772e 100644
--- a/src/com/android/settings/core/SettingsBaseActivity.java
+++ b/src/com/android/settings/core/SettingsBaseActivity.java
@@ -111,9 +111,9 @@
 
         if (isToolbarEnabled() && !isAnySetupWizard) {
             super.setContentView(
-                    com.android.settingslib.widget.R.layout.collapsing_toolbar_base_layout);
+                    com.android.settingslib.collapsingtoolbar.R.layout.collapsing_toolbar_base_layout);
             mCollapsingToolbarLayout =
-                    findViewById(com.android.settingslib.widget.R.id.collapsing_toolbar);
+                    findViewById(com.android.settingslib.collapsingtoolbar.R.id.collapsing_toolbar);
             mAppBarLayout = findViewById(R.id.app_bar);
             if (mCollapsingToolbarLayout != null) {
                 mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER);
diff --git a/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java b/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
index 4921a339..347c237 100644
--- a/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
+++ b/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
@@ -176,7 +176,7 @@
         if (mDataUsageState != null) {
             setChecked(mDataUsageState.isDataSaverAllowlisted);
             if (isDisabledByAdmin()) {
-                setSummary(com.android.settingslib.widget.R.string.disabled_by_admin);
+                setSummary(com.android.settingslib.widget.restricted.R.string.disabled_by_admin);
             } else if (mDataUsageState.isDataSaverDenylisted) {
                 setSummary(R.string.restrict_background_blocklisted);
             } else {
diff --git a/src/com/android/settings/development/AppViewHolder.java b/src/com/android/settings/development/AppViewHolder.java
index 3e34275..6bdf454 100644
--- a/src/com/android/settings/development/AppViewHolder.java
+++ b/src/com/android/settings/development/AppViewHolder.java
@@ -36,7 +36,7 @@
     static public AppViewHolder createOrRecycle(LayoutInflater inflater, View convertView) {
         if (convertView == null) {
             convertView =
-                    inflater.inflate(com.android.settingslib.widget.R.layout.preference_app, null);
+                    inflater.inflate(com.android.settingslib.widget.preference.app.R.layout.preference_app, null);
 
             // Creates a ViewHolder and store references to the two children views
             // we want to bind data to.
@@ -46,7 +46,7 @@
             holder.appIcon = convertView.findViewById(android.R.id.icon);
             holder.summary = convertView.findViewById(android.R.id.summary);
             holder.disabled =
-                    convertView.findViewById(com.android.settingslib.widget.R.id.appendix);
+                    convertView.findViewById(com.android.settingslib.widget.preference.app.R.id.appendix);
             holder.widget = convertView.findViewById(android.R.id.widget_frame);
             convertView.setTag(holder);
             return holder;
diff --git a/src/com/android/settings/display/ScreenResolutionFragment.java b/src/com/android/settings/display/ScreenResolutionFragment.java
index bb1d910..622e665 100644
--- a/src/com/android/settings/display/ScreenResolutionFragment.java
+++ b/src/com/android/settings/display/ScreenResolutionFragment.java
@@ -108,7 +108,7 @@
         footerPreference.setTitle(R.string.screen_resolution_footer);
         footerPreference.setSelectable(false);
         footerPreference.setLayoutResource(
-                com.android.settingslib.widget.R.layout.preference_footer);
+                com.android.settingslib.widget.preference.footer.R.layout.preference_footer);
         screen.addPreference(footerPreference);
     }
 
diff --git a/src/com/android/settings/display/ScreenTimeoutSettings.java b/src/com/android/settings/display/ScreenTimeoutSettings.java
index fb6ddb8..43dd31c 100644
--- a/src/com/android/settings/display/ScreenTimeoutSettings.java
+++ b/src/com/android/settings/display/ScreenTimeoutSettings.java
@@ -129,7 +129,7 @@
         mPrivacyPreference.setTitle(R.string.adaptive_sleep_privacy);
         mPrivacyPreference.setSelectable(false);
         mPrivacyPreference.setLayoutResource(
-                com.android.settingslib.widget.R.layout.preference_footer);
+                com.android.settingslib.widget.preference.footer.R.layout.preference_footer);
         mPrivacyManager = SensorPrivacyManager.getInstance(context);
         mPrivacyChangedListener = (sensor, enabled) -> mAdaptiveSleepController.updatePreference();
     }
@@ -203,7 +203,7 @@
         mPrivacyPreference.setTitle(R.string.adaptive_sleep_privacy);
         mPrivacyPreference.setSelectable(false);
         mPrivacyPreference.setLayoutResource(
-                com.android.settingslib.widget.R.layout.preference_footer);
+                com.android.settingslib.widget.preference.footer.R.layout.preference_footer);
 
         if (isScreenAttentionAvailable(getContext())) {
             mAdaptiveSleepPermissionController.addToScreen(screen);
diff --git a/src/com/android/settings/network/NetworkProviderSettings.java b/src/com/android/settings/network/NetworkProviderSettings.java
index f2688c6..eb50cea 100644
--- a/src/com/android/settings/network/NetworkProviderSettings.java
+++ b/src/com/android/settings/network/NetworkProviderSettings.java
@@ -271,7 +271,7 @@
             return;
         }
 
-        setPinnedHeaderView(com.android.settingslib.widget.R.layout.progress_header);
+        setPinnedHeaderView(com.android.settingslib.widget.progressbar.R.layout.progress_header);
         setProgressBarVisible(false);
 
         if (hasWifiManager()) {
diff --git a/src/com/android/settings/network/telephony/NetworkSelectSettings.java b/src/com/android/settings/network/telephony/NetworkSelectSettings.java
index a7623a2..1cfa043 100644
--- a/src/com/android/settings/network/telephony/NetworkSelectSettings.java
+++ b/src/com/android/settings/network/telephony/NetworkSelectSettings.java
@@ -195,8 +195,8 @@
         final Activity activity = getActivity();
         if (activity != null) {
             mProgressHeader = setPinnedHeaderView(
-                    com.android.settingslib.widget.R.layout.progress_header)
-                    .findViewById(com.android.settingslib.widget.R.id.progress_bar_animation);
+                    com.android.settingslib.widget.progressbar.R.layout.progress_header)
+                    .findViewById(com.android.settingslib.widget.progressbar.R.id.progress_bar_animation);
             setProgressBarVisible(false);
         }
         forceUpdateConnectedPreferenceCategory();
diff --git a/src/com/android/settings/nfc/AndroidBeam.java b/src/com/android/settings/nfc/AndroidBeam.java
index d10873c..9df24a5 100644
--- a/src/com/android/settings/nfc/AndroidBeam.java
+++ b/src/com/android/settings/nfc/AndroidBeam.java
@@ -85,7 +85,7 @@
             return new View(getContext());
         }
         mView = inflater.inflate(
-                com.android.settingslib.widget.R.layout.preference_footer, container, false);
+                com.android.settingslib.widget.preference.footer.R.layout.preference_footer, container, false);
 
         ImageView iconInfo = mView.findViewById(android.R.id.icon);
         iconInfo.setImageResource(R.drawable.ic_info_outline_24dp);
diff --git a/src/com/android/settings/search/actionbar/SearchMenuController.java b/src/com/android/settings/search/actionbar/SearchMenuController.java
index 8d0c89a..453832d 100644
--- a/src/com/android/settings/search/actionbar/SearchMenuController.java
+++ b/src/com/android/settings/search/actionbar/SearchMenuController.java
@@ -86,8 +86,8 @@
             return;
         }
         final MenuItem searchItem = menu.add(Menu.NONE, MENU_SEARCH, 0 /* order */,
-                com.android.settingslib.search.R.string.search_menu);
-        searchItem.setIcon(com.android.settingslib.search.R.drawable.ic_search_24dp);
+                com.android.settingslib.search.widget.R.string.search_menu);
+        searchItem.setIcon(com.android.settingslib.search.widget.R.drawable.ic_search_24dp);
         searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
 
         searchItem.setOnMenuItemClickListener(target -> {
diff --git a/src/com/android/settings/security/CredentialManagementAppHeaderController.java b/src/com/android/settings/security/CredentialManagementAppHeaderController.java
index 693857e..03720e6 100644
--- a/src/com/android/settings/security/CredentialManagementAppHeaderController.java
+++ b/src/com/android/settings/security/CredentialManagementAppHeaderController.java
@@ -83,7 +83,7 @@
         TextView titleView = headerPref.findViewById(R.id.entity_header_title);
         TextView summary1 = headerPref.findViewById(R.id.entity_header_summary);
         TextView summary2 = headerPref.findViewById(
-                com.android.settingslib.widget.R.id.entity_header_second_summary);
+                com.android.settingslib.widget.preference.layout.R.id.entity_header_second_summary);
         summary2.setVisibility(View.GONE);
 
         try {
diff --git a/src/com/android/settings/slices/SettingsSliceProvider.java b/src/com/android/settings/slices/SettingsSliceProvider.java
index f9e0091..fdae1d0 100644
--- a/src/com/android/settings/slices/SettingsSliceProvider.java
+++ b/src/com/android/settings/slices/SettingsSliceProvider.java
@@ -227,7 +227,7 @@
             final boolean nightMode = Utils.isNightMode(getContext());
             if (mNightMode == null) {
                 mNightMode = nightMode;
-                getContext().setTheme(com.android.settingslib.widget.R.style.Theme_SettingsBase);
+                getContext().setTheme(com.android.settingslib.widget.theme.R.style.Theme_SettingsBase);
             } else if (mNightMode != nightMode) {
                 Log.d(TAG, "Night mode changed, reload theme");
                 mNightMode = nightMode;
diff --git a/src/com/android/settings/vpn2/VpnInfoPreference.java b/src/com/android/settings/vpn2/VpnInfoPreference.java
index 2a1b495..9e70a5d 100644
--- a/src/com/android/settings/vpn2/VpnInfoPreference.java
+++ b/src/com/android/settings/vpn2/VpnInfoPreference.java
@@ -71,7 +71,7 @@
 
         // Hide the divider from view
         final View divider =
-                holder.findViewById(com.android.settingslib.widget.R.id.two_target_divider);
+                holder.findViewById(com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider);
         divider.setVisibility(View.GONE);
     }
 
diff --git a/src/com/android/settings/widget/AppCheckBoxPreference.java b/src/com/android/settings/widget/AppCheckBoxPreference.java
index 7cf31b8..fa28b35 100644
--- a/src/com/android/settings/widget/AppCheckBoxPreference.java
+++ b/src/com/android/settings/widget/AppCheckBoxPreference.java
@@ -31,20 +31,24 @@
 public class AppCheckBoxPreference extends CheckBoxPreference {
     public AppCheckBoxPreference(Context context, AttributeSet attrs) {
         super(context, attrs);
-        setLayoutResource(com.android.settingslib.widget.R.layout.preference_app);
+        setLayoutResource(com.android.settingslib.widget.preference.app.R.layout.preference_app);
     }
 
     public AppCheckBoxPreference(Context context) {
         super(context);
-        setLayoutResource(com.android.settingslib.widget.R.layout.preference_app);
+        setLayoutResource(com.android.settingslib.widget.preference.app.R.layout.preference_app);
     }
 
     @Override
     public void onBindViewHolder(PreferenceViewHolder holder) {
         super.onBindViewHolder(holder);
 
-        final LinearLayout layout = (LinearLayout) holder
-                .findViewById(com.android.settingslib.widget.R.id.summary_container);
+        // NOTE: All the summary_container resources IDs in the different dependency widget packages
+        // are equivalent, so it does not matter which one we use. For example,
+        //   com.android.settingslib.widget.preference.radio.R.id.summary_container ==
+        //   com.android.settingslib.widget.preference.selector.R.id.summary_container
+        final LinearLayout layout = (LinearLayout) holder.findViewById(
+                com.android.settingslib.widget.preference.radio.R.id.summary_container);
         if (layout != null) {
             // If summary doesn't exist, make it gone
             layout.setVisibility(TextUtils.isEmpty(getSummary()) ? View.GONE : View.VISIBLE);
diff --git a/src/com/android/settings/widget/EntityHeaderController.java b/src/com/android/settings/widget/EntityHeaderController.java
index 376bd22..c89b7bb 100644
--- a/src/com/android/settings/widget/EntityHeaderController.java
+++ b/src/com/android/settings/widget/EntityHeaderController.java
@@ -110,7 +110,7 @@
             mHeader = header;
         } else {
             mHeader = LayoutInflater.from(fragment.getContext())
-                    .inflate(com.android.settingslib.widget.R.layout.settings_entity_header,
+                    .inflate(com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header,
                             null /* root */);
         }
     }
@@ -236,9 +236,9 @@
         }
         setText(R.id.entity_header_title, mLabel);
         setText(R.id.entity_header_summary, mSummary);
-        setText(com.android.settingslib.widget.R.id.entity_header_second_summary, mSecondSummary);
+        setText(com.android.settingslib.widget.preference.layout.R.id.entity_header_second_summary, mSecondSummary);
         if (mIsInstantApp) {
-            setText(com.android.settingslib.widget.R.id.install_type,
+            setText(com.android.settingslib.widget.preference.layout.R.id.install_type,
                     mHeader.getResources().getString(R.string.install_type_instant));
         }
 
@@ -254,7 +254,7 @@
      */
     public EntityHeaderController bindHeaderButtons() {
         final View entityHeaderContent = mHeader.findViewById(
-                com.android.settingslib.widget.R.id.entity_header_content);
+                com.android.settingslib.widget.preference.layout.R.id.entity_header_content);
         final ImageButton button1 = mHeader.findViewById(android.R.id.button1);
         final ImageButton button2 = mHeader.findViewById(android.R.id.button2);
         bindAppInfoLink(entityHeaderContent);
diff --git a/src/com/android/settings/widget/SingleTargetGearPreference.java b/src/com/android/settings/widget/SingleTargetGearPreference.java
index 2cc5508..e6a833d 100644
--- a/src/com/android/settings/widget/SingleTargetGearPreference.java
+++ b/src/com/android/settings/widget/SingleTargetGearPreference.java
@@ -59,7 +59,7 @@
     public void onBindViewHolder(PreferenceViewHolder holder) {
         super.onBindViewHolder(holder);
         final View divider = holder.findViewById(
-                com.android.settingslib.widget.R.id.two_target_divider);
+                com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider);
         if (divider != null) {
             divider.setVisibility(View.INVISIBLE);
         }
diff --git a/src/com/android/settings/wifi/ConnectedWifiEntryPreference.java b/src/com/android/settings/wifi/ConnectedWifiEntryPreference.java
index 1dea591..cd0dad1 100644
--- a/src/com/android/settings/wifi/ConnectedWifiEntryPreference.java
+++ b/src/com/android/settings/wifi/ConnectedWifiEntryPreference.java
@@ -56,7 +56,7 @@
         holder.findViewById(R.id.settings_button_no_background).setVisibility(
                 canSignIn ? View.INVISIBLE : View.VISIBLE);
         gear.setVisibility(canSignIn ? View.VISIBLE : View.INVISIBLE);
-        holder.findViewById(com.android.settingslib.widget.R.id.two_target_divider).setVisibility(
+        holder.findViewById(com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider).setVisibility(
                 canSignIn ? View.VISIBLE : View.INVISIBLE);
     }
 
diff --git a/src/com/android/settings/wifi/LinkablePreference.java b/src/com/android/settings/wifi/LinkablePreference.java
index 8f95917..adcfe32 100644
--- a/src/com/android/settings/wifi/LinkablePreference.java
+++ b/src/com/android/settings/wifi/LinkablePreference.java
@@ -49,7 +49,7 @@
 
     public LinkablePreference(Context ctx, AttributeSet attrs) {
         this(ctx, attrs, TypedArrayUtils.getAttr(
-                ctx, com.android.settingslib.widget.R.attr.footerPreferenceStyle,
+                ctx, com.android.settingslib.widget.theme.R.attr.footerPreferenceStyle,
                 android.R.attr.preferenceStyle));
     }
 
diff --git a/src/com/android/settings/wifi/NetworkRequestDialogFragment.java b/src/com/android/settings/wifi/NetworkRequestDialogFragment.java
index cf4bbcb..d1c3cac 100644
--- a/src/com/android/settings/wifi/NetworkRequestDialogFragment.java
+++ b/src/com/android/settings/wifi/NetworkRequestDialogFragment.java
@@ -326,7 +326,7 @@
                 view = mInflater.inflate(mResourceId, parent, false);
 
                 final View divider = view.findViewById(
-                        com.android.settingslib.widget.R.id.two_target_divider);
+                        com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider);
                 divider.setVisibility(View.GONE);
             }
 
diff --git a/src/com/android/settings/wifi/WifiEntryPreference.java b/src/com/android/settings/wifi/WifiEntryPreference.java
index e63e942..c78f28c 100644
--- a/src/com/android/settings/wifi/WifiEntryPreference.java
+++ b/src/com/android/settings/wifi/WifiEntryPreference.java
@@ -122,7 +122,7 @@
         view.itemView.setContentDescription(mContentDescription);
 
         // Turn off divider
-        view.findViewById(com.android.settingslib.widget.R.id.two_target_divider)
+        view.findViewById(com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider)
                 .setVisibility(View.INVISIBLE);
 
         // Enable the icon button when the help string in this WifiEntry is not null.
diff --git a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
index b98d5cd..f4873cf 100644
--- a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
+++ b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
@@ -550,7 +550,7 @@
             }
 
             final View divider = view.findViewById(
-                    com.android.settingslib.widget.R.id.two_target_divider);
+                    com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider);
             if (divider != null) {
                 divider.setVisibility(View.GONE);
             }
diff --git a/src/com/android/settings/wifi/tether/WifiTetherSsidPreference.java b/src/com/android/settings/wifi/tether/WifiTetherSsidPreference.java
index a9487a5..e5d3b3d 100644
--- a/src/com/android/settings/wifi/tether/WifiTetherSsidPreference.java
+++ b/src/com/android/settings/wifi/tether/WifiTetherSsidPreference.java
@@ -68,7 +68,7 @@
 
     private void initialize() {
         // TODO(b/129019971): use methods of divider line in parent object
-        setLayoutResource(com.android.settingslib.widget.R.layout.preference_two_target);
+        setLayoutResource(com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target);
         setWidgetLayoutResource(R.layout.wifi_button_preference_widget);
 
         mShareIconDrawable = getDrawable(R.drawable.ic_qrcode_24dp);
@@ -80,7 +80,7 @@
 
         final ImageButton shareButton = (ImageButton) holder.findViewById(R.id.button_icon);
         final View dividerView = holder.findViewById(
-                com.android.settingslib.widget.R.id.two_target_divider);
+                com.android.settingslib.widget.preference.twotarget.R.id.two_target_divider);
 
         if (mVisible) {
             shareButton.setOnClickListener(mClickListener);
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceControllerTest.java
index 111f634..5cf4d94 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceControllerTest.java
@@ -73,7 +73,7 @@
 
         final LayoutInflater inflater = LayoutInflater.from(mContext);
         final View view = inflater.inflate(
-                com.android.settingslib.widget.R.layout.preference_footer, null);
+                com.android.settingslib.widget.preference.footer.R.layout.preference_footer, null);
         mPreferenceViewHolder = PreferenceViewHolder.createInstanceForTests(view);
         mPreference.onBindViewHolder(mPreferenceViewHolder);
 
@@ -117,7 +117,7 @@
         mPreference.onBindViewHolder(mPreferenceViewHolder);
 
         final TextView learnMoreView = (TextView) mPreferenceViewHolder
-                .findViewById(com.android.settingslib.widget.R.id.settingslib_learn_more);
+                .findViewById(com.android.settingslib.widget.preference.footer.R.id.settingslib_learn_more);
         assertThat(learnMoreView.getContentDescription()).isNull();
         assertThat(learnMoreView.getVisibility()).isEqualTo(View.GONE);
         assertThat(mPreference.isLinkEnabled()).isFalse();
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceTest.java
index 6b55607..c4476769 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityFooterPreferenceTest.java
@@ -46,7 +46,7 @@
 
         final LayoutInflater inflater = LayoutInflater.from(context);
         final View view =
-                inflater.inflate(com.android.settingslib.widget.R.layout.preference_footer, null);
+                inflater.inflate(com.android.settingslib.widget.preference.footer.R.layout.preference_footer, null);
         mPreferenceViewHolder = PreferenceViewHolder.createInstanceForTests(view);
     }
 
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest.java
index 63243f2..b13d0e4 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest.java
@@ -112,7 +112,7 @@
         mPreference.setTitle(TEST_TITLE);
         LayoutInflater inflater = LayoutInflater.from(mContext);
         mHolder = PreferenceViewHolder.createInstanceForTests(inflater.inflate(
-                com.android.settingslib.widget.R.layout.preference_two_target, null));
+                com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target, null));
         LinearLayout mWidgetView = mHolder.itemView.findViewById(android.R.id.widget_frame);
         inflater.inflate(R.layout.preference_widget_primary_switch, mWidgetView, true);
         mPreference.onBindViewHolder(mHolder);
diff --git a/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceTest.java b/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceTest.java
index e960008..fac467d 100644
--- a/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceTest.java
@@ -69,7 +69,7 @@
         final View frame = mPreferenceViewHolder.findViewById(R.id.frame);
         final int backgroundResId = Shadows.shadowOf(frame.getBackground()).getCreatedFromResId();
         assertThat(backgroundResId).isEqualTo(
-                com.android.settingslib.widget.R.drawable.settingslib_switch_bar_bg_on);
+                com.android.settingslib.widget.mainswitch.R.drawable.settingslib_switch_bar_bg_on);
         final TextView title = (TextView) mPreferenceViewHolder.findViewById(android.R.id.title);
         assertThat(title.getAlpha()).isEqualTo(1f);
         assertThat(title.getCurrentTextColor()).isEqualTo(textColorEnabled);
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
index b3d1ff7..94d150d 100644
--- a/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/AccountHeaderPreferenceControllerTest.java
@@ -73,7 +73,7 @@
         FakeFeatureFactory.setupForTest();
         mHeaderPreference = new LayoutPreference(
                 RuntimeEnvironment.application,
-                com.android.settingslib.widget.R.layout.settings_entity_header);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header);
         doReturn(RuntimeEnvironment.application).when(mActivity).getApplicationContext();
         mLifecycleOwner = () -> mLifecycle;
         mLifecycle = new Lifecycle(mLifecycleOwner);
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 46eac83..922e2e8 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
@@ -80,7 +80,7 @@
         mLifecycleOwner = () -> mLifecycle;
         mLifecycle = new Lifecycle(mLifecycleOwner);
         mHeader = LayoutInflater.from(mContext).inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null);
 
         when(mFragment.getActivity()).thenReturn(mActivity);
         when(mScreen.findPreference(anyString())).thenReturn(mPreference);
diff --git a/tests/robotests/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceControllerTest.java
index aeef8ec..af13fa2 100644
--- a/tests/robotests/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceControllerTest.java
@@ -72,7 +72,7 @@
         final DomainAppPreference pref = new DomainAppPreference(mContext, mAppEntry);
 
         assertThat(pref.getLayoutResource())
-                .isEqualTo(com.android.settingslib.widget.R.layout.preference_app);
+                .isEqualTo(com.android.settingslib.widget.preference.app.R.layout.preference_app);
     }
 
     private ApplicationInfo createApplicationInfo(String packageName) {
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsButtonsControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsButtonsControllerTest.java
index a048f88..74a5bc9 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsButtonsControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsButtonsControllerTest.java
@@ -55,10 +55,10 @@
         super.setUp();
         final View buttons = View.inflate(
                 RuntimeEnvironment.application,
-                com.android.settingslib.widget.R.layout.settingslib_action_buttons,
+                com.android.settingslib.widget.preference.actionbuttons.R.layout.settingslib_action_buttons,
                 null /* parent */);
-        mConnectButton = buttons.findViewById(com.android.settingslib.widget.R.id.button2);
-        mForgetButton = buttons.findViewById(com.android.settingslib.widget.R.id.button1);
+        mConnectButton = buttons.findViewById(com.android.settingslib.widget.preference.actionbuttons.R.id.button2);
+        mForgetButton = buttons.findViewById(com.android.settingslib.widget.preference.actionbuttons.R.id.button1);
         mController =
                 new BluetoothDetailsButtonsController(mContext, mFragment, mCachedDevice,
                         mLifecycle);
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
index fcfe84b..cf9bf09 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
@@ -72,7 +72,7 @@
         mController =
             new BluetoothDetailsHeaderController(mContext, mFragment, mCachedDevice, mLifecycle);
         mPreference = new LayoutPreference(
-                mContext, com.android.settingslib.widget.R.layout.settings_entity_header);
+                mContext, com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header);
         mPreference.setKey(mController.getPreferenceKey());
         mScreen.addPreference(mPreference);
         setupDevice(mDeviceConfig);
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 43bf657..4fb78fb 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
@@ -94,7 +94,7 @@
         ShadowEntityHeaderController.setUseMock(mHeaderController);
         mDetailsHeaderController = new UsbDetailsHeaderController(mContext, mFragment, mUsbBackend);
         mPreference = new LayoutPreference(
-                mContext, com.android.settingslib.widget.R.layout.settings_entity_header);
+                mContext, com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header);
         mPreference.setKey(mDetailsHeaderController.getPreferenceKey());
         mScreen.addPreference(mPreference);
     }
diff --git a/tests/robotests/src/com/android/settings/datausage/AppDataUsagePreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/AppDataUsagePreferenceTest.java
index 0b182b8..7e6d314 100644
--- a/tests/robotests/src/com/android/settings/datausage/AppDataUsagePreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/AppDataUsagePreferenceTest.java
@@ -91,7 +91,7 @@
         mPreference = new AppDataUsagePreference(RuntimeEnvironment.application, mAppItem,
                 50 /* percent */, mUidDetailProvider);
         final View view = LayoutInflater.from(RuntimeEnvironment.application).inflate(
-                com.android.settingslib.widget.R.layout.preference_app, null);
+                com.android.settingslib.widget.preference.app.R.layout.preference_app, null);
         final PreferenceViewHolder preferenceViewHolder =
                 PreferenceViewHolder.createInstanceForTests(view);
         final ProgressBar progressBar = (ProgressBar) preferenceViewHolder.findViewById(
diff --git a/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceControllerTest.java
index 48b57a1..8aa2e5a 100644
--- a/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceControllerTest.java
@@ -141,7 +141,7 @@
                 assertThat(preference.isDisabledByAdmin()).isTrue();
                 assertThat(preference.getSummary()).isEqualTo(
                         mContext.getString(
-                                com.android.settingslib.widget.R.string.disabled_by_admin));
+                                com.android.settingslib.widget.restricted.R.string.disabled_by_admin));
             }
             assertThat(preference.isChecked()).isFalse();
             preference.performClick();
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
index b25b845..22509de 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
@@ -54,7 +54,7 @@
 
         mContext = RuntimeEnvironment.application;
         mRootView = LayoutInflater.from(mContext)
-                .inflate(com.android.settingslib.widget.R.layout.preference_app, null);
+                .inflate(com.android.settingslib.widget.preference.app.R.layout.preference_app, null);
         mWidgetView =
                 LayoutInflater.from(mContext).inflate(R.layout.preference_widget_summary, null);
         final LinearLayout widgetFrame = mRootView.findViewById(android.R.id.widget_frame);
@@ -64,7 +64,7 @@
 
         mPowerGaugePreference = new PowerGaugePreference(mContext);
         assertThat(mPowerGaugePreference.getLayoutResource())
-                .isEqualTo(com.android.settingslib.widget.R.layout.preference_app);
+                .isEqualTo(com.android.settingslib.widget.preference.app.R.layout.preference_app);
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/location/RecentLocationAccessPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/location/RecentLocationAccessPreferenceControllerTest.java
index 2955c88..e9284ee 100644
--- a/tests/robotests/src/com/android/settings/location/RecentLocationAccessPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/location/RecentLocationAccessPreferenceControllerTest.java
@@ -80,7 +80,7 @@
         mController.init(mDashboardFragment);
         final String key = mController.getPreferenceKey();
         mAppEntitiesHeaderView = LayoutInflater.from(mContext).inflate(
-                com.android.settingslib.widget.R.layout.app_entities_header, null /* root */);
+                com.android.settingslib.widget.entityheader.R.layout.app_entities_header, null /* root */);
         when(mScreen.findPreference(key)).thenReturn(mLayoutPreference);
         when(mLayoutPreference.getKey()).thenReturn(key);
         when(mLayoutPreference.getContext()).thenReturn(mContext);
@@ -109,7 +109,7 @@
         assertThat(title.getText()).isEqualTo(
                 mContext.getText(R.string.location_category_recent_location_access));
         final TextView details = mAppEntitiesHeaderView
-                .findViewById(com.android.settingslib.widget.R.id.header_details);
+                .findViewById(com.android.settingslib.widget.entityheader.R.id.header_details);
         assertThat(details.getText()).isEqualTo(
                 mContext.getText(R.string.location_recent_location_access_view_details));
         assertThat(details.hasOnClickListeners()).isTrue();
diff --git a/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java b/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
index 4dbd9eb..aecb3e7 100644
--- a/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
+++ b/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
@@ -74,7 +74,7 @@
 
         when(mHost.getActivity()).thenReturn(mActivity);
         when(mMenu.add(Menu.NONE, MENU_SEARCH, 0 /* order */,
-                com.android.settingslib.search.R.string.search_menu))
+                com.android.settingslib.search.widget.R.string.search_menu))
                 .thenReturn(mock(MenuItem.class));
     }
 
@@ -84,7 +84,7 @@
         mHost.getSettingsLifecycle().onCreateOptionsMenu(mMenu, null /* inflater */);
 
         verify(mMenu).add(Menu.NONE, MENU_SEARCH, 0 /* order */,
-                com.android.settingslib.search.R.string.search_menu);
+                com.android.settingslib.search.widget.R.string.search_menu);
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/widget/AppCheckBoxPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/AppCheckBoxPreferenceTest.java
index 5637b20..9c4e080 100644
--- a/tests/robotests/src/com/android/settings/widget/AppCheckBoxPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/AppCheckBoxPreferenceTest.java
@@ -45,15 +45,15 @@
         mAttrPreference = new AppCheckBoxPreference(mContext, null /* attrs */);
         mPreferenceViewHolder = PreferenceViewHolder.createInstanceForTests(
                 LayoutInflater.from(mContext)
-                        .inflate(com.android.settingslib.widget.R.layout.preference_app, null));
+                        .inflate(com.android.settingslib.widget.preference.app.R.layout.preference_app, null));
     }
 
     @Test
     public void testGetLayoutResource() {
         assertThat(mPreference.getLayoutResource())
-                .isEqualTo(com.android.settingslib.widget.R.layout.preference_app);
+                .isEqualTo(com.android.settingslib.widget.preference.app.R.layout.preference_app);
         assertThat(mAttrPreference.getLayoutResource())
-                .isEqualTo(com.android.settingslib.widget.R.layout.preference_app);
+                .isEqualTo(com.android.settingslib.widget.preference.app.R.layout.preference_app);
     }
 
     @Test
@@ -61,7 +61,7 @@
         mPreference.onBindViewHolder(mPreferenceViewHolder);
 
         View appendix =
-                mPreferenceViewHolder.findViewById(com.android.settingslib.widget.R.id.appendix);
+                mPreferenceViewHolder.findViewById(com.android.settingslib.widget.preference.app.R.id.appendix);
         assertThat(appendix.getVisibility()).isEqualTo(View.GONE);
     }
 }
diff --git a/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java b/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
index 834f3d1..06b99a4 100644
--- a/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/widget/EntityHeaderControllerTest.java
@@ -100,7 +100,7 @@
     @Test
     public void testBuildView_constructedWithView_shouldReturnSameView() {
         View inputView = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         mController = EntityHeaderController.newInstance(mActivity, mFragment, inputView);
         View view = mController.done();
 
@@ -111,11 +111,11 @@
     public void bindViews_shouldBindAllData() {
         final String testString = "test";
         final View header = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         final TextView label = header.findViewById(R.id.entity_header_title);
         final TextView summary = header.findViewById(R.id.entity_header_summary);
         final TextView secondSummary = header.findViewById(
-                com.android.settingslib.widget.R.id.entity_header_second_summary);
+                com.android.settingslib.widget.preference.layout.R.id.entity_header_second_summary);
 
         mController = EntityHeaderController.newInstance(mActivity, mFragment, header);
         mController.setLabel(testString);
@@ -139,7 +139,7 @@
         info.activityInfo.packageName = "123";
         info.activityInfo.name = "321";
         final View view = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         when(mActivity.getApplicationContext()).thenReturn(mContext);
 
         mController = EntityHeaderController.newInstance(mActivity, mFragment, view);
@@ -163,7 +163,7 @@
         info.activityInfo.packageName = "123";
         info.activityInfo.name = "321";
         final View view = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         when(mActivity.getApplicationContext()).thenReturn(mContext);
 
         mController = EntityHeaderController.newInstance(mActivity, mFragment, view);
@@ -180,7 +180,7 @@
     @Test
     public void bindButton_noAppInfo_shouldNotAttachClickListener() {
         final View appLinks = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         final FragmentActivity activity = mock(FragmentActivity.class);
         when(mFragment.getActivity()).thenReturn(activity);
 
@@ -197,7 +197,7 @@
         assertThat(appLinks.findViewById(android.R.id.button2).getVisibility())
                 .isEqualTo(View.GONE);
 
-        appLinks.findViewById(com.android.settingslib.widget.R.id.entity_header_content)
+        appLinks.findViewById(com.android.settingslib.widget.preference.layout.R.id.entity_header_content)
                 .performClick();
         verify(mFragment, never()).getActivity();
         verify(activity, never()).startActivity(any(Intent.class));
@@ -206,7 +206,7 @@
     @Test
     public void bindButton_hasAppInfo_shouldAttachClickListener() {
         final View appLinks = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         final FragmentActivity activity = mock(FragmentActivity.class);
         when(mFragment.getActivity()).thenReturn(activity);
         when(mContext.getString(eq(R.string.application_info_label))).thenReturn("App Info");
@@ -220,7 +220,7 @@
                         EntityHeaderController.ActionType.ACTION_NONE);
         mController.done();
 
-        appLinks.findViewById(com.android.settingslib.widget.R.id.entity_header_content)
+        appLinks.findViewById(com.android.settingslib.widget.preference.layout.R.id.entity_header_content)
                 .performClick();
         verify(activity)
                 .startActivityForResultAsUser(any(Intent.class), anyInt(), any(UserHandle.class));
@@ -229,7 +229,7 @@
     @Test
     public void iconContentDescription_shouldWorkWithSetIcon() {
         final View view = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         when(mFragment.getActivity()).thenReturn(mock(FragmentActivity.class));
         mController = EntityHeaderController.newInstance(mActivity, mFragment, view);
         String description = "Fake Description";
@@ -243,7 +243,7 @@
     @Test
     public void iconContentDescription_shouldWorkWithoutSetIcon() {
         final View view = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         when(mFragment.getActivity()).thenReturn(mock(FragmentActivity.class));
         mController = EntityHeaderController.newInstance(mActivity, mFragment, view);
         String description = "Fake Description";
@@ -256,7 +256,7 @@
     @Test
     public void bindButton_hasAppNotifIntent_shouldShowButton() {
         final View appLinks = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
 
         mController = EntityHeaderController.newInstance(mActivity, mFragment, appLinks);
         mController.setAppNotifPrefIntent(new Intent())
@@ -276,11 +276,11 @@
     @Test
     public void instantApps_normalAppsDontGetLabel() {
         final View header = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         mController = EntityHeaderController.newInstance(mActivity, mFragment, header);
         mController.done();
 
-        View installType = header.findViewById(com.android.settingslib.widget.R.id.install_type);
+        View installType = header.findViewById(com.android.settingslib.widget.preference.layout.R.id.install_type);
         assertThat(installType.getVisibility()).isEqualTo(View.GONE);
     }
 
@@ -288,11 +288,11 @@
     @Test
     public void instantApps_expectedHeaderItem() {
         final View header = mLayoutInflater.inflate(
-                com.android.settingslib.widget.R.layout.settings_entity_header, null /* root */);
+                com.android.settingslib.widget.preference.layout.R.layout.settings_entity_header, null /* root */);
         mController = EntityHeaderController.newInstance(mActivity, mFragment, header);
         mController.setIsInstantApp(true);
         mController.done();
-        TextView label = header.findViewById(com.android.settingslib.widget.R.id.install_type);
+        TextView label = header.findViewById(com.android.settingslib.widget.preference.layout.R.id.install_type);
 
         assertThat(label.getVisibility()).isEqualTo(View.VISIBLE);
         assertThat(label.getText()).isEqualTo(
diff --git a/tests/robotests/src/com/android/settings/widget/PrimaryCheckBoxPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/PrimaryCheckBoxPreferenceTest.java
index f3fa61e..2ed80e8 100644
--- a/tests/robotests/src/com/android/settings/widget/PrimaryCheckBoxPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/PrimaryCheckBoxPreferenceTest.java
@@ -126,7 +126,7 @@
         final LayoutInflater inflater = LayoutInflater.from(mContext);
         final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
                 inflater.inflate(
-                        com.android.settingslib.widget.R.layout.preference_two_target, null));
+                        com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target, null));
         final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
         assertThat(widgetView).isNotNull();
 
@@ -146,7 +146,7 @@
         final LayoutInflater inflater = LayoutInflater.from(mContext);
         final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
                 inflater.inflate(
-                        com.android.settingslib.widget.R.layout.preference_two_target, null));
+                        com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target, null));
         final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
         assertThat(widgetView).isNotNull();
 
@@ -163,7 +163,7 @@
     public void clickWidgetView_shouldNotifyPreferenceChanged() {
         final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
                 LayoutInflater.from(mContext).inflate(
-                        com.android.settingslib.widget.R.layout.preference_two_target, null));
+                        com.android.settingslib.widget.preference.twotarget.R.layout.preference_two_target, null));
         final View widgetView = holder.findViewById(android.R.id.widget_frame);
         final OnPreferenceChangeListener listener = mock(OnPreferenceChangeListener.class);
         mPreference.setOnPreferenceChangeListener(listener);
diff --git a/tests/robotests/src/com/android/settings/widget/SettingsMainSwitchPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/SettingsMainSwitchPreferenceTest.java
index c079029..d64d237 100644
--- a/tests/robotests/src/com/android/settings/widget/SettingsMainSwitchPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/SettingsMainSwitchPreferenceTest.java
@@ -53,7 +53,7 @@
         mPreference = new SettingsMainSwitchPreference(context);
         ReflectionHelpers.setField(mPreference, "mEnforcedAdmin", mEnforcedAdmin);
         ReflectionHelpers.setField(mPreference, "mMainSwitchBar", switchBar);
-        final View rootView = View.inflate(context, R.layout.preference_widget_main_switch,
+        final View rootView = View.inflate(context, com.android.settings.R.layout.preference_widget_main_switch,
                 null /* parent */);
         mHolder = PreferenceViewHolder.createInstanceForTests(rootView);
     }
@@ -64,7 +64,7 @@
 
         final SettingsMainSwitchBar switchBar = mPreference.getSwitchBar();
         final ImageView restrictedIcon = switchBar.findViewById(
-                com.android.settingslib.widget.R.id.restricted_icon);
+                com.android.settingslib.widget.restricted.R.id.restricted_icon);
 
         assertThat(restrictedIcon.getVisibility() == View.VISIBLE).isTrue();
     }