Make complyWithUxRestrictions() protected instead of package private.

This allows ListItem.ViewHolder to be extendable outside of the support
lib package.

Bug: 78643055
Test: ./gradlew car:connectedCheck
Change-Id: I23f64c37936a979db24d8568ad894141f0e518e3
diff --git a/car/api/current.txt b/car/api/current.txt
index 958a4be..5aa26ed 100644
--- a/car/api/current.txt
+++ b/car/api/current.txt
@@ -231,6 +231,7 @@
     ctor public ListItem.ViewHolder(android.view.View);
     method public final void addCleanUp(androidx.car.widget.ListItem.ViewBinder<androidx.car.widget.ListItem.ViewHolder>);
     method public final void cleanUp();
+    method protected abstract void complyWithUxRestrictions(android.car.drivingstate.CarUxRestrictions);
   }
 
   public class ListItemAdapter extends androidx.recyclerview.widget.RecyclerView.Adapter implements androidx.car.widget.PagedListView.DividerVisibilityManager androidx.car.widget.PagedListView.ItemCap {
@@ -394,6 +395,7 @@
 
   public static class SeekbarListItem.ViewHolder extends androidx.car.widget.ListItem.ViewHolder {
     ctor public SeekbarListItem.ViewHolder(android.view.View);
+    method protected void complyWithUxRestrictions(android.car.drivingstate.CarUxRestrictions);
     method public android.widget.RelativeLayout getContainerLayout();
     method public android.widget.ImageView getPrimaryIcon();
     method public android.widget.SeekBar getSeekBar();
@@ -421,6 +423,7 @@
 
   public static class SubheaderListItem.ViewHolder extends androidx.car.widget.ListItem.ViewHolder {
     ctor public SubheaderListItem.ViewHolder(android.view.View);
+    method protected void complyWithUxRestrictions(android.car.drivingstate.CarUxRestrictions);
     method public android.widget.TextView getText();
   }
 
@@ -450,6 +453,7 @@
 
   public static class TextListItem.ViewHolder extends androidx.car.widget.ListItem.ViewHolder {
     ctor public TextListItem.ViewHolder(android.view.View);
+    method protected void complyWithUxRestrictions(android.car.drivingstate.CarUxRestrictions);
     method public android.widget.Button getAction1();
     method public android.view.View getAction1Divider();
     method public android.widget.Button getAction2();
diff --git a/car/src/main/java/androidx/car/widget/ListItem.java b/car/src/main/java/androidx/car/widget/ListItem.java
index 8103dd5..54a863f 100644
--- a/car/src/main/java/androidx/car/widget/ListItem.java
+++ b/car/src/main/java/androidx/car/widget/ListItem.java
@@ -3,16 +3,16 @@
 import android.car.drivingstate.CarUxRestrictions;
 import android.view.View;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.function.Function;
-
 import androidx.annotation.CallSuper;
 import androidx.annotation.Nullable;
 import androidx.annotation.StyleRes;
 import androidx.car.R;
 import androidx.recyclerview.widget.RecyclerView;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.function.Function;
+
 /**
  * Definition of items that can be inserted into {@link ListItemAdapter}.
  *
@@ -252,6 +252,6 @@
          *
          * @param restrictions current car UX restrictions.
          */
-        abstract void complyWithUxRestrictions(CarUxRestrictions restrictions);
+        protected abstract void complyWithUxRestrictions(CarUxRestrictions restrictions);
     }
 }
diff --git a/car/src/main/java/androidx/car/widget/SeekbarListItem.java b/car/src/main/java/androidx/car/widget/SeekbarListItem.java
index 862c273..b6477c1 100644
--- a/car/src/main/java/androidx/car/widget/SeekbarListItem.java
+++ b/car/src/main/java/androidx/car/widget/SeekbarListItem.java
@@ -535,7 +535,7 @@
         }
 
         @Override
-        void complyWithUxRestrictions(CarUxRestrictions restrictions) {
+        protected void complyWithUxRestrictions(CarUxRestrictions restrictions) {
             CarUxRestrictionsUtils.comply(itemView.getContext(), restrictions, getText());
         }
 
diff --git a/car/src/main/java/androidx/car/widget/SubheaderListItem.java b/car/src/main/java/androidx/car/widget/SubheaderListItem.java
index 8724696..e1a371a 100644
--- a/car/src/main/java/androidx/car/widget/SubheaderListItem.java
+++ b/car/src/main/java/androidx/car/widget/SubheaderListItem.java
@@ -16,6 +16,8 @@
 
 package androidx.car.widget;
 
+import static java.lang.annotation.RetentionPolicy.SOURCE;
+
 import android.car.drivingstate.CarUxRestrictions;
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -23,15 +25,16 @@
 import android.view.ViewGroup;
 import android.widget.TextView;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import androidx.annotation.DimenRes;
 import androidx.annotation.IntDef;
 import androidx.annotation.StyleRes;
 import androidx.car.R;
 import androidx.car.utils.CarUxRestrictionsUtils;
 
+import java.lang.annotation.Retention;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * Class to build a sub-header list item.
  *
@@ -72,6 +75,7 @@
     @IntDef({
             TEXT_START_MARGIN_TYPE_NONE, TEXT_START_MARGIN_TYPE_LARGE,
             TEXT_START_MARGIN_TYPE_SMALL})
+    @Retention(SOURCE)
     public @interface TextStartMarginType {}
 
     /**
@@ -191,7 +195,7 @@
          * @param restrictions current car UX restrictions.
          */
         @Override
-        void complyWithUxRestrictions(CarUxRestrictions restrictions) {
+        protected void complyWithUxRestrictions(CarUxRestrictions restrictions) {
             CarUxRestrictionsUtils.comply(itemView.getContext(), restrictions, getText());
         }
 
diff --git a/car/src/main/java/androidx/car/widget/TextListItem.java b/car/src/main/java/androidx/car/widget/TextListItem.java
index 3681d3e..0b28b62 100644
--- a/car/src/main/java/androidx/car/widget/TextListItem.java
+++ b/car/src/main/java/androidx/car/widget/TextListItem.java
@@ -16,6 +16,8 @@
 
 package androidx.car.widget;
 
+import static java.lang.annotation.RetentionPolicy.SOURCE;
+
 import android.car.drivingstate.CarUxRestrictions;
 import android.content.Context;
 import android.content.res.Resources;
@@ -30,10 +32,6 @@
 import android.widget.Switch;
 import android.widget.TextView;
 
-import java.lang.annotation.Retention;
-import java.util.ArrayList;
-import java.util.List;
-
 import androidx.annotation.DrawableRes;
 import androidx.annotation.IdRes;
 import androidx.annotation.IntDef;
@@ -42,7 +40,9 @@
 import androidx.car.utils.CarUxRestrictionsUtils;
 import androidx.recyclerview.widget.RecyclerView;
 
-import static java.lang.annotation.RetentionPolicy.SOURCE;
+import java.lang.annotation.Retention;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * Class to build a list item of text.
@@ -868,7 +868,7 @@
          * @param restrictions current car UX restrictions.
          */
         @Override
-        void complyWithUxRestrictions(CarUxRestrictions restrictions) {
+        protected void complyWithUxRestrictions(CarUxRestrictions restrictions) {
             CarUxRestrictionsUtils.comply(itemView.getContext(), restrictions, getBody());
         }