Prefix all toolbar ids with car_ui_toolbar
Fixes: 142264232
Test: Manually
Change-Id: I445103406f096d296b175141bdb0475ca4cc08c8
diff --git a/car-ui-lib/res/color/car_ui_tab_item_selector.xml b/car-ui-lib/res/color/car_ui_toolbar_tab_item_selector.xml
similarity index 81%
rename from car-ui-lib/res/color/car_ui_tab_item_selector.xml
rename to car-ui-lib/res/color/car_ui_toolbar_tab_item_selector.xml
index c9c8d8d..b2ec68a 100644
--- a/car-ui-lib/res/color/car_ui_tab_item_selector.xml
+++ b/car-ui-lib/res/color/car_ui_toolbar_tab_item_selector.xml
@@ -16,6 +16,6 @@
-->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:color="@color/car_ui_tab_selected_color" android:state_selected="true"/>
- <item android:color="@color/car_ui_tab_unselected_color"/>
+ <item android:color="@color/car_ui_toolbar_tab_selected_color" android:state_selected="true"/>
+ <item android:color="@color/car_ui_toolbar_tab_unselected_color"/>
</selector>
diff --git a/car-ui-lib/res/layout-port/car_ui_toolbar.xml b/car-ui-lib/res/layout-port/car_ui_toolbar.xml
index 16014dc..2ea89d0 100644
--- a/car-ui-lib/res/layout-port/car_ui_toolbar.xml
+++ b/car-ui-lib/res/layout-port/car_ui_toolbar.xml
@@ -23,35 +23,35 @@
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_start_guideline"
+ android:id="@+id/car_ui_toolbar_start_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_start_inset"
android:orientation="vertical"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_top_guideline"
+ android:id="@+id/car_ui_toolbar_top_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_top_inset"
android:orientation="horizontal"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_end_guideline"
+ android:id="@+id/car_ui_toolbar_end_guideline"
app:layout_constraintGuide_end="@dimen/car_ui_toolbar_end_inset"
android:orientation="vertical"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_bottom_guideline"
+ android:id="@+id/car_ui_toolbar_bottom_guideline"
app:layout_constraintGuide_end="@dimen/car_ui_toolbar_bottom_inset"
android:orientation="horizontal"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_start_margin_guideline"
+ android:id="@+id/car_ui_toolbar_start_margin_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_margin"
android:orientation="vertical"/>
@@ -66,7 +66,7 @@
android:focusableInTouchMode="true"/>
<androidx.constraintlayout.widget.Guideline
- android:id="@+id/row_separator_guideline"
+ android:id="@+id/car_ui_toolbar_row_separator_guideline"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="horizontal"
@@ -74,32 +74,32 @@
<!-- can't use 0dp for layout_height or the constraintlayout effect kicks in -->
<View
- android:id="@+id/row_separator"
+ android:id="@+id/car_ui_toolbar_row_separator"
android:layout_width="match_parent"
android:layout_height="0.01dp"
style="@style/Widget.CarUi.Toolbar.SeparatorView"
- app:layout_constraintTop_toBottomOf="@id/row_separator_guideline"
+ app:layout_constraintTop_toBottomOf="@id/car_ui_toolbar_row_separator_guideline"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
<FrameLayout
- android:id="@+id/nav_icon_container"
+ android:id="@+id/car_ui_toolbar_nav_icon_container"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="?android:attr/selectableItemBackground"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
- app:layout_constraintStart_toStartOf="@id/toolbar_start_guideline"
- app:layout_constraintEnd_toStartOf="@id/toolbar_start_margin_guideline">
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintStart_toStartOf="@id/car_ui_toolbar_start_guideline"
+ app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_start_margin_guideline">
<ImageView
- android:id="@+id/nav_icon"
+ android:id="@+id/car_ui_toolbar_nav_icon"
android:layout_width="@dimen/car_ui_toolbar_icon_size"
android:layout_height="@dimen/car_ui_toolbar_icon_size"
android:layout_gravity="center"
android:scaleType="fitXY"
style="@style/Widget.CarUi.Toolbar.NavIcon"/>
<ImageView
- android:id="@+id/logo"
+ android:id="@+id/car_ui_toolbar_logo"
android:layout_width="@dimen/car_ui_toolbar_icon_size"
android:layout_height="@dimen/car_ui_toolbar_icon_size"
android:layout_gravity="center"
@@ -107,46 +107,46 @@
</FrameLayout>
<TextView
- android:id="@+id/title"
+ android:id="@+id/car_ui_toolbar_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/car_ui_toolbar_title_margin_start"
android:singleLine="true"
style="@style/TextAppearance.CarUi.Widget.Toolbar.Title"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
- app:layout_constraintStart_toEndOf="@id/toolbar_start_margin_guideline"
- app:layout_constraintEnd_toStartOf="@id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintStart_toEndOf="@id/car_ui_toolbar_start_margin_guideline"
+ app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_menu_items_container"/>
<com.android.car.ui.toolbar.SearchView
- android:id="@+id/search_view"
+ android:id="@+id/car_ui_toolbar_search_view"
android:layout_width="0dp"
android:layout_height="match_parent"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
- app:layout_constraintStart_toEndOf="@id/nav_icon_container"
- app:layout_constraintEnd_toStartOf="@id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintStart_toEndOf="@id/car_ui_toolbar_nav_icon_container"
+ app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_menu_items_container"/>
<FrameLayout
- android:id="@+id/custom_view_container"
+ android:id="@+id/car_ui_toolbar_custom_view_container"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
- app:layout_constraintStart_toEndOf="@id/nav_icon_container"
- app:layout_constraintEnd_toStartOf="@id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintStart_toEndOf="@id/car_ui_toolbar_nav_icon_container"
+ app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_menu_items_container"/>
<LinearLayout
- android:id="@+id/menu_items_container"
+ android:id="@+id/car_ui_toolbar_menu_items_container"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:orientation="horizontal"
android:divider="@drawable/car_ui_toolbar_menu_item_divider"
android:showDividers="beginning|middle|end"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_overflow_button"/>
<FrameLayout
@@ -156,9 +156,9 @@
android:layout_marginLeft="@dimen/car_ui_toolbar_menu_item_margin"
android:layout_marginRight="@dimen/car_ui_toolbar_menu_item_margin"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/row_separator"
- app:layout_constraintEnd_toEndOf="@id/toolbar_end_guideline">
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintEnd_toEndOf="@id/car_ui_toolbar_end_guideline">
<ImageView
android:src="@drawable/car_ui_icon_overflow_menu"
android:layout_width="@dimen/car_ui_primary_icon_size"
@@ -170,15 +170,15 @@
</FrameLayout>
<com.android.car.ui.toolbar.TabLayout
- android:id="@+id/tabs"
+ android:id="@+id/car_ui_toolbar_tabs"
android:layout_width="match_parent"
android:layout_height="@dimen/car_ui_toolbar_second_row_height"
- app:layout_constraintTop_toBottomOf="@id/row_separator"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"/>
+ app:layout_constraintTop_toBottomOf="@id/car_ui_toolbar_row_separator"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"/>
<!-- can't use 0dp for layout_height or the constraintlayout effect kicks in -->
<View
- android:id="@+id/bottom_styleable"
+ android:id="@+id/car_ui_toolbar_bottom_styleable"
android:layout_width="match_parent"
android:layout_height="0.01dp"
style="@style/Widget.CarUi.Toolbar.BottomView"
diff --git a/car-ui-lib/res/layout/car_ui_toolbar.xml b/car-ui-lib/res/layout/car_ui_toolbar.xml
index 870424c..c43a606 100644
--- a/car-ui-lib/res/layout/car_ui_toolbar.xml
+++ b/car-ui-lib/res/layout/car_ui_toolbar.xml
@@ -33,59 +33,59 @@
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_start_guideline"
+ android:id="@+id/car_ui_toolbar_start_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_start_inset"
android:orientation="vertical"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_top_guideline"
+ android:id="@+id/car_ui_toolbar_top_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_top_inset"
android:orientation="horizontal"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_end_guideline"
+ android:id="@+id/car_ui_toolbar_end_guideline"
app:layout_constraintGuide_end="@dimen/car_ui_toolbar_end_inset"
android:orientation="vertical"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_bottom_guideline"
+ android:id="@+id/car_ui_toolbar_bottom_guideline"
app:layout_constraintGuide_end="@dimen/car_ui_toolbar_bottom_inset"
android:orientation="horizontal"/>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:id="@+id/toolbar_start_margin_guideline"
+ android:id="@+id/car_ui_toolbar_start_margin_guideline"
app:layout_constraintGuide_begin="@dimen/car_ui_toolbar_margin"
android:orientation="vertical"/>
<!-- The horizontal bias here is so that when you set this view as GONE, it will be
treated as if it's all the way to the left instead of centered in the margin -->
<FrameLayout
- android:id="@+id/nav_icon_container"
+ android:id="@+id/car_ui_toolbar_nav_icon_container"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="?android:attr/selectableItemBackground"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintStart_toEndOf="@id/toolbar_start_guideline"
- app:layout_constraintEnd_toStartOf="@id/toolbar_start_margin_guideline"
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintStart_toEndOf="@id/car_ui_toolbar_start_guideline"
+ app:layout_constraintEnd_toStartOf="@id/car_ui_toolbar_start_margin_guideline"
app:layout_constraintHorizontal_bias="0.0">
<ImageView
- android:id="@+id/nav_icon"
+ android:id="@+id/car_ui_toolbar_nav_icon"
android:layout_width="@dimen/car_ui_toolbar_icon_size"
android:layout_height="@dimen/car_ui_toolbar_icon_size"
android:layout_gravity="center"
android:scaleType="fitXY"
style="@style/Widget.CarUi.Toolbar.NavIcon"/>
<ImageView
- android:id="@+id/logo"
+ android:id="@+id/car_ui_toolbar_logo"
android:layout_width="@dimen/car_ui_toolbar_icon_size"
android:layout_height="@dimen/car_ui_toolbar_icon_size"
android:layout_gravity="center"
@@ -93,46 +93,46 @@
</FrameLayout>
<TextView
- android:id="@+id/title"
+ android:id="@+id/car_ui_toolbar_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/car_ui_toolbar_title_margin_start"
android:singleLine="true"
style="@style/TextAppearance.CarUi.Widget.Toolbar.Title"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintStart_toEndOf="@+id/toolbar_start_margin_guideline"
- app:layout_constraintEnd_toStartOf="@+id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintStart_toEndOf="@+id/car_ui_toolbar_start_margin_guideline"
+ app:layout_constraintEnd_toStartOf="@+id/car_ui_toolbar_menu_items_container"/>
<com.android.car.ui.toolbar.TabLayout
- android:id="@+id/tabs"
+ android:id="@+id/car_ui_toolbar_tabs"
android:layout_width="wrap_content"
android:layout_height="0dp"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintStart_toEndOf="@+id/nav_icon_container"
- app:layout_constraintEnd_toStartOf="@+id/menu_items_container"
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintStart_toEndOf="@+id/car_ui_toolbar_nav_icon_container"
+ app:layout_constraintEnd_toStartOf="@+id/car_ui_toolbar_menu_items_container"
app:layout_constraintHorizontal_bias="0.0"/>
<FrameLayout
- android:id="@+id/custom_view_container"
+ android:id="@+id/car_ui_toolbar_custom_view_container"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintStart_toEndOf="@+id/nav_icon_container"
- app:layout_constraintEnd_toStartOf="@+id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintStart_toEndOf="@+id/car_ui_toolbar_nav_icon_container"
+ app:layout_constraintEnd_toStartOf="@+id/car_ui_toolbar_menu_items_container"/>
<LinearLayout
- android:id="@+id/menu_items_container"
+ android:id="@+id/car_ui_toolbar_menu_items_container"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:orientation="horizontal"
android:divider="@drawable/car_ui_toolbar_menu_item_divider"
android:showDividers="beginning|middle|end"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
app:layout_constraintEnd_toStartOf="@+id/car_ui_toolbar_overflow_button"/>
<FrameLayout
@@ -142,9 +142,9 @@
android:layout_marginLeft="@dimen/car_ui_toolbar_menu_item_margin"
android:layout_marginRight="@dimen/car_ui_toolbar_menu_item_margin"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintEnd_toEndOf="@id/toolbar_end_guideline">
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintEnd_toEndOf="@id/car_ui_toolbar_end_guideline">
<ImageView
android:src="@drawable/car_ui_icon_overflow_menu"
android:layout_width="@dimen/car_ui_primary_icon_size"
@@ -156,32 +156,32 @@
</FrameLayout>
<com.android.car.ui.toolbar.SearchView
- android:id="@+id/search_view"
+ android:id="@+id/car_ui_toolbar_search_view"
android:layout_width="0dp"
android:layout_height="match_parent"
android:visibility="gone"
- app:layout_constraintTop_toTopOf="@id/toolbar_top_guideline"
- app:layout_constraintBottom_toTopOf="@id/toolbar_bottom_guideline"
- app:layout_constraintStart_toEndOf="@+id/nav_icon_container"
- app:layout_constraintEnd_toStartOf="@+id/menu_items_container"/>
+ app:layout_constraintTop_toTopOf="@id/car_ui_toolbar_top_guideline"
+ app:layout_constraintBottom_toTopOf="@id/car_ui_toolbar_bottom_guideline"
+ app:layout_constraintStart_toEndOf="@+id/car_ui_toolbar_nav_icon_container"
+ app:layout_constraintEnd_toStartOf="@+id/car_ui_toolbar_menu_items_container"/>
<!-- can't use 0dp for layout_height or the constraintlayout effect kicks in -->
<View
- android:id="@+id/row_separator"
+ android:id="@+id/car_ui_toolbar_row_separator"
android:layout_width="match_parent"
android:layout_height="0.01dp"
style="@style/Widget.CarUi.Toolbar.SeparatorView"
- app:layout_constraintTop_toBottomOf="@id/toolbar_top_guideline"
+ app:layout_constraintTop_toBottomOf="@id/car_ui_toolbar_bottom_guideline"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
<!-- can't use 0dp for layout_height or the constraintlayout effect kicks in -->
<View
- android:id="@+id/bottom_styleable"
+ android:id="@+id/car_ui_toolbar_bottom_styleable"
android:layout_width="match_parent"
android:layout_height="0.01dp"
style="@style/Widget.CarUi.Toolbar.BottomView"
- app:layout_constraintTop_toBottomOf="@+id/row_separator"
+ app:layout_constraintTop_toBottomOf="@+id/car_ui_toolbar_row_separator"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/car-ui-lib/res/layout/car_ui_search_view.xml b/car-ui-lib/res/layout/car_ui_toolbar_search_view.xml
similarity index 94%
rename from car-ui-lib/res/layout/car_ui_search_view.xml
rename to car-ui-lib/res/layout/car_ui_toolbar_search_view.xml
index 6878d6a..333d187 100644
--- a/car-ui-lib/res/layout/car_ui_search_view.xml
+++ b/car-ui-lib/res/layout/car_ui_toolbar_search_view.xml
@@ -20,7 +20,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto">
<EditText
- android:id="@+id/search_bar"
+ android:id="@+id/car_ui_toolbar_search_bar"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:paddingStart="@dimen/car_ui_touch_target_width"
@@ -43,7 +43,7 @@
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent">
<ImageView
- android:id="@+id/icon"
+ android:id="@+id/car_ui_toolbar_search_icon"
android:layout_width="@dimen/car_ui_primary_icon_size"
android:layout_height="@dimen/car_ui_primary_icon_size"
android:layout_gravity="center"
@@ -52,7 +52,7 @@
</FrameLayout>
<FrameLayout
- android:id="@+id/search_close"
+ android:id="@+id/car_ui_toolbar_search_close"
android:layout_width="@dimen/car_ui_touch_target_width"
android:layout_height="@dimen/car_ui_touch_target_height"
app:layout_constraintTop_toTopOf="parent"
diff --git a/car-ui-lib/res/layout/car_ui_tab_item.xml b/car-ui-lib/res/layout/car_ui_toolbar_tab_item.xml
similarity index 73%
rename from car-ui-lib/res/layout/car_ui_tab_item.xml
rename to car-ui-lib/res/layout/car_ui_toolbar_tab_item.xml
index b387ae3..91a010d 100644
--- a/car-ui-lib/res/layout/car_ui_tab_item.xml
+++ b/car-ui-lib/res/layout/car_ui_toolbar_tab_item.xml
@@ -18,15 +18,15 @@
<merge
xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView
- android:id="@+id/car_ui_tab_item_icon"
- android:layout_width="@dimen/car_ui_tab_icon_width"
- android:layout_height="@dimen/car_ui_tab_icon_height"
+ android:id="@+id/car_ui_toolbar_tab_item_icon"
+ android:layout_width="@dimen/car_ui_toolbar_tab_icon_width"
+ android:layout_height="@dimen/car_ui_toolbar_tab_icon_height"
android:scaleType="fitCenter"
- android:tint="@color/car_ui_tab_item_selector"
+ android:tint="@color/car_ui_toolbar_tab_item_selector"
android:tintMode="src_in"/>
<TextView
- android:id="@+id/car_ui_tab_item_text"
- android:layout_width="@dimen/car_ui_tab_text_width"
+ android:id="@+id/car_ui_toolbar_tab_item_text"
+ android:layout_width="@dimen/car_ui_toolbar_tab_text_width"
android:layout_height="wrap_content"
android:singleLine="true"
android:gravity="center"
diff --git a/car-ui-lib/res/values/colors.xml b/car-ui-lib/res/values/colors.xml
index 8a70ba6..73dcb97 100644
--- a/car-ui-lib/res/values/colors.xml
+++ b/car-ui-lib/res/values/colors.xml
@@ -25,17 +25,10 @@
<!-- The ripple color. -->
<color name="car_ui_ripple_color">#27ffffff</color>
- <!-- Tabs -->
-
- <!-- Selected colors -->
- <color name="car_ui_tab_selected_color">@color/car_ui_primary_text_color</color>
- <!-- Normal colors -->
- <color name="car_ui_tab_unselected_color">@color/car_ui_secondary_text_color</color>
-
<!-- Toolbar -->
<!-- Color used on the navigation icon -->
- <color name="car_ui_nav_icon_color">@color/car_ui_primary_text_color</color>
+ <color name="car_ui_toolbar_nav_icon_color">@color/car_ui_primary_text_color</color>
<!-- Text color applied to the hint displayed inside the search box -->
<color name="car_ui_toolbar_search_hint_text_color">#33FFFFFF</color>
<!-- Menu item colors -->
@@ -48,6 +41,10 @@
<color name="car_ui_toolbar_menu_item_icon_background_disabled_color">@color/car_ui_toolbar_menu_item_icon_disabled_color</color>
<color name="car_ui_toolbar_menu_item_icon_background_restricted_color">@color/car_ui_toolbar_menu_item_icon_restricted_color</color>
<color name="car_ui_toolbar_menu_item_icon_background_activated_color">@color/car_ui_primary_text_color</color>
+ <!-- Tab selected color -->
+ <color name="car_ui_toolbar_tab_selected_color">@color/car_ui_primary_text_color</color>
+ <!-- Tab normal color -->
+ <color name="car_ui_toolbar_tab_unselected_color">@color/car_ui_secondary_text_color</color>
<!-- Recycler View -->
diff --git a/car-ui-lib/res/values/dimens.xml b/car-ui-lib/res/values/dimens.xml
index 5e7d7e6..72206d1 100644
--- a/car-ui-lib/res/values/dimens.xml
+++ b/car-ui-lib/res/values/dimens.xml
@@ -37,13 +37,13 @@
<!-- Tabs -->
<!-- Exact size of the tab textbox. Use @dimen/wrap_content if this must be flexible -->
- <dimen name="car_ui_tab_text_width">135dp</dimen>
+ <dimen name="car_ui_toolbar_tab_text_width">135dp</dimen>
<!-- Horizontal padding between tabs -->
- <dimen name="car_ui_tab_padding_x">12dp</dimen>
+ <dimen name="car_ui_toolbar_tab_padding_x">12dp</dimen>
<!-- Tab icon width (if icons are enabled) -->
- <dimen name="car_ui_tab_icon_width">36dp</dimen>
+ <dimen name="car_ui_toolbar_tab_icon_width">36dp</dimen>
<!-- Tab icon height (if icons are enabled) -->
- <dimen name="car_ui_tab_icon_height">36dp</dimen>
+ <dimen name="car_ui_toolbar_tab_icon_height">36dp</dimen>
<!-- Toolbar -->
<dimen name="car_ui_toolbar_row_height">96dp</dimen>
diff --git a/car-ui-lib/res/values/styles.xml b/car-ui-lib/res/values/styles.xml
index 0a5bf88..76dbce2 100644
--- a/car-ui-lib/res/values/styles.xml
+++ b/car-ui-lib/res/values/styles.xml
@@ -25,7 +25,7 @@
<style name="Widget.CarUi.Toolbar"/>
<style name="Widget.CarUi.Toolbar.NavIcon">
- <item name="android:tint">@color/car_ui_nav_icon_color</item>
+ <item name="android:tint">@color/car_ui_toolbar_nav_icon_color</item>
<item name="android:src">@drawable/car_ui_icon_arrow_back</item>
</style>
@@ -165,7 +165,7 @@
<style name="TextAppearance.CarUi.Widget.Toolbar.Tab">
<item name="android:textSize">24sp</item>
<item name="android:letterSpacing">@dimen/car_ui_letter_spacing_body3</item>
- <item name="android:textColor">@color/car_ui_tab_item_selector</item>
+ <item name="android:textColor">@color/car_ui_toolbar_tab_item_selector</item>
</style>
</resources>
diff --git a/car-ui-lib/res/values/values.xml b/car-ui-lib/res/values/values.xml
index 2eb4d70..cca83de 100644
--- a/car-ui-lib/res/values/values.xml
+++ b/car-ui-lib/res/values/values.xml
@@ -19,9 +19,9 @@
<!-- Toolbar -->
<!-- Whether tabs should use flex layout or not -->
- <bool name="car_ui_tab_flexible_layout">false</bool>
+ <bool name="car_ui_toolbar_tab_flexible_layout">false</bool>
<!-- Layout to be used for toolbar tabs -->
- <item name="car_ui_tab_item_layout" type="layout">@layout/car_ui_tab_item</item>
+ <item name="car_ui_toolbar_tab_item_layout" type="layout">@layout/car_ui_toolbar_tab_item</item>
<!-- Preferences -->
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java b/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
index 35898db..a62c0df 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
@@ -71,11 +71,11 @@
super(context, attrs, defStyleAttr);
LayoutInflater inflater = LayoutInflater.from(context);
- inflater.inflate(R.layout.car_ui_search_view, this, true);
+ inflater.inflate(R.layout.car_ui_toolbar_search_view, this, true);
- mSearchText = requireViewById(R.id.search_bar);
- mIcon = requireViewById(R.id.icon);
- mCloseIcon = requireViewById(R.id.search_close);
+ mSearchText = requireViewById(R.id.car_ui_toolbar_search_bar);
+ mIcon = requireViewById(R.id.car_ui_toolbar_search_icon);
+ mCloseIcon = requireViewById(R.id.car_ui_toolbar_search_close);
mCloseIcon.setOnClickListener(view -> mSearchText.getText().clear());
mSearchText.setOnFocusChangeListener(
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java b/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
index 066da0f..c24b773 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
@@ -16,6 +16,7 @@
package com.android.car.ui.toolbar;
import android.content.Context;
+import android.content.res.Resources;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.util.ArraySet;
@@ -80,7 +81,7 @@
private final boolean mTabFlexibleLayout;
private final int mTabPaddingX;
- private final Set<Listener> mListeners;
+ private final Set<Listener> mListeners = new ArraySet<>();
private final TabAdapter mTabAdapter;
@@ -94,12 +95,12 @@
public TabLayout(@NonNull Context context, @Nullable AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
- mListeners = new ArraySet<>();
+ Resources resources = context.getResources();
- mTabPaddingX = context.getResources().getDimensionPixelSize(R.dimen.car_ui_tab_padding_x);
- mTabFlexibleLayout = context.getResources().getBoolean(R.bool.car_ui_tab_flexible_layout);
+ mTabPaddingX = resources.getDimensionPixelSize(R.dimen.car_ui_toolbar_tab_padding_x);
+ mTabFlexibleLayout = resources.getBoolean(R.bool.car_ui_toolbar_tab_flexible_layout);
- mTabAdapter = new TabAdapter(context, R.layout.car_ui_tab_item_layout, this);
+ mTabAdapter = new TabAdapter(context, R.layout.car_ui_toolbar_tab_item_layout, this);
}
/**
@@ -289,8 +290,8 @@
private void presentTabItemView(int position, @NonNull View tabItemView) {
Tab tab = mTabList.get(position);
- ImageView iconView = tabItemView.findViewById(R.id.car_ui_tab_item_icon);
- TextView textView = tabItemView.findViewById(R.id.car_ui_tab_item_text);
+ ImageView iconView = tabItemView.findViewById(R.id.car_ui_toolbar_tab_item_icon);
+ TextView textView = tabItemView.findViewById(R.id.car_ui_toolbar_tab_item_text);
tabItemView.setOnClickListener(view -> selectTab(tab));
tab.bindText(textView);
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/Toolbar.java b/car-ui-lib/src/com/android/car/ui/toolbar/Toolbar.java
index a028dcc..95da690 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/Toolbar.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/Toolbar.java
@@ -165,14 +165,14 @@
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(getToolbarLayout(), this, true);
- mTabLayout = requireViewById(R.id.tabs);
- mNavIcon = requireViewById(R.id.nav_icon);
- mLogo = requireViewById(R.id.logo);
- mNavIconContainer = requireViewById(R.id.nav_icon_container);
- mMenuItemsContainer = requireViewById(R.id.menu_items_container);
- mTitle = requireViewById(R.id.title);
- mSearchView = requireViewById(R.id.search_view);
- mCustomViewContainer = requireViewById(R.id.custom_view_container);
+ mTabLayout = requireViewById(R.id.car_ui_toolbar_tabs);
+ mNavIcon = requireViewById(R.id.car_ui_toolbar_nav_icon);
+ mLogo = requireViewById(R.id.car_ui_toolbar_logo);
+ mNavIconContainer = requireViewById(R.id.car_ui_toolbar_nav_icon_container);
+ mMenuItemsContainer = requireViewById(R.id.car_ui_toolbar_menu_items_container);
+ mTitle = requireViewById(R.id.car_ui_toolbar_title);
+ mSearchView = requireViewById(R.id.car_ui_toolbar_search_view);
+ mCustomViewContainer = requireViewById(R.id.car_ui_toolbar_custom_view_container);
mOverflowButton = requireViewById(R.id.car_ui_toolbar_overflow_button);
TypedArray a = context.obtainStyledAttributes(
diff --git a/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
index dacefa2..1a415c2 100644
--- a/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
+++ b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
@@ -113,7 +113,7 @@
mToolbar.setState(Toolbar.State.HOME);
mToolbar.setLogo(R.drawable.test_ic_launcher);
- assertThat(mToolbar.findViewById(R.id.logo).isShown()).isTrue();
+ assertThat(mToolbar.findViewById(R.id.car_ui_toolbar_logo).isShown()).isTrue();
}
@Test
@@ -121,7 +121,7 @@
mToolbar.setState(Toolbar.State.SUBPAGE);
mToolbar.setLogo(R.drawable.test_ic_launcher);
- assertThat(mToolbar.findViewById(R.id.logo).isShown()).isFalse();
+ assertThat(mToolbar.findViewById(R.id.car_ui_toolbar_logo).isShown()).isFalse();
}
@Test
@@ -129,7 +129,7 @@
mToolbar.setState(Toolbar.State.HOME);
mToolbar.setLogo(0);
- assertThat(mToolbar.findViewById(R.id.logo).isShown()).isFalse();
+ assertThat(mToolbar.findViewById(R.id.car_ui_toolbar_logo).isShown()).isFalse();
}
@Test
@@ -137,7 +137,7 @@
mToolbar.setState(Toolbar.State.SUBPAGE);
mToolbar.setLogo(0);
- assertThat(mToolbar.findViewById(R.id.logo).isShown()).isFalse();
+ assertThat(mToolbar.findViewById(R.id.car_ui_toolbar_logo).isShown()).isFalse();
}
@Test
@@ -203,8 +203,7 @@
@Test
public void menuItems_whenClicked_shouldCallListener() {
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container)).getChildCount())
- .isEqualTo(0);
+ assertThat(getMenuItemViewCount()).isEqualTo(0);
Mutable<Boolean> button1Clicked = new Mutable<>(false);
Mutable<Boolean> button2Clicked = new Mutable<>(false);
@@ -212,16 +211,13 @@
createMenuItem(i -> button1Clicked.value = true),
createMenuItem(i -> button2Clicked.value = true)));
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container)).getChildCount())
- .isEqualTo(2);
+ assertThat(getMenuItemViewCount()).isEqualTo(2);
- ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0).performClick();
+ getMenuItemView(0).performClick();
assertThat(button1Clicked.value).isTrue();
- ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(1).performClick();
+ getMenuItemView(1).performClick();
assertThat(button2Clicked.value).isTrue();
}
@@ -232,13 +228,11 @@
createMenuItem(i -> { }),
createMenuItem(i -> { })));
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container)).getChildCount())
- .isEqualTo(2);
+ assertThat(getMenuItemViewCount()).isEqualTo(2);
mToolbar.setMenuItems(null);
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container)).getChildCount())
- .isEqualTo(0);
+ assertThat(getMenuItemViewCount()).isEqualTo(0);
}
@Test
@@ -246,10 +240,7 @@
MenuItem item = createMenuItem(i -> { });
mToolbar.setMenuItems(Collections.singletonList(item));
- View itemView = ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0);
-
- assertThat(itemView.isShown()).isTrue();
+ assertThat(getMenuItemView(0).isShown()).isTrue();
}
@Test
@@ -257,11 +248,8 @@
MenuItem item = createMenuItem(i -> { });
mToolbar.setMenuItems(Collections.singletonList(item));
- View itemView = ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0);
-
item.setVisible(false);
- assertThat(itemView.isShown()).isFalse();
+ assertThat(getMenuItemView(0).isShown()).isFalse();
}
@Test
@@ -269,12 +257,9 @@
MenuItem item = createMenuItem(i -> { });
mToolbar.setMenuItems(Collections.singletonList(item));
- View itemView = ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0);
-
item.setVisible(false);
item.setVisible(true);
- assertThat(itemView.isShown()).isTrue();
+ assertThat(getMenuItemView(0).isShown()).isTrue();
}
@Test
@@ -284,16 +269,13 @@
createMenuItem(i -> { }));
mToolbar.setMenuItems(menuItems);
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container)).getChildCount())
- .isEqualTo(2);
+ assertThat(getMenuItemViewCount()).isEqualTo(2);
- View firstMenuItemView = ((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0);
+ View firstMenuItemView = getMenuItemView(0);
mToolbar.setMenuItems(menuItems);
- assertThat(firstMenuItemView).isSameAs(((ViewGroup) mToolbar
- .findViewById(R.id.menu_items_container)).getChildAt(0));
+ assertThat(firstMenuItemView).isSameAs(getMenuItemView(0));
}
@Test
@@ -305,10 +287,8 @@
mToolbar.setShowMenuItemsWhileSearching(false);
mToolbar.setState(Toolbar.State.SEARCH);
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0).isShown()).isFalse();
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(1).isShown()).isFalse();
+ assertThat(getMenuItemView(0).isShown()).isFalse();
+ assertThat(getMenuItemView(1).isShown()).isFalse();
}
@Test
@@ -320,10 +300,8 @@
mToolbar.setShowMenuItemsWhileSearching(true);
mToolbar.setState(Toolbar.State.SEARCH);
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(0).isShown()).isFalse();
- assertThat(((ViewGroup) mToolbar.findViewById(R.id.menu_items_container))
- .getChildAt(1).isShown()).isTrue();
+ assertThat(getMenuItemView(0).isShown()).isFalse();
+ assertThat(getMenuItemView(1).isShown()).isTrue();
}
private MenuItem createMenuItem(MenuItem.OnClickListener listener) {
@@ -333,8 +311,20 @@
.build();
}
+ private int getMenuItemViewCount() {
+ return ((ViewGroup) mToolbar
+ .findViewById(R.id.car_ui_toolbar_menu_items_container))
+ .getChildCount();
+ }
+
+ private View getMenuItemView(int index) {
+ return ((ViewGroup) mToolbar
+ .findViewById(R.id.car_ui_toolbar_menu_items_container))
+ .getChildAt(index);
+ }
+
private void pressBack() {
- mToolbar.findViewById(R.id.nav_icon_container).performClick();
+ mToolbar.findViewById(R.id.car_ui_toolbar_nav_icon_container).performClick();
}
private static class Mutable<T> {