From 27748e0cec2d551d80a293e3f82e3d2c899903d9 Mon Sep 17 00:00:00 2001 From: Edgar Wang Date: Tue, 23 Nov 2021 12:51:52 +0800 Subject: [PATCH] Create ButtonPreference Bug: 201577970 Test: robotest Change-Id: I2be43bc41405a529961ded3371d7c382bb1fdf57 --- packages/SettingsLib/Android.bp | 1 + .../SettingsLib/ButtonPreference/Android.bp | 23 ++ .../ButtonPreference/AndroidManifest.xml | 23 ++ ...ngslib_btn_colored_background_material.xml | 24 +++ .../settingslib_btn_colored_text_material.xml | 24 +++ .../settingslib_ripple_material_dark.xml | 21 ++ .../settingslib_ripple_material_light.xml | 21 ++ .../settingslib_btn_colored_material.xml | 36 ++++ .../res/layout/settingslib_button_layout.xml | 36 ++++ .../res/values-night/colors.xml | 21 ++ .../res/values-v23/styles.xml | 26 +++ .../res/values-v28/styles.xml | 25 +++ .../res/values-v31/styles.xml | 26 +++ .../ButtonPreference/res/values/attrs.xml | 22 ++ .../ButtonPreference/res/values/colors.xml | 21 ++ .../ButtonPreference/res/values/dimens.xml | 20 ++ .../ButtonPreference/res/values/styles.xml | 33 +++ .../settingslib/widget/ButtonPreference.java | 197 ++++++++++++++++++ .../widget/ButtonPreferenceTest.java | 166 +++++++++++++++ 19 files changed, 766 insertions(+) create mode 100644 packages/SettingsLib/ButtonPreference/Android.bp create mode 100644 packages/SettingsLib/ButtonPreference/AndroidManifest.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_background_material.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_text_material.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_dark.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_light.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/drawable/settingslib_btn_colored_material.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/layout/settingslib_button_layout.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values-night/colors.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values-v23/styles.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values-v28/styles.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values-v31/styles.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values/attrs.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values/colors.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values/dimens.xml create mode 100644 packages/SettingsLib/ButtonPreference/res/values/styles.xml create mode 100644 packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java create mode 100644 packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/ButtonPreferenceTest.java diff --git a/packages/SettingsLib/Android.bp b/packages/SettingsLib/Android.bp index b266df53b18ec..fcf2282160a7f 100644 --- a/packages/SettingsLib/Android.bp +++ b/packages/SettingsLib/Android.bp @@ -49,6 +49,7 @@ android_library { "SettingsLibTwoTargetPreference", "SettingsLibSettingsTransition", "SettingsLibActivityEmbedding", + "SettingsLibButtonPreference", ], // ANDROIDMK TRANSLATION ERROR: unsupported assignment to LOCAL_SHARED_JAVA_LIBRARIES diff --git a/packages/SettingsLib/ButtonPreference/Android.bp b/packages/SettingsLib/ButtonPreference/Android.bp new file mode 100644 index 0000000000000..39f804fa9ae56 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/Android.bp @@ -0,0 +1,23 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_library { + name: "SettingsLibButtonPreference", + + srcs: ["src/**/*.java"], + resource_dirs: ["res"], + + static_libs: [ + "androidx.preference_preference", + "SettingsLibSettingsTheme", + ], + + sdk_version: "system_current", + min_sdk_version: "21", +} diff --git a/packages/SettingsLib/ButtonPreference/AndroidManifest.xml b/packages/SettingsLib/ButtonPreference/AndroidManifest.xml new file mode 100644 index 0000000000000..2d35c331cd824 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/AndroidManifest.xml @@ -0,0 +1,23 @@ + + + + + + + + diff --git a/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_background_material.xml b/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_background_material.xml new file mode 100644 index 0000000000000..51ca4ac041890 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_background_material.xml @@ -0,0 +1,24 @@ + + + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_text_material.xml b/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_text_material.xml new file mode 100644 index 0000000000000..8dca4dbcd111a --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/color/settingslib_btn_colored_text_material.xml @@ -0,0 +1,24 @@ + + + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_dark.xml b/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_dark.xml new file mode 100644 index 0000000000000..1e930eacffba0 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_dark.xml @@ -0,0 +1,21 @@ + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_light.xml b/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_light.xml new file mode 100644 index 0000000000000..378fc166af7f3 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/color/settingslib_ripple_material_light.xml @@ -0,0 +1,21 @@ + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/ButtonPreference/res/drawable/settingslib_btn_colored_material.xml b/packages/SettingsLib/ButtonPreference/res/drawable/settingslib_btn_colored_material.xml new file mode 100644 index 0000000000000..bb0597d1f74f3 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/drawable/settingslib_btn_colored_material.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/SettingsLib/ButtonPreference/res/layout/settingslib_button_layout.xml b/packages/SettingsLib/ButtonPreference/res/layout/settingslib_button_layout.xml new file mode 100644 index 0000000000000..1ff09901ffaf7 --- /dev/null +++ b/packages/SettingsLib/ButtonPreference/res/layout/settingslib_button_layout.xml @@ -0,0 +1,36 @@ + + + + +