summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Evan Severson <evanseverson@google.com> 2024-06-21 15:21:15 -0700
committer Evan Severson <evanseverson@google.com> 2024-07-15 11:47:11 -0700
commit3506e68ab8de2c23c80c5b55b127a922d49b3b6b (patch)
treecdecc41c1e43f75ffe178baa2f21a41ad880fa74
parent1209d966f8ca711f7207306163c6e41935436a5a (diff)
[SettingsLib] Extract attributes for entity header into styles
To enable device manufacturers to customize the settings header in ways such as changing the orientation of the icon and title we need to have the attributes taken out of they layout file and into a style so that resource overlays can be used to customize those values. Flag: NONE only xml files changed, cannot flag. Test: Add these styles to PermissionController's overlayable and use example overlay. Bug: 344908070 Change-Id: I443a58103bec06dfe2a9176673ffe75c0c8b235a
-rw-r--r--packages/SettingsLib/LayoutPreference/res/layout/settings_entity_header.xml27
-rw-r--r--packages/SettingsLib/LayoutPreference/res/values/styles.xml35
2 files changed, 38 insertions, 24 deletions
diff --git a/packages/SettingsLib/LayoutPreference/res/layout/settings_entity_header.xml b/packages/SettingsLib/LayoutPreference/res/layout/settings_entity_header.xml
index c629d96bcf4b..b967405b5c63 100644
--- a/packages/SettingsLib/LayoutPreference/res/layout/settings_entity_header.xml
+++ b/packages/SettingsLib/LayoutPreference/res/layout/settings_entity_header.xml
@@ -18,38 +18,19 @@
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/entity_header"
- style="@style/EntityHeader"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="?android:attr/listPreferredItemPaddingStart"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:orientation="horizontal">
+ style="@style/SettingsLibEntityHeader">
<LinearLayout
android:id="@+id/entity_header_content"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerHorizontal="true"
- android:gravity="center_horizontal"
- android:orientation="vertical">
+ style="@style/SettingsLibEntityHeaderContent">
<ImageView
android:id="@+id/entity_header_icon"
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:scaleType="fitCenter"
- android:antialias="true"/>
+ style="@style/SettingsLibEntityHeaderIcon"/>
<TextView
android:id="@+id/entity_header_title"
- style="@style/TextAppearance.EntityHeaderTitle"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="false"
- android:gravity="center"
- android:ellipsize="marquee"
- android:textDirection="locale"
- android:layout_marginTop="8dp"/>
+ style="@style/SettingsLibEntityHeaderTitle"/>
<TextView
android:id="@+id/install_type"
diff --git a/packages/SettingsLib/LayoutPreference/res/values/styles.xml b/packages/SettingsLib/LayoutPreference/res/values/styles.xml
index f958037cfca6..c9d35975a907 100644
--- a/packages/SettingsLib/LayoutPreference/res/values/styles.xml
+++ b/packages/SettingsLib/LayoutPreference/res/values/styles.xml
@@ -22,6 +22,39 @@
<item name="android:paddingEnd">16dp</item>
</style>
+ <style name="SettingsLibEntityHeader" parent="EntityHeader">
+ <item name="android:layout_width">match_parent</item>
+ <item name="android:layout_height">wrap_content</item>
+ <item name="android:paddingStart">?android:attr/listPreferredItemPaddingStart</item>
+ <item name="android:paddingEnd">?android:attr/listPreferredItemPaddingEnd</item>
+ </style>
+
+ <style name="SettingsLibEntityHeaderContent">
+ <item name="android:layout_width">wrap_content</item>
+ <item name="android:layout_height">wrap_content</item>
+ <item name="android:layout_centerHorizontal">true</item>
+ <item name="android:orientation">vertical</item>
+ <item name="android:gravity">center_horizontal</item>
+ </style>
+
+ <style name="SettingsLibEntityHeaderIcon">
+ <item name="android:layout_width">48dp</item>
+ <item name="android:layout_height">48dp</item>
+ <item name="android:scaleType">fitCenter</item>
+ <item name="android:antialias">true</item>
+ </style>
+
+ <style name="SettingsLibEntityHeaderTitle">
+ <item name="android:layout_width">wrap_content</item>
+ <item name="android:layout_height">wrap_content</item>
+ <item name="android:layout_marginTop">8dp</item>
+ <item name="android:singleLine">false</item>
+ <item name="android:gravity">center</item>
+ <item name="android:ellipsize">marquee</item>
+ <item name="android:textDirection">locale</item>
+ <item name="android:textAppearance">@style/TextAppearance.EntityHeaderTitle</item>
+ </style>
+
<style name="CrossProfileEntityHeaderIcon">
<item name="android:layout_width">48dp</item>
<item name="android:layout_height">48dp</item>
@@ -52,4 +85,4 @@
<item name="android:fontFamily">google-sans-medium</item>
<item name="android:layout_marginTop">8dp</item>
</style>
-</resources> \ No newline at end of file
+</resources>