From 05a09478f3755f87854451e626cb85a73f4d0bb5 Mon Sep 17 00:00:00 2001 From: BMItter <46747780+BMItter@users.noreply.github.com> Date: Wed, 16 Dec 2020 16:43:43 +0100 Subject: [PATCH] Contact Diary - Onboarding/Overview polishing (EXPOSUREAPP-4152) (#1913) * Changed styling of nested list item in overview screen * Added visual feedback when pressing the privacy information button on the overview screen * Removed unnecessary menu class, Moved menu handling into fragment * Changed icons in nested items in overview screen * Revert "Removed unnecessary menu class, Moved menu handling into fragment" This reverts commit 885e9e8ab13fbc695987b838827840c5e8197f14. * Added darkmode support for overview sceen items * Linting * Aligned naming conventions * added new line for kolya Co-authored-by: I502720 <axel.herbstreith@sap.com> --- .../ContactDiaryOnboardingFragment.kt | 5 ++- .../overview/ContactDiaryOverviewViewModel.kt | 4 +- .../src/main/res/color/contact_diary_card.xml | 5 +++ .../main/res/drawable/contact_diary_card.xml | 9 +++++ .../contact_diary_onboarding_fragment.xml | 37 ++++++++++++------- .../contact_diary_overview_fragment.xml | 1 - .../include_contact_diary_overview_item.xml | 2 +- ...ude_contact_diary_overview_nested_item.xml | 12 ++++-- .../src/main/res/values-night/colors.xml | 6 +++ .../src/main/res/values/colors.xml | 4 ++ .../src/main/res/values/styles.xml | 4 ++ 11 files changed, 66 insertions(+), 23 deletions(-) create mode 100644 Corona-Warn-App/src/main/res/color/contact_diary_card.xml create mode 100644 Corona-Warn-App/src/main/res/drawable/contact_diary_card.xml diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/onboarding/ContactDiaryOnboardingFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/onboarding/ContactDiaryOnboardingFragment.kt index d4bdaafbc..47e022c42 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/onboarding/ContactDiaryOnboardingFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/onboarding/ContactDiaryOnboardingFragment.kt @@ -24,14 +24,15 @@ class ContactDiaryOnboardingFragment : Fragment(R.layout.contact_diary_onboardin super.onViewCreated(view, savedInstanceState) binding.apply { contactDiaryOnboardingNextButton.setOnClickListener { + vm.onNextButtonClick() } - contactDiaryOnboardingButtonBack.headerButtonBack.buttonIcon.setOnClickListener { + contactDiaryOnboardingHeader.headerButtonBack.buttonIcon.setOnClickListener { vm.onBackButtonPress() } - contactDiaryOnboardingPrivacyInformation.setOnClickListener { + contactDiaryOnboardingPrivacyInformationContainer.setOnClickListener { vm.onPrivacyButtonPress() } } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewViewModel.kt index 2d77b68d9..1e4e346e8 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewViewModel.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewViewModel.kt @@ -58,7 +58,7 @@ class ContactDiaryOverviewViewModel @AssistedInject constructor( .filter { personEncounter -> personEncounter.date == date } .map { personEncounter -> ListItem.Data( - R.drawable.ic_contact_diary_person, + R.drawable.ic_contact_diary_person_item, personEncounter.contactDiaryPerson.fullName ) } @@ -72,7 +72,7 @@ class ContactDiaryOverviewViewModel @AssistedInject constructor( .filter { locationVisit -> locationVisit.date == date } .map { locationVisit -> ListItem.Data( - R.drawable.ic_contact_diary_location, + R.drawable.ic_contact_diary_location_item, locationVisit.contactDiaryLocation.locationName ) } diff --git a/Corona-Warn-App/src/main/res/color/contact_diary_card.xml b/Corona-Warn-App/src/main/res/color/contact_diary_card.xml new file mode 100644 index 000000000..cbcceb1fa --- /dev/null +++ b/Corona-Warn-App/src/main/res/color/contact_diary_card.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:color="@color/colorContactDiaryListItemPressed" android:state_pressed="true" /> <!-- pressed --> + <item android:color="@color/colorContactDiaryListItem" /> <!-- default --> +</selector> \ No newline at end of file diff --git a/Corona-Warn-App/src/main/res/drawable/contact_diary_card.xml b/Corona-Warn-App/src/main/res/drawable/contact_diary_card.xml new file mode 100644 index 000000000..e5eddf6d9 --- /dev/null +++ b/Corona-Warn-App/src/main/res/drawable/contact_diary_card.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/radius_card" /> + <solid android:color="@color/contact_diary_card" /> + </shape> + </item> +</selector> diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_onboarding_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_onboarding_fragment.xml index 873f4afd3..b8f309eda 100644 --- a/Corona-Warn-App/src/main/res/layout/contact_diary_onboarding_fragment.xml +++ b/Corona-Warn-App/src/main/res/layout/contact_diary_onboarding_fragment.xml @@ -9,7 +9,7 @@ android:layout_height="match_parent"> <include - android:id="@+id/contact_diary_onboarding_button_back" + android:id="@+id/contact_diary_onboarding_header" layout="@layout/include_header" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" @@ -26,7 +26,7 @@ app:layout_constraintBottom_toTopOf="@+id/contact_diary_onboarding_next_button" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_button_back"> + app:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_header"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" @@ -159,30 +159,39 @@ app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_privacy_card" /> - - <TextView - android:id="@+id/contact_diary_onboarding_privacy_information" - style="@style/subtitle" - android:layout_width="@dimen/match_constraint" + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/contact_diary_onboarding_privacy_information_container" + style="@style/row" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/spacing_small" - android:focusable="true" - android:text="@string/contact_diary_onboarding_legal_information" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" - app:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_first_divider" - tools:text="@string/contact_diary_onboarding_legal_information" /> + app:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_first_divider"> + + <TextView + android:id="@+id/contact_diary_onboarding_privacy_information" + style="@style/subtitle" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:focusable="true" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + android:text="@string/contact_diary_onboarding_legal_information" + tools:text="@string/contact_diary_onboarding_legal_information" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + <View android:id="@+id/contact_diary_onboarding_second_divider" android:layout_width="@dimen/match_constraint" android:layout_height="@dimen/card_divider" - android:layout_marginTop="@dimen/spacing_small" android:background="?android:attr/listDivider" app:layout_constraintBottom_toBottomOf="parent" bind:layout_constraintEnd_toStartOf="@+id/guideline_end" bind:layout_constraintStart_toStartOf="@+id/guideline_start" - bind:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_privacy_information" /> + bind:layout_constraintTop_toBottomOf="@+id/contact_diary_onboarding_privacy_information_container" /> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_start" diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_overview_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_overview_fragment.xml index 1f84b76c9..92769dadf 100644 --- a/Corona-Warn-App/src/main/res/layout/contact_diary_overview_fragment.xml +++ b/Corona-Warn-App/src/main/res/layout/contact_diary_overview_fragment.xml @@ -55,7 +55,6 @@ android:layout_marginHorizontal="@dimen/spacing_mega_tiny" android:layout_marginTop="@dimen/spacing_small" android:layout_marginBottom="@dimen/spacing_mega_tiny" - android:background="@color/colorSurface1" android:scrollbars="vertical" android:scrollbarSize="@dimen/spacing_mega_tiny" app:layout_constraintBottom_toBottomOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_item.xml b/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_item.xml index 2c3efdd8b..4474a400a 100644 --- a/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_item.xml +++ b/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_item.xml @@ -4,7 +4,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/contact_diary_overview_element_body" - style="@style/cardGrey" + style="@style/contactDiaryCard" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_mega_tiny" diff --git a/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_nested_item.xml b/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_nested_item.xml index 661d46f15..94bbd733f 100644 --- a/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_nested_item.xml +++ b/Corona-Warn-App/src/main/res/layout/include_contact_diary_overview_nested_item.xml @@ -5,7 +5,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/contact_diary_overview_element_nested_body" - style="@style/cardGrey" + style="@style/contactDiaryCard" android:layout_width="match_parent" android:layout_height="wrap_content" android:focusable="true" @@ -18,8 +18,10 @@ android:id="@+id/contact_diary_overview_element_image" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginVertical="@dimen/spacing_tiny" android:layout_marginStart="@dimen/spacing_small" + android:layout_marginTop="@dimen/spacing_tiny" + android:layout_marginBottom="@dimen/spacing_tiny" + android:importantForAccessibility="no" android:scaleType="centerInside" android:src="@drawable/ic_contact_diary_person_item" @@ -29,11 +31,15 @@ <TextView android:id="@+id/contact_diary_overview_element_name" - style="@style/headline5" + style="@style/subtitle" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" + android:layout_marginVertical="@dimen/spacing_tiny" android:layout_marginStart="@dimen/spacing_small" + android:layout_marginEnd="@dimen/spacing_small" android:focusable="true" + android:maxLines="3" + android:ellipsize="end" android:text="Andrea Steinhauer" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/values-night/colors.xml b/Corona-Warn-App/src/main/res/values-night/colors.xml index 2ed70d565..4eed519cd 100644 --- a/Corona-Warn-App/src/main/res/values-night/colors.xml +++ b/Corona-Warn-App/src/main/res/values-night/colors.xml @@ -55,4 +55,10 @@ <!-- Calendar --> <color name="colorCalendarMonthText">#DEFFFFFF</color> + + <!-- Contact Diary --> + <color name="colorContactDiaryListItem">#232324</color> + <color name="colorContactDiaryListItemPressed">#39393A</color> + + </resources> diff --git a/Corona-Warn-App/src/main/res/values/colors.xml b/Corona-Warn-App/src/main/res/values/colors.xml index 972080081..6b1243b30 100644 --- a/Corona-Warn-App/src/main/res/values/colors.xml +++ b/Corona-Warn-App/src/main/res/values/colors.xml @@ -67,4 +67,8 @@ <color name="colorCalendarMonthText">#DE000000</color> <color name="colorCalendarLayoutFocusOn">@color/cwaGrayHighlight</color> <color name="colorCalendarLayoutFocusOff">#F5F5F5</color> + + <!-- Contact Diary --> + <color name="colorContactDiaryListItem">#F5F5F5</color> + <color name="colorContactDiaryListItemPressed">#D7D7D7</color> </resources> diff --git a/Corona-Warn-App/src/main/res/values/styles.xml b/Corona-Warn-App/src/main/res/values/styles.xml index 7670cb51b..eed4ac804 100644 --- a/Corona-Warn-App/src/main/res/values/styles.xml +++ b/Corona-Warn-App/src/main/res/values/styles.xml @@ -353,4 +353,8 @@ <item name="android:textStyle">bold</item> </style> + <style name="contactDiaryCard"> + <item name="android:background">@drawable/contact_diary_card</item> + </style> + </resources> -- GitLab