Merge "Cleans up @RestrictTo usages and removes some never-used attrs" into androidx-master-dev
diff --git a/preference/api/res-1.1.0-alpha04.txt b/preference/api/res-1.1.0-alpha04.txt
index f55c31a..3afd07c 100644
--- a/preference/api/res-1.1.0-alpha04.txt
+++ b/preference/api/res-1.1.0-alpha04.txt
@@ -42,22 +42,15 @@
 attr orderingFromXml
 attr persistent
 attr positiveButtonText
-attr preferenceActivityStyle
 attr preferenceCategoryStyle
 attr preferenceCategoryTitleTextAppearance
 attr preferenceFragmentCompatStyle
 attr preferenceFragmentListStyle
-attr preferenceFragmentPaddingSide
 attr preferenceFragmentStyle
-attr preferenceHeaderPanelStyle
 attr preferenceInformationStyle
-attr preferenceLayoutChild
-attr preferenceListStyle
-attr preferencePanelStyle
 attr preferenceScreenStyle
 attr preferenceStyle
 attr preferenceTheme
-attr ringtonePreferenceStyle
 attr seekBarIncrement
 attr seekBarPreferenceStyle
 attr selectable
@@ -74,4 +67,3 @@
 attr switchTextOn
 attr title
 attr widgetLayout
-attr yesNoPreferenceStyle
diff --git a/preference/build.gradle b/preference/build.gradle
index 3eed07a..a92b105 100644
--- a/preference/build.gradle
+++ b/preference/build.gradle
@@ -23,8 +23,10 @@
 }
 
 dependencies {
-    api(project(":annotation"))
+    // TODO: change to alpha02 after release
+    implementation(project(":annotation"))
     api("androidx.appcompat:appcompat:1.1.0-alpha02")
+    // TODO: change to alpha05 after release
     api(project(":core"))
     implementation("androidx.collection:collection:1.0.0")
     api("androidx.fragment:fragment:1.1.0-alpha04")
diff --git a/preference/res-public/values/public_attrs.xml b/preference/res-public/values/public_attrs.xml
index a12c6cc..ed1d2f9 100644
--- a/preference/res-public/values/public_attrs.xml
+++ b/preference/res-public/values/public_attrs.xml
@@ -47,22 +47,15 @@
     <public type="attr" name="orderingFromXml" />
     <public type="attr" name="persistent" />
     <public type="attr" name="positiveButtonText" />
-    <public type="attr" name="preferenceActivityStyle" />
     <public type="attr" name="preferenceCategoryStyle" />
     <public type="attr" name="preferenceCategoryTitleTextAppearance" />
     <public type="attr" name="preferenceFragmentCompatStyle" />
     <public type="attr" name="preferenceFragmentListStyle" />
-    <public type="attr" name="preferenceFragmentPaddingSide" />
     <public type="attr" name="preferenceFragmentStyle" />
-    <public type="attr" name="preferenceHeaderPanelStyle" />
     <public type="attr" name="preferenceInformationStyle" />
-    <public type="attr" name="preferenceLayoutChild" />
-    <public type="attr" name="preferenceListStyle" />
-    <public type="attr" name="preferencePanelStyle" />
     <public type="attr" name="preferenceScreenStyle" />
     <public type="attr" name="preferenceStyle" />
     <public type="attr" name="preferenceTheme" />
-    <public type="attr" name="ringtonePreferenceStyle" />
     <public type="attr" name="seekBarIncrement" />
     <public type="attr" name="seekBarPreferenceStyle" />
     <public type="attr" name="selectable" />
@@ -79,5 +72,4 @@
     <public type="attr" name="switchTextOn" />
     <public type="attr" name="title" />
     <public type="attr" name="widgetLayout" />
-    <public type="attr" name="yesNoPreferenceStyle" />
 </resources>
diff --git a/preference/res/values/attrs.xml b/preference/res/values/attrs.xml
index 50aac79..63540d5 100644
--- a/preference/res/values/attrs.xml
+++ b/preference/res/values/attrs.xml
@@ -33,8 +33,6 @@
 
         <!-- Default style for PreferenceScreen. -->
         <attr name="preferenceScreenStyle" format="reference" />
-        <!-- Default style for the PreferenceActivity. -->
-        <attr name="preferenceActivityStyle" format="reference" />
         <!-- Default style for Headers pane in PreferenceActivity. -->
         <attr name="preferenceFragmentStyle" format="reference" />
         <!-- Default style for Headers pane in PreferenceActivity. -->
@@ -47,28 +45,14 @@
         <attr name="preferenceInformationStyle" format="reference" />
         <!-- Default style for CheckBoxPreference. -->
         <attr name="checkBoxPreferenceStyle" format="reference" />
-        <!-- Default style for YesNoPreference. -->
-        <attr name="yesNoPreferenceStyle" format="reference" />
         <!-- Default style for DialogPreference. -->
         <attr name="dialogPreferenceStyle" format="reference" />
         <!-- Default style for EditTextPreference. -->
         <attr name="editTextPreferenceStyle" format="reference" />
-        <!-- Default style for RingtonePreference. -->
-        <attr name="ringtonePreferenceStyle" format="reference" />
         <!-- Default style for DropDownPreference. -->
         <attr name="dropdownPreferenceStyle" format="reference" />
-        <!-- The preference layout that has the child/tabbed effect. -->
-        <attr name="preferenceLayoutChild" format="reference" />
-        <!-- Preference panel style -->
-        <attr name="preferencePanelStyle" format="reference" />
-        <!-- Preference headers panel style -->
-        <attr name="preferenceHeaderPanelStyle" format="reference" />
-        <!-- Preference list style -->
-        <attr name="preferenceListStyle" format="reference" />
         <!-- Preference fragment list style -->
         <attr name="preferenceFragmentListStyle" format="reference" />
-        <!-- Preference fragment padding side -->
-        <attr name="preferenceFragmentPaddingSide" format="dimension" />
         <!-- Default style for switch preferences. -->
         <attr name="switchPreferenceStyle" format="reference" />
         <!-- Default style for switch compat preferences. -->
diff --git a/preference/src/main/java/androidx/preference/AndroidResources.java b/preference/src/main/java/androidx/preference/AndroidResources.java
index 8e12be3..18f3003 100644
--- a/preference/src/main/java/androidx/preference/AndroidResources.java
+++ b/preference/src/main/java/androidx/preference/AndroidResources.java
@@ -16,23 +16,24 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
+
+import android.annotation.SuppressLint;
 
 import androidx.annotation.RestrictTo;
 
 /**
+ * Utility class for attributes unavailable on older APIs
  * @hide
  */
-@RestrictTo(LIBRARY_GROUP_PREFIX)
+@RestrictTo(LIBRARY)
+@SuppressLint("InlinedApi")
 public class AndroidResources {
 
     public static final int ANDROID_R_ICON_FRAME = android.R.id.icon_frame;
-    public static final int ANDROID_R_LIST_CONTAINER = android.R.id.list_container;
-    public static final int ANDROID_R_SWITCH_WIDGET = android.R.id.switch_widget;
-    public static final int ANDROID_R_PREFERENCE_FRAGMENT_STYLE
-            = android.R.attr.preferenceFragmentStyle;
-    public static final int ANDROID_R_EDITTEXT_PREFERENCE_STYLE
-            = android.R.attr.editTextPreferenceStyle;
+    static final int ANDROID_R_LIST_CONTAINER = android.R.id.list_container;
+    static final int ANDROID_R_SWITCH_WIDGET = android.R.id.switch_widget;
+    static final int ANDROID_R_PREFERENCE_FRAGMENT_STYLE = android.R.attr.preferenceFragmentStyle;
 
     private AndroidResources() {}
 }
diff --git a/preference/src/main/java/androidx/preference/CheckBoxPreference.java b/preference/src/main/java/androidx/preference/CheckBoxPreference.java
index bfd13c4..11168ec 100644
--- a/preference/src/main/java/androidx/preference/CheckBoxPreference.java
+++ b/preference/src/main/java/androidx/preference/CheckBoxPreference.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -84,7 +84,7 @@
     /**
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     @Override
     protected void performClick(View view) {
         super.performClick(view);
diff --git a/preference/src/main/java/androidx/preference/DropDownPreference.java b/preference/src/main/java/androidx/preference/DropDownPreference.java
index ad9fbf5..45d0357 100644
--- a/preference/src/main/java/androidx/preference/DropDownPreference.java
+++ b/preference/src/main/java/androidx/preference/DropDownPreference.java
@@ -16,8 +16,6 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
-
 import android.content.Context;
 import android.util.AttributeSet;
 import android.view.View;
@@ -27,7 +25,6 @@
 import android.widget.Spinner;
 
 import androidx.annotation.NonNull;
-import androidx.annotation.RestrictTo;
 
 /**
  * A {@link ListPreference} that presents the options in a drop down menu rather than a dialog.
@@ -116,22 +113,6 @@
         setValue(getEntryValues()[index].toString());
     }
 
-    /**
-     * @hide
-     */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
-    public int findSpinnerIndexOfValue(String value) {
-        CharSequence[] entryValues = getEntryValues();
-        if (value != null && entryValues != null) {
-            for (int i = entryValues.length - 1; i >= 0; i--) {
-                if (entryValues[i].equals(value)) {
-                    return i;
-                }
-            }
-        }
-        return Spinner.INVALID_POSITION;
-    }
-
     @Override
     protected void notifyChanged() {
         super.notifyChanged();
@@ -150,5 +131,17 @@
         mSpinner.setSelection(findSpinnerIndexOfValue(getValue()));
         super.onBindViewHolder(view);
     }
+
+    private int findSpinnerIndexOfValue(String value) {
+        CharSequence[] entryValues = getEntryValues();
+        if (value != null && entryValues != null) {
+            for (int i = entryValues.length - 1; i >= 0; i--) {
+                if (entryValues[i].equals(value)) {
+                    return i;
+                }
+            }
+        }
+        return Spinner.INVALID_POSITION;
+    }
 }
 
diff --git a/preference/src/main/java/androidx/preference/EditTextPreference.java b/preference/src/main/java/androidx/preference/EditTextPreference.java
index 7836c4b..b597f0c 100644
--- a/preference/src/main/java/androidx/preference/EditTextPreference.java
+++ b/preference/src/main/java/androidx/preference/EditTextPreference.java
@@ -60,7 +60,7 @@
 
     public EditTextPreference(Context context, AttributeSet attrs) {
         this(context, attrs, TypedArrayUtils.getAttr(context, R.attr.editTextPreferenceStyle,
-                AndroidResources.ANDROID_R_EDITTEXT_PREFERENCE_STYLE));
+                android.R.attr.editTextPreferenceStyle));
     }
 
     public EditTextPreference(Context context) {
diff --git a/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragment.java b/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragment.java
index 8deaabb..016e361 100644
--- a/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragment.java
+++ b/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragment.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.os.Bundle;
 import android.view.View;
@@ -94,7 +94,7 @@
     }
 
     /** @hide */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     @Override
     protected boolean needInputMethod() {
         // We want the input method to show, if possible, when dialog is displayed
diff --git a/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragmentCompat.java b/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragmentCompat.java
index 6e197f3..b926000 100644
--- a/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragmentCompat.java
+++ b/preference/src/main/java/androidx/preference/EditTextPreferenceDialogFragmentCompat.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.os.Bundle;
 import android.view.View;
@@ -83,7 +83,7 @@
     }
 
     /** @hide */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     @Override
     protected boolean needInputMethod() {
         // We want the input method to show, if possible, when dialog is displayed
diff --git a/preference/src/main/java/androidx/preference/ExpandButton.java b/preference/src/main/java/androidx/preference/ExpandButton.java
index 1e185a7..b2a6b57 100644
--- a/preference/src/main/java/androidx/preference/ExpandButton.java
+++ b/preference/src/main/java/androidx/preference/ExpandButton.java
@@ -16,13 +16,9 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY;
-
 import android.content.Context;
 import android.text.TextUtils;
 
-import androidx.annotation.RestrictTo;
-
 import java.util.ArrayList;
 import java.util.List;
 
@@ -32,7 +28,6 @@
  *
  * @hide
  */
-@RestrictTo(LIBRARY)
 final class ExpandButton extends Preference {
     private long mId;
 
diff --git a/preference/src/main/java/androidx/preference/Preference.java b/preference/src/main/java/androidx/preference/Preference.java
index 8ac775d..9530747 100644
--- a/preference/src/main/java/androidx/preference/Preference.java
+++ b/preference/src/main/java/androidx/preference/Preference.java
@@ -16,7 +16,6 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
 
 import android.content.ClipData;
@@ -1141,6 +1140,7 @@
     }
 
     /**
+     * Used by Settings.
      * @hide
      */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
@@ -1151,6 +1151,7 @@
     /**
      * Called when a click should be performed.
      *
+     * Used by Settings.
      * @hide
      */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
@@ -1295,6 +1296,8 @@
     /**
      * Called from {@link PreferenceGroup} to pass in an ID for reuse.
      *
+     * Used by Settings.
+     *
      * @hide
      */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
@@ -1349,21 +1352,15 @@
     /**
      * Returns true if {@link #onDetached()} was called. Used for handling the case when a
      * preference was removed, modified, and re-added to a {@link PreferenceGroup}.
-     *
-     * @hide
      */
-    @RestrictTo(LIBRARY)
-    public final boolean wasDetached() {
+    final boolean wasDetached() {
         return mWasDetached;
     }
 
     /**
      * Clears the {@link #wasDetached()} status.
-     *
-     * @hide
      */
-    @RestrictTo(LIBRARY)
-    public final void clearWasDetached() {
+    final void clearWasDetached() {
         mWasDetached = false;
     }
 
diff --git a/preference/src/main/java/androidx/preference/PreferenceDialogFragment.java b/preference/src/main/java/androidx/preference/PreferenceDialogFragment.java
index ca73bd2..d5ce88f 100644
--- a/preference/src/main/java/androidx/preference/PreferenceDialogFragment.java
+++ b/preference/src/main/java/androidx/preference/PreferenceDialogFragment.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.app.AlertDialog;
 import android.app.Dialog;
@@ -217,7 +217,7 @@
      *
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     protected boolean needInputMethod() {
         return false;
     }
diff --git a/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java b/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java
index c5ceb93..8877f1b 100644
--- a/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java
+++ b/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.app.Dialog;
 import android.content.Context;
@@ -198,7 +198,7 @@
      *
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     protected boolean needInputMethod() {
         return false;
     }
diff --git a/preference/src/main/java/androidx/preference/PreferenceFragment.java b/preference/src/main/java/androidx/preference/PreferenceFragment.java
index 871bde9..50ab41d 100644
--- a/preference/src/main/java/androidx/preference/PreferenceFragment.java
+++ b/preference/src/main/java/androidx/preference/PreferenceFragment.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.app.DialogFragment;
 import android.app.Fragment;
@@ -514,11 +514,11 @@
     }
 
     /** @hide */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     protected void onBindPreferences() {}
 
     /** @hide */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     protected void onUnbindPreferences() {}
 
     /**
@@ -645,7 +645,7 @@
      * @return The {@link Fragment} to possibly use as a callback
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     public Fragment getCallbackFragment() {
         return null;
     }
diff --git a/preference/src/main/java/androidx/preference/PreferenceFragmentCompat.java b/preference/src/main/java/androidx/preference/PreferenceFragmentCompat.java
index cd12ba6..f490c55 100644
--- a/preference/src/main/java/androidx/preference/PreferenceFragmentCompat.java
+++ b/preference/src/main/java/androidx/preference/PreferenceFragmentCompat.java
@@ -495,11 +495,17 @@
         onUnbindPreferences();
     }
 
-    /** @hide */
+    /**
+     * Used by Settings.
+     * @hide
+     */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
     protected void onBindPreferences() {}
 
-    /** @hide */
+    /**
+     * Used by Settings.
+     * @hide
+     */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
     protected void onUnbindPreferences() {}
 
diff --git a/preference/src/main/java/androidx/preference/PreferenceGroup.java b/preference/src/main/java/androidx/preference/PreferenceGroup.java
index 491c52b..90850b5 100644
--- a/preference/src/main/java/androidx/preference/PreferenceGroup.java
+++ b/preference/src/main/java/androidx/preference/PreferenceGroup.java
@@ -16,6 +16,7 @@
 
 package androidx.preference;
 
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
 
 import android.content.Context;
@@ -404,7 +405,7 @@
      *
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     public boolean isAttached() {
         return mAttachedToHierarchy;
     }
@@ -412,6 +413,8 @@
     /**
      * Sets the callback to be invoked when the expand button is clicked.
      *
+     * Used by Settings.
+     *
      * @param onExpandButtonClickListener The callback to be invoked
      * @see #setInitialExpandedChildrenCount(int)
      * @hide
@@ -425,6 +428,8 @@
     /**
      * Returns the callback to be invoked when the expand button is clicked.
      *
+     * Used by Settings.
+     *
      * @return The callback to be invoked when the expand button is clicked.
      * @hide
      */
@@ -550,6 +555,9 @@
 
     /**
      * Definition for a callback to be invoked when the expand button is clicked.
+     *
+     * Used by Settings.
+     *
      * @see #setInitialExpandedChildrenCount(int)
      * @hide
      */
diff --git a/preference/src/main/java/androidx/preference/PreferenceGroupAdapter.java b/preference/src/main/java/androidx/preference/PreferenceGroupAdapter.java
index 6cb7178..9509103 100644
--- a/preference/src/main/java/androidx/preference/PreferenceGroupAdapter.java
+++ b/preference/src/main/java/androidx/preference/PreferenceGroupAdapter.java
@@ -40,6 +40,8 @@
  * An adapter that connects a {@link RecyclerView} to the {@link Preference}s contained in
  * an associated {@link PreferenceGroup}.
  *
+ * Used by Settings.
+ *
  * @hide
  */
 @RestrictTo(LIBRARY_GROUP_PREFIX)
diff --git a/preference/src/main/java/androidx/preference/PreferenceManager.java b/preference/src/main/java/androidx/preference/PreferenceManager.java
index 7ce4b59..23205d7a 100644
--- a/preference/src/main/java/androidx/preference/PreferenceManager.java
+++ b/preference/src/main/java/androidx/preference/PreferenceManager.java
@@ -96,6 +96,8 @@
     private OnNavigateToScreenListener mOnNavigateToScreenListener;
 
     /**
+     * Used by Settings.
+     *
      * @hide
      */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
@@ -195,6 +197,8 @@
      * Inflates a preference hierarchy from XML. If a preference hierarchy is given, the new
      * preference hierarchies will be merged in.
      *
+     * Used by Settings.
+     *
      * @param context         The context of the resource
      * @param resId           The resource ID of the XML to inflate
      * @param rootPreferences Optional existing hierarchy to merge the new
diff --git a/preference/src/main/java/androidx/preference/PreferenceRecyclerViewAccessibilityDelegate.java b/preference/src/main/java/androidx/preference/PreferenceRecyclerViewAccessibilityDelegate.java
index 973c0ac..d5847c3 100644
--- a/preference/src/main/java/androidx/preference/PreferenceRecyclerViewAccessibilityDelegate.java
+++ b/preference/src/main/java/androidx/preference/PreferenceRecyclerViewAccessibilityDelegate.java
@@ -21,6 +21,7 @@
 import android.os.Bundle;
 import android.view.View;
 
+import androidx.annotation.NonNull;
 import androidx.annotation.RestrictTo;
 import androidx.core.view.AccessibilityDelegateCompat;
 import androidx.core.view.accessibility.AccessibilityNodeInfoCompat;
@@ -31,12 +32,16 @@
  * The accessibility delegate used by the {@link RecyclerView} that displays views for
  * {@link Preference}s.
  *
+ * Used by Leanback.
+ *
  * @hide
  */
 @RestrictTo(LIBRARY_GROUP_PREFIX)
 public class PreferenceRecyclerViewAccessibilityDelegate
         extends RecyclerViewAccessibilityDelegate {
+    @SuppressWarnings("WeakerAccess") /* synthetic access */
     final RecyclerView mRecyclerView;
+    @SuppressWarnings("WeakerAccess") /* synthetic access */
     final AccessibilityDelegateCompat mDefaultItemDelegate = super.getItemDelegate();
 
     public PreferenceRecyclerViewAccessibilityDelegate(RecyclerView recyclerView) {
@@ -44,11 +49,12 @@
         mRecyclerView = recyclerView;
     }
 
+    @NonNull
     @Override
     public AccessibilityDelegateCompat getItemDelegate() {
         return mItemDelegate;
     }
-
+    @SuppressWarnings("WeakerAccess") /* synthetic access */
     final AccessibilityDelegateCompat mItemDelegate = new AccessibilityDelegateCompat() {
         @Override
         public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
diff --git a/preference/src/main/java/androidx/preference/PreferenceScreen.java b/preference/src/main/java/androidx/preference/PreferenceScreen.java
index b8581e8..ba01728 100644
--- a/preference/src/main/java/androidx/preference/PreferenceScreen.java
+++ b/preference/src/main/java/androidx/preference/PreferenceScreen.java
@@ -44,6 +44,8 @@
     /**
      * Do NOT use this constructor, use {@link PreferenceManager#createPreferenceScreen(Context)}.
      *
+     * Used by Settings :)
+     *
      * @hide
      */
     @RestrictTo(LIBRARY_GROUP_PREFIX)
diff --git a/preference/src/main/java/androidx/preference/SwitchPreference.java b/preference/src/main/java/androidx/preference/SwitchPreference.java
index d668d1c..0c94255 100644
--- a/preference/src/main/java/androidx/preference/SwitchPreference.java
+++ b/preference/src/main/java/androidx/preference/SwitchPreference.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -189,7 +189,7 @@
     /**
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     @Override
     protected void performClick(View view) {
         super.performClick(view);
diff --git a/preference/src/main/java/androidx/preference/SwitchPreferenceCompat.java b/preference/src/main/java/androidx/preference/SwitchPreferenceCompat.java
index e150346..11318dd 100644
--- a/preference/src/main/java/androidx/preference/SwitchPreferenceCompat.java
+++ b/preference/src/main/java/androidx/preference/SwitchPreferenceCompat.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -187,7 +187,7 @@
     /**
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     @Override
     protected void performClick(View view) {
         super.performClick(view);
diff --git a/preference/src/main/java/androidx/preference/TwoStatePreference.java b/preference/src/main/java/androidx/preference/TwoStatePreference.java
index 84a43fd..f1e4a59 100644
--- a/preference/src/main/java/androidx/preference/TwoStatePreference.java
+++ b/preference/src/main/java/androidx/preference/TwoStatePreference.java
@@ -16,7 +16,7 @@
 
 package androidx.preference;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -215,7 +215,7 @@
     /**
      * @hide
      */
-    @RestrictTo(LIBRARY_GROUP_PREFIX)
+    @RestrictTo(LIBRARY)
     protected void syncSummaryView(View view) {
         if (!(view instanceof TextView)) {
             return;
diff --git a/preference/src/main/java/androidx/preference/UnPressableLinearLayout.java b/preference/src/main/java/androidx/preference/UnPressableLinearLayout.java
index 2a8d4fb..75eba63 100644
--- a/preference/src/main/java/androidx/preference/UnPressableLinearLayout.java
+++ b/preference/src/main/java/androidx/preference/UnPressableLinearLayout.java
@@ -29,6 +29,8 @@
  * By default, the pressed state is propagated to all the children that are not clickable
  * or long-clickable.
  *
+ * Used by Leanback and Car.
+ *
  * @hide
  */
 @RestrictTo(LIBRARY_GROUP_PREFIX)
diff --git a/preference/src/main/java/androidx/preference/internal/PreferenceImageView.java b/preference/src/main/java/androidx/preference/internal/PreferenceImageView.java
index 3e7c445..12c5758 100644
--- a/preference/src/main/java/androidx/preference/internal/PreferenceImageView.java
+++ b/preference/src/main/java/androidx/preference/internal/PreferenceImageView.java
@@ -30,6 +30,8 @@
 /**
  * Extension of {@link ImageView} that correctly applies maxWidth and maxHeight.
  *
+ * Used by Car.
+ *
  * @hide
  */
 @RestrictTo(LIBRARY_GROUP_PREFIX)
diff --git a/preference/src/main/java/androidx/preference/internal/package-info.java b/preference/src/main/java/androidx/preference/internal/package-info.java
index 70347da..9b46f97 100644
--- a/preference/src/main/java/androidx/preference/internal/package-info.java
+++ b/preference/src/main/java/androidx/preference/internal/package-info.java
@@ -17,9 +17,9 @@
 /**
  * @hide
  */
-@RestrictTo(LIBRARY_GROUP_PREFIX)
+@RestrictTo(LIBRARY)
 package androidx.preference.internal;
 
-import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX;
+import static androidx.annotation.RestrictTo.Scope.LIBRARY;
 
 import androidx.annotation.RestrictTo;
\ No newline at end of file