From 11ec9ba02f64f6fde8858aa4363c167302d3e22b Mon Sep 17 00:00:00 2001 From: Marie Matheson Date: Wed, 5 May 2021 17:02:31 +0000 Subject: 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 --- .../SettingsLib/BannerMessagePreference/Android.bp | 5 +- .../BannerMessagePreference/AndroidManifest.xml | 2 +- .../BannerMessagePreference/lint-baseline.xml | 37 -- .../drawable-v31/settingslib_card_background.xml | 21 ++ .../res/drawable-v31/settingslib_ic_cross.xml | 25 ++ .../res/layout-v31/settingslib_banner_message.xml | 90 +++++ .../res/layout/banner_message.xml | 73 ---- .../res/layout/settingslib_banner_message.xml | 90 +++++ .../res/values-night/colors.xml | 25 ++ .../res/values-v31/styles.xml | 61 ++++ .../BannerMessagePreference/res/values/attrs.xml | 27 ++ .../BannerMessagePreference/res/values/colors.xml | 25 ++ .../BannerMessagePreference/res/values/strings.xml | 24 ++ .../widget/BannerMessagePreference.java | 260 ++++++++++++-- .../widget/BannerMessagePreferenceTest.java | 386 +++++++++++++++++++-- 15 files changed, 992 insertions(+), 159 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 delete mode 100644 packages/SettingsLib/BannerMessagePreference/res/layout/banner_message.xml create mode 100644 packages/SettingsLib/BannerMessagePreference/res/layout/settingslib_banner_message.xml 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 82e837bcd3ac..c6a95625a414 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 56b886f7efb1..dd51ea38a1fe 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 ba02a1fae9e0..000000000000 --- 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 000000000000..072eb5873ce5 --- /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 000000000000..d926cc6e5a58 --- /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 000000000000..904b78c7f165 --- /dev/null +++ b/packages/SettingsLib/BannerMessagePreference/res/layout-v31/settingslib_banner_message.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + +