From ba2d4b770adc23c34db9d34dcf5896efc1267451 Mon Sep 17 00:00:00 2001
From: fynngodau <fynngodau@mailbox.org>
Date: Wed, 28 Apr 2021 12:28:15 +0200
Subject: [PATCH] Add transition to Contact Journal onboarding fragment
 (COMMUNITY) (#2954)

* Add transition to contact diary onboarding fragment

This makes the transition behavior of this fragment the same as the check-in
onboarding fragment.

* Correctly transition when accessing diary intro manually

Co-authored-by: Mohamed <mohamed.metwalli@sap.com>
---
 .../ui/onboarding/ContactDiaryOnboardingFragment.kt       | 5 +++++
 .../ui/overview/ContactDiaryOverviewFragment.kt           | 8 ++++++++
 .../main/res/layout/contact_diary_overview_fragment.xml   | 1 +
 3 files changed, 14 insertions(+)

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 3155f696f..eabc87c54 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
@@ -7,6 +7,7 @@ import androidx.core.net.toUri
 import androidx.fragment.app.Fragment
 import androidx.navigation.fragment.findNavController
 import androidx.navigation.fragment.navArgs
+import com.google.android.material.transition.MaterialSharedAxis
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.contactdiary.ui.ContactDiarySettings
 import de.rki.coronawarnapp.databinding.ContactDiaryOnboardingFragmentBinding
@@ -32,6 +33,10 @@ class ContactDiaryOnboardingFragment : Fragment(R.layout.contact_diary_onboardin
 
     override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
         super.onViewCreated(view, savedInstanceState)
+
+        enterTransition = MaterialSharedAxis(MaterialSharedAxis.Z, true)
+        returnTransition = MaterialSharedAxis(MaterialSharedAxis.Z, false)
+
         binding.apply {
             contactDiaryOnboardingNextButton.setOnClickListener {
                 vm.onNextButtonClick()
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewFragment.kt
index 74c6aa6b9..d08d046da 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/overview/ContactDiaryOverviewFragment.kt
@@ -6,6 +6,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.appcompat.widget.Toolbar
 import androidx.core.app.ShareCompat
 import androidx.fragment.app.Fragment
+import com.google.android.material.transition.MaterialSharedAxis
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.contactdiary.ui.overview.adapter.DiaryOverviewAdapter
 import de.rki.coronawarnapp.contactdiary.util.MarginRecyclerViewDecoration
@@ -26,6 +27,13 @@ class ContactDiaryOverviewFragment : Fragment(R.layout.contact_diary_overview_fr
     private val vm: ContactDiaryOverviewViewModel by cwaViewModels { viewModelFactory }
     private val binding: ContactDiaryOverviewFragmentBinding by viewBindingLazy()
 
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+
+        exitTransition = MaterialSharedAxis(MaterialSharedAxis.Z, true)
+        reenterTransition = MaterialSharedAxis(MaterialSharedAxis.Z, false)
+    }
+
     override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
         super.onViewCreated(view, savedInstanceState)
 
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 140a4c398..503bc98d7 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
@@ -6,6 +6,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:contentDescription="@string/contact_diary_overview_title"
+    android:background="@color/colorBackground"
     android:orientation="vertical">
 
     <androidx.appcompat.widget.Toolbar
-- 
GitLab