This page describes updates made to the Car UI library in each of the releases listed below.
car-ui-lib 2.6.0
New features
- Added a tap listener for the CarUiToolbarlogo.
Issues addressed
- Fixed an issue where CarUiToolbar's overflow dialog content would remain stale when making the updates through the plugin.
- Fixed an issue where CarUiRecyclerView's scrollbar was not visible because incorrect insets were applied.
- Fixed an issue when the plugin returned a null InsetsChangedListener.
- Added a check to enforce content rendered in AppStyledViewmust not useTheme.CarUi.
- Fixed default AppStyledViewpositioning in large landscape screens.
- Added customization of AppStyledViewbackground and dim amount.
- Added support for calls to AppStyledDialog#setContentView()afterAppStyledViewis shown.
Deprecated these methods:
- CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean), use- CarUi#InsetsChangedListener(Context, View, InsetsChangedListener, boolean)instead.
- CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean, boolean), use- CarUi#InsetsChangedListener(Context, View, InsetsChangedListener, boolean, boolean)instead.
car-ui-lib-plugin-apis 1.5.0
New features
- Added customization of CarUiToolbarlogo tap listener.
Deprecated these items:
- PluginFactoryOEMV6, use- PluginFactoryOEMV7instead.
- ToolbarControllerOEMV2, use- ToolbarControllerOEMV3instead.
car-ui-lib 2.5.1
Issues addressed
- Fixed a ProGuard issue that was preventing loading the car-ui-lib plugin.
- Fixed forward compatibility for plugins that would cause NPE at runtime.
- Enforce that car-ui-lib plugin has to be a system app.
- Fixed CarUiRecyclerViewnot showing scrollbar in some scenarios.
- Fixed selected tabs not updating when the plugin is used.
- Fixed issues with instantiating SearchViewwhen the plugin is used.
- Initialize Car service UX restriction state callback using Activity context for correct display configuration.
- Updated nullness annotations.
car-ui-lib 2.5.0
Issues addressed
- Optimized plugin startup time.
- Fixed an issue where apps were always returning 1 as max supported plugin version.
- Removed the overwriting of theme to force Theme.CarUifromAppStyledView.
- Added overridable method to set title on ListPreferenceFragment.
car-ui-lib-plugin-apis 1.4.0
New features
- Allow OEM customization of CarUiPreference.
Deprecated these items:
- PluginFactoryOEMV5, use- PluginFactoryOEMV6instead.
car-ui-lib 2.4.0
New features
- Added support for the transition to AppStyledView.
Issues addressed
- Updated AppStyledRecyclerViewAdapterto no longer be public.
- Provided a convenience method for context with optimization for
AppStyledDialogController.
- Moved the AppStyledViewNavIcondefinition toAppStyledDialogController.
- Removed forced overwriting of theme to Theme.CarUiinAppStyledView.
- Added transitions to support the rendering of AppStyledViewscreens.
- Added car_ui_recycler_view_no_scrollbarto the list of items that can be overlaid.
- Created a Gradle library for CarUiRecyclerViewespressoViewActionsandViewMatchers.
- Refactored the app-styled view to use ScrollView.
car-ui-lib-plugin-apis 1.3.0
New features
Deprecated these items:
- PluginFactoryOEMV4, use- PluginFactoryOEMV5instead.
- RecyclerViewOEMV1, use- RecyclerViewOEMV2instead.
- OnScrollListenerOEMV1, use- RecyclerViewOEMV2.OnScrollListenerOEMV2instead.
car-ui-lib 2.3.0
New features
Added new component:
- CarUiShortcutsPopup
Added support for the following scrollbar attributes:
- android:fadeScrollbars
- android:scrollbars
- android:scrollbarThumbVertical
- android:scrollbarTrackVertical
- android:scrollbarStyle
- android:scrollbarFadeDuration
- android:verticalScrollbarPosition
- android:requiresFadingEdge
Addressed issues
- Fixed - CarUiRecyclerView, which did not maintain position upon- Activityrecreation.
- Resolved bitmap serialization incompatibility between the client code and the IME service. 
- Enabled usage of - NavHostFragmentwith- PreferenceFragment.
car-ui-lib-plugin-apis 1.2.0
New features
Replaced usage of java.util.function interfaces with the following library
interfaces:
- com.android.car.ui.plugin.oemapis.BiConsumer
- com.android.car.ui.plugin.oemapis.Consumer
- com.android.car.ui.plugin.oemapis.Function
Deprecated these items:
- PluginFactoryOEMV3, use- PluginFactoryOEMV4instead.
- ToolbarControllerOEMV1, use- ToolbarControllerOEMV2instead.
- ContentListItemOEMV1, use- ContentListItemOEMV2instead.
- ImeSearchInterfaceOEMV1, use- ImeSearchInterfaceOEMV2instead.
Replaced the library implementation of nullness interfaces with implementations
of androidx.annotations.
car-ui-lib-plugin-apis 1.1.1
This release updates the minSdkVersion to 28.
car-ui-lib 2.2.1
This release:
- Introduces CarUiFooterPreference
- Updates the minSdkVersionto 28.
car-ui-lib-plugin-apis 1.1.0
This release:
- Deprecates AppStyledViewControllerOEMV1
- Introduces - AppStyledViewControllerOEMV2
- Incorporates changes from - AppStyledViewControllerOEMV1:- public abstract int getContentAreaHeight(); public abstract int getContentAreaWidth();
- Deprecates - PluginFactoryOEMV1and- PluginFactoryOEMV2
- Introduces the - PluginFactoryOEMV3interface.
car-ui-lib 2.1.0
This release:
- Adds - AppStyledViewclient APIs:- public int getContentAreaHeight(); public int getContentAreaWidth();
- Introduces - CarUiPrimarySwitchPreference
- Updates the - AppStyledDialogControllerconstructor to require- Activityinstead of- Context:- Adds: - public AppStyledDialogController(android.app.Activity);
- Deprecates: - public AppStyledDialogController(android.content.Context);
 
car-ui-lib-plugin-apis 1.0.1
This release adds nullness annotations.
car-ui-lib-plugin-apis 1.0.0
This release introduces support for the following car-ui-lib plugin APIs:
- AppStyledViewDialog
- CarUiRecyclerView
- CarUiToolbar
- CarUiListItems
car-ui-lib 2.0.0
This version, available on Google
Maven,
introduces car-ui-lib plugin support for these components:
- AppStyledViewDialog
- CarUiRecyclerView
- CarUiToolbar
- CarUiListItems
car-ui-lib 1.0.0
This release is available on AOSP for Android 12 and lower and provides support for:
- AppStyledViewDialog
- CarUiRecyclerView
- CarUiToolbar
- CarUiListItems
- Dialog
- Resource customization through runtime resource overlays (RROs)
- PreferencesFragment
- Rotary support
- WideScreenImeKeyboard