From 11ec9ba02f64f6fde8858aa4363c167302d3e22b Mon Sep 17 00:00:00 2001 From: Marie Matheson Date: Wed, 5 May 2021 17:02:31 +0000 Subject: [PATCH] Updates BannerMessagePreference to new style Updates the style of the BannerMessagePreference in v31 and adds support for the following new functionality (all optional): - Use one of three attention level themes: high, medium, and low (default: high) - Add an icon (default: alert icon) - Subtitle (default: hidden) - Dismiss button (default: hidden) Icon, subtitle, and theme can also be set via xml attrs. Adds support for creating a BannerMessage without a title. Test: make -j80 RunSettingsLibRoboTests Test: Manually tested all configurations Bug: 181764215 Change-Id: I73bfc5225d83057e423b6a9d77a6277a656d3b90 --- .../BannerMessagePreference/Android.bp | 5 +- .../AndroidManifest.xml | 2 +- .../BannerMessagePreference/lint-baseline.xml | 37 -- .../settingslib_card_background.xml | 21 + .../res/drawable-v31/settingslib_ic_cross.xml | 25 ++ .../layout-v31/settingslib_banner_message.xml | 90 ++++ ...age.xml => settingslib_banner_message.xml} | 17 + .../res/values-night/colors.xml | 25 ++ .../res/values-v31/styles.xml | 61 +++ .../res/values/attrs.xml | 27 ++ .../res/values/colors.xml | 25 ++ .../res/values/strings.xml | 24 ++ .../widget/BannerMessagePreference.java | 262 ++++++++++-- .../widget/BannerMessagePreferenceTest.java | 388 +++++++++++++++++- 14 files changed, 921 insertions(+), 88 deletions(-) delete mode 100644 packages/SettingsLib/BannerMessagePreference/lint-baseline.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_card_background.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_ic_cross.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/layout-v31/settingslib_banner_message.xml rename packages/SettingsLib/BannerMessagePreference/res/layout/{banner_message.xml => settingslib_banner_message.xml} (81%) create mode 100644 packages/SettingsLib/BannerMessagePreference/res/values-night/colors.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/values-v31/styles.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/values/attrs.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/values/colors.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/values/strings.xml diff --git a/packages/SettingsLib/BannerMessagePreference/Android.bp b/packages/SettingsLib/BannerMessagePreference/Android.bp index 82e837bcd3acc..c6a95625a4148 100644 --- a/packages/SettingsLib/BannerMessagePreference/Android.bp +++ b/packages/SettingsLib/BannerMessagePreference/Android.bp @@ -14,9 +14,10 @@ android_library { resource_dirs: ["res"], static_libs: [ - "androidx.preference_preference", + "androidx.preference_preference", + "SettingsLibSettingsTheme", ], sdk_version: "system_current", - min_sdk_version: "21", + min_sdk_version: "28", } diff --git a/packages/SettingsLib/BannerMessagePreference/AndroidManifest.xml b/packages/SettingsLib/BannerMessagePreference/AndroidManifest.xml index 56b886f7efb12..dd51ea38a1fef 100644 --- a/packages/SettingsLib/BannerMessagePreference/AndroidManifest.xml +++ b/packages/SettingsLib/BannerMessagePreference/AndroidManifest.xml @@ -18,6 +18,6 @@ - + diff --git a/packages/SettingsLib/BannerMessagePreference/lint-baseline.xml b/packages/SettingsLib/BannerMessagePreference/lint-baseline.xml deleted file mode 100644 index ba02a1fae9e0d..0000000000000 --- a/packages/SettingsLib/BannerMessagePreference/lint-baseline.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_card_background.xml b/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_card_background.xml new file mode 100644 index 0000000000000..072eb5873ce52 --- /dev/null +++ b/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_card_background.xml @@ -0,0 +1,21 @@ + + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_ic_cross.xml b/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_ic_cross.xml new file mode 100644 index 0000000000000..d926cc6e5a586 --- /dev/null +++ b/packages/SettingsLib/BannerMessagePreference/res/drawable-v31/settingslib_ic_cross.xml @@ -0,0 +1,25 @@ + + + + + diff --git a/packages/SettingsLib/BannerMessagePreference/res/layout-v31/settingslib_banner_message.xml b/packages/SettingsLib/BannerMessagePreference/res/layout-v31/settingslib_banner_message.xml new file mode 100644 index 0000000000000..904b78c7f1656 --- /dev/null +++ b/packages/SettingsLib/BannerMessagePreference/res/layout-v31/settingslib_banner_message.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + +