From 7bdcf69dea709046bc9f8cfd72b5471eff6f0eb7 Mon Sep 17 00:00:00 2001 From: tmfang Date: Sun, 2 Dec 2018 21:40:00 +0800 Subject: Create an AppEntitiesHeader widget - Create a library named EntityHeaderWidgets, it can contains other entity header wdigets in the future. - Create a controller of AppEntitiesHeader, then user can initialize its view easily. Test: visual, robotest Change-Id: If11b3eba75334f66b72472b2139e0e7d93984dce Fixes: 117621156 --- packages/SettingsLib/Android.bp | 1 + .../SettingsLib/EntityHeaderWidgets/Android.bp | 14 ++ .../EntityHeaderWidgets/AndroidManifest.xml | 23 ++ .../res/layout/app_entities_header.xml | 64 +++++ .../EntityHeaderWidgets/res/layout/app_view.xml | 50 ++++ .../EntityHeaderWidgets/res/values/styles.xml | 38 +++ .../widget/AppEntitiesHeaderController.java | 267 +++++++++++++++++++++ .../widget/AppEntitiesHeaderControllerTest.java | 181 ++++++++++++++ 8 files changed, 638 insertions(+) create mode 100644 packages/SettingsLib/EntityHeaderWidgets/Android.bp create mode 100644 packages/SettingsLib/EntityHeaderWidgets/AndroidManifest.xml create mode 100644 packages/SettingsLib/EntityHeaderWidgets/res/layout/app_entities_header.xml create mode 100644 packages/SettingsLib/EntityHeaderWidgets/res/layout/app_view.xml create mode 100644 packages/SettingsLib/EntityHeaderWidgets/res/values/styles.xml create mode 100644 packages/SettingsLib/EntityHeaderWidgets/src/com/android/settingslib/widget/AppEntitiesHeaderController.java create mode 100644 packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/AppEntitiesHeaderControllerTest.java diff --git a/packages/SettingsLib/Android.bp b/packages/SettingsLib/Android.bp index cc17b25d9a40..0126e7e59915 100644 --- a/packages/SettingsLib/Android.bp +++ b/packages/SettingsLib/Android.bp @@ -18,6 +18,7 @@ android_library { "SettingsLibSettingsSpinner", "SettingsLayoutPreference", "ActionButtonsPreference", + "SettingsLibEntityHeaderWidgets", ], // ANDROIDMK TRANSLATION ERROR: unsupported assignment to LOCAL_SHARED_JAVA_LIBRARIES diff --git a/packages/SettingsLib/EntityHeaderWidgets/Android.bp b/packages/SettingsLib/EntityHeaderWidgets/Android.bp new file mode 100644 index 000000000000..3ca4ecd33ce4 --- /dev/null +++ b/packages/SettingsLib/EntityHeaderWidgets/Android.bp @@ -0,0 +1,14 @@ +android_library { + name: "SettingsLibEntityHeaderWidgets", + + srcs: ["src/**/*.java"], + resource_dirs: ["res"], + + static_libs: [ + "androidx.annotation_annotation", + "SettingsLibAppPreference" + ], + + sdk_version: "system_current", + min_sdk_version: "21", +} diff --git a/packages/SettingsLib/EntityHeaderWidgets/AndroidManifest.xml b/packages/SettingsLib/EntityHeaderWidgets/AndroidManifest.xml new file mode 100644 index 000000000000..4b9f1ab8d6cc --- /dev/null +++ b/packages/SettingsLib/EntityHeaderWidgets/AndroidManifest.xml @@ -0,0 +1,23 @@ + + + + + + + + diff --git a/packages/SettingsLib/EntityHeaderWidgets/res/layout/app_entities_header.xml b/packages/SettingsLib/EntityHeaderWidgets/res/layout/app_entities_header.xml new file mode 100644 index 000000000000..9f30eda242f6 --- /dev/null +++ b/packages/SettingsLib/EntityHeaderWidgets/res/layout/app_entities_header.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + +