diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_crashreporter_overview.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_crashreporter_overview.xml
index 66f38d075fb3cc8c03b5080f5f9293bf3cbcad5c..64f0d33f6a3de65bdc0481f9b59451570d794d51 100644
--- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_crashreporter_overview.xml
+++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_crashreporter_overview.xml
@@ -6,7 +6,7 @@
     android:layout_height="match_parent"
     tools:context=".ui.main.MainActivity">
 
-    <androidx.appcompat.widget.Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbarErrorReport"
         style="@style/Widget.AppCompat.Toolbar"
         android:layout_width="match_parent"
@@ -70,5 +70,4 @@
         tools:context="SettingsCrashReporterFragment"
         tools:listitem="@layout/view_crashreport_list_item" />
 
-
 </androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_keydownload.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_keydownload.xml
index 8140fa2cbc54b5dadbd4998342ed00092755ae04..c05c8054e842dedc6d42bd6289d596470d246b4e 100644
--- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_keydownload.xml
+++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_keydownload.xml
@@ -32,7 +32,7 @@
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintTop_toTopOf="parent" />
 
-            <Switch
+            <com.google.android.material.switchmaterial.SwitchMaterial
                 android:id="@+id/fake_metered_connection_toggle"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_menu.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_menu.xml
index 807e881a75173a9c0229d1a547d2b588ec679a5c..4e8e908b151cdf6396aa2cb127b3293c532de135 100644
--- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_menu.xml
+++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_menu.xml
@@ -4,7 +4,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <androidx.appcompat.widget.Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbar"
         style="@style/Widget.AppCompat.Toolbar"
         android:layout_width="match_parent"
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/datadonation/survey/consent/SurveyConsentFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/datadonation/survey/consent/SurveyConsentFragment.kt
index 2042fb57bd8372625789e06181417b388d08dea8..9935ba7d6b212466f85504dfe7389aa59618267a 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/datadonation/survey/consent/SurveyConsentFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/datadonation/survey/consent/SurveyConsentFragment.kt
@@ -8,7 +8,7 @@ import androidx.navigation.fragment.navArgs
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.SurveyConsentFragmentBinding
 import de.rki.coronawarnapp.util.DialogHelper
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.observe2
@@ -48,7 +48,7 @@ class SurveyConsentFragment : Fragment(R.layout.survey_consent_fragment), AutoIn
                     activity?.onBackPressed()
 
                 is SurveyConsentNavigationEvents.NavigateWeb -> {
-                    ExternalActionHelper.openUrl(this, event.url)
+                    openUrl(event.url)
                     popBackStack()
                 }
                 is SurveyConsentNavigationEvents.NavigateToMoreInformationScreen -> {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsFragment.kt
index 283bcea25957d8972633835d4f8225bcbf45c2dc..94891a7dd1ab9f2bbb43d908feab2e1053fee2ba 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsFragment.kt
@@ -9,7 +9,7 @@ import androidx.recyclerview.widget.DefaultItemAnimator
 import androidx.recyclerview.widget.LinearLayoutManager
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.TracingDetailsFragmentLayoutBinding
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.getDrawableCompat
 import de.rki.coronawarnapp.util.lists.diffutil.update
@@ -58,10 +58,7 @@ class TracingDetailsFragment : Fragment(R.layout.tracing_details_fragment_layout
                 is TracingDetailsNavigationEvents.NavigateToSurveyConsentFragment -> doNavigate(
                     TracingDetailsFragmentDirections.actionRiskDetailsFragmentToSurveyConsentFragment(it.type)
                 )
-                is TracingDetailsNavigationEvents.NavigateToSurveyUrlInBrowser -> ExternalActionHelper.openUrl(
-                    this,
-                    it.url
-                )
+                is TracingDetailsNavigationEvents.NavigateToSurveyUrlInBrowser -> openUrl(it.url)
             }
         }
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/settings/SettingsTracingFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/settings/SettingsTracingFragment.kt
index 3c2da3aa538b007d7881ed8f4e521e02460f50af..e6c4f67d8b7e00f2d1c690da682d74cf9ec0b6fa 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/settings/SettingsTracingFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/tracing/ui/settings/SettingsTracingFragment.kt
@@ -12,7 +12,7 @@ import de.rki.coronawarnapp.nearby.InternalExposureNotificationClient
 import de.rki.coronawarnapp.tracing.ui.TracingConsentDialog
 import de.rki.coronawarnapp.tracing.ui.settings.SettingsTracingFragmentViewModel.Event
 import de.rki.coronawarnapp.util.DialogHelper
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openDeviceSettings
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.observe2
@@ -30,7 +30,7 @@ import javax.inject.Inject
 class SettingsTracingFragment : Fragment(R.layout.fragment_settings_tracing), AutoInject {
 
     @Inject lateinit var viewModelFactory: CWAViewModelFactoryProvider.Factory
-    private val vm: SettingsTracingFragmentViewModel by cwaViewModels(
+    private val viewModel: SettingsTracingFragmentViewModel by cwaViewModels(
         ownerProducer = { requireActivity().viewModelStore },
         factoryProducer = { viewModelFactory }
     )
@@ -40,10 +40,10 @@ class SettingsTracingFragment : Fragment(R.layout.fragment_settings_tracing), Au
     override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
         super.onViewCreated(view, savedInstanceState)
 
-        vm.loggingPeriod.observe2(this) {
+        viewModel.loggingPeriod.observe2(this) {
             binding.loggedPeriod = it
         }
-        vm.tracingSettingsState.observe2(this) { state ->
+        viewModel.tracingSettingsState.observe2(this) { state ->
             binding.settingsTracingState = state
 
             binding.switchRow.apply {
@@ -58,24 +58,22 @@ class SettingsTracingFragment : Fragment(R.layout.fragment_settings_tracing), Au
             }
         }
 
-        vm.events.observe2(this) {
+        viewModel.events.observe2(this) {
             when (it) {
                 is Event.RequestPermissions -> it.permissionRequest.invoke(requireActivity())
-                Event.ManualCheckingDialog -> showManualCheckingRequiredDialog()
-                is Event.TracingConsentDialog -> {
-                    TracingConsentDialog(requireContext()).show(
-                        onConsentGiven = { it.onConsentResult(true) },
-                        onConsentDeclined = { it.onConsentResult(false) }
-                    )
-                }
+                is Event.ManualCheckingDialog -> showManualCheckingRequiredDialog()
+                is Event.TracingConsentDialog -> TracingConsentDialog(requireContext()).show(
+                    onConsentGiven = { it.onConsentResult(true) },
+                    onConsentDeclined = { it.onConsentResult(false) }
+                )
             }
         }
 
-        vm.isTracingSwitchChecked.observe2(this) { checked ->
+        viewModel.isTracingSwitchChecked.observe2(this) { checked ->
             binding.switchRow.setChecked(checked)
         }
 
-        vm.ensErrorEvents.observe2(this) { error ->
+        viewModel.ensErrorEvents.observe2(this) { error ->
             error.toErrorDialogBuilder(requireContext()).show()
         }
 
@@ -88,42 +86,31 @@ class SettingsTracingFragment : Fragment(R.layout.fragment_settings_tracing), Au
     }
 
     override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
-        vm.handleActivityResult(requestCode, resultCode, data)
+        viewModel.handleActivityResult(requestCode, resultCode, data)
     }
 
-    private fun setButtonOnClickListener() {
-
-        binding.toolbar.setNavigationOnClickListener {
+    private fun setButtonOnClickListener() = with(binding) {
+        toolbar.setNavigationOnClickListener {
             popBackStack()
         }
 
-        val bluetooth = binding.settingsTracingStatusBluetooth.tracingStatusCardButton
-        bluetooth.setOnClickListener {
-            ExternalActionHelper.toMainSettings(requireContext())
+        settingsTracingStatusBluetooth.tracingStatusCardButton.setOnClickListener {
+            openDeviceSettings()
         }
 
-        val location = binding.settingsTracingStatusLocation.tracingStatusCardButton
-        location.setOnClickListener {
-            ExternalActionHelper.toMainSettings(requireContext())
+        settingsTracingStatusLocation.tracingStatusCardButton.setOnClickListener {
+            openDeviceSettings()
         }
 
-        val interoperability = binding.settingsInteroperabilityRow
-        interoperability.setOnClickListener {
-            navigateToInteroperability()
+        settingsInteroperabilityRow.setOnClickListener {
+            doNavigate(
+                SettingsTracingFragmentDirections.actionSettingsTracingFragmentToInteropCountryConfigurationFragment()
+            )
         }
     }
 
-    private fun onTracingToggled(isChecked: Boolean) {
-        if (isChecked)
-            vm.turnTracingOn()
-        else
-            vm.turnTracingOff()
-    }
-
-    private fun navigateToInteroperability() {
-        doNavigate(
-            SettingsTracingFragmentDirections.actionSettingsTracingFragmentToInteropCountryConfigurationFragment()
-        )
+    private fun onTracingToggled(isChecked: Boolean) = with(viewModel) {
+        if (isChecked) turnTracingOn() else turnTracingOff()
     }
 
     private fun showManualCheckingRequiredDialog() {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationAboutFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationAboutFragment.kt
index 82aed69cd82abcdeb1b657b78858ae9b78cff7f3..60ef5d4f7799480fe64e79aa4ec4ab9511261f73 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationAboutFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationAboutFragment.kt
@@ -8,7 +8,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationAboutBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -42,7 +42,7 @@ class InformationAboutFragment : Fragment(R.layout.fragment_information_about) {
 
     private fun setButtonOnClickListener() {
         binding.informationAboutHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationContactFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationContactFragment.kt
index 34ca2c6cf8bb9e469804f2fd13cb75209129f210..ad4112ba454d8b4f4c8bdcfc6badf2684ece83a2 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationContactFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationContactFragment.kt
@@ -6,9 +6,9 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationContactBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.callPhone
 import de.rki.coronawarnapp.util.linkifyPhoneNumbers
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -32,15 +32,13 @@ class InformationContactFragment : Fragment(R.layout.fragment_information_contac
 
     private fun setButtonOnClickListener() {
         binding.informationContactHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
         binding.informationContactNavigationRowPhone.navigationRow.setOnClickListener {
-            val number = getString(R.string.information_contact_phone_call_number)
-            ExternalActionHelper.call(this, number)
+            callPhone(getString(R.string.information_contact_phone_call_number))
         }
         binding.informationContactNavigationRowInternationalPhone.navigationRow.setOnClickListener {
-            val number = getString(R.string.information_contact_button_international_phone)
-            ExternalActionHelper.call(this, number)
+            callPhone(getString(R.string.information_contact_button_international_phone))
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationFragment.kt
index c18bdc0f69407b190ab0c8a18fe4d7ed2246c77c..0f9f90ed9879a3fd04452c987e85dd5e13f905ed 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationFragment.kt
@@ -9,11 +9,11 @@ import androidx.fragment.app.Fragment
 import com.google.android.gms.nearby.exposurenotification.ExposureNotificationClient
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.setGone
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
@@ -95,7 +95,7 @@ class InformationFragment : Fragment(R.layout.fragment_information), AutoInject
             )
         }
         binding.informationHelp.mainRow.setOnClickListener {
-            ExternalActionHelper.openUrl(this, requireContext().getString(R.string.main_about_link))
+            openUrl(getString(R.string.main_about_link))
         }
         binding.informationLegal.mainRow.setOnClickListener {
             doNavigate(
@@ -113,7 +113,7 @@ class InformationFragment : Fragment(R.layout.fragment_information), AutoInject
             )
         }
         binding.informationHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
         binding.informationRelease.mainRow.setOnClickListener {
             doNavigate(
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationLegalFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationLegalFragment.kt
index 560b64eb7029a5b307952a82fcac44b6d9fce725..2bf01043795a3445000392db1574221f2febc2be 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationLegalFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationLegalFragment.kt
@@ -7,8 +7,8 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationLegalBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.util.convertToHyperlink
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -41,7 +41,7 @@ class InformationLegalFragment : Fragment(R.layout.fragment_information_legal) {
 
     private fun setButtonOnClickListener() {
         binding.informationLegalHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTechnicalFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTechnicalFragment.kt
index 0a98ff88bfbcd7352f9b0d3260b3116e8f069b5d..fe10de37f7a1676275f86ef90b05e54e3dc4f0b6 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTechnicalFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTechnicalFragment.kt
@@ -6,7 +6,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationTechnicalBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -31,7 +31,7 @@ class InformationTechnicalFragment : Fragment(R.layout.fragment_information_tech
 
     private fun setButtonOnClickListener() {
         binding.informationTechnicalHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTermsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTermsFragment.kt
index 5c0046ebea1ee3ed37a93482be699babbc0955c9..63c99ca82f865f7f0e0484a0a522e1146e37dbba 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTermsFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationTermsFragment.kt
@@ -6,7 +6,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInformationTermsBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -28,7 +28,7 @@ class InformationTermsFragment : Fragment(R.layout.fragment_information_terms) {
 
     private fun setButtonOnClickListener() {
         binding.informationTermsHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/interoperability/InteroperabilityConfigurationFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/interoperability/InteroperabilityConfigurationFragment.kt
index 29b4061f30531d9941187388a30e020f54a208e7..28cd0f394b7dc29ef1d634efc52b4c55a9b9d254 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/interoperability/InteroperabilityConfigurationFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/interoperability/InteroperabilityConfigurationFragment.kt
@@ -9,10 +9,10 @@ import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.CoronaWarnApplication
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentInteroperabilityConfigurationBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.util.ConnectivityHelper
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
 import de.rki.coronawarnapp.util.viewmodel.cwaViewModels
@@ -56,7 +56,7 @@ class InteroperabilityConfigurationFragment :
 
         vm.navigateBack.observe2(this) {
             if (it) {
-                (requireActivity() as MainActivity).goBack()
+                popBackStack()
             }
         }
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainActivity.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainActivity.kt
index 4c29cfed00bbd859dca32876331190bfd1ce6723..159a0b9d53c42f3a9e8c41688640d83cc3afa72f 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainActivity.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainActivity.kt
@@ -259,11 +259,4 @@ class MainActivity : AppCompatActivity(), HasAndroidInjector {
             data
         )
     }
-
-    /**
-     * Function is called from back buttons in fragments.
-     */
-    fun goBack() {
-        onBackPressed()
-    }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeFragment.kt
index bda8566ff07baf6857daa64eafd76c1da555013b..1e380642608d495ef7211d55284c53ebd70c97c0 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeFragment.kt
@@ -7,6 +7,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import androidx.navigation.NavGraph
 import androidx.navigation.fragment.findNavController
+import androidx.navigation.ui.onNavDestinationSelected
 import androidx.recyclerview.widget.DefaultItemAnimator
 import androidx.recyclerview.widget.LinearLayoutManager
 import de.rki.coronawarnapp.R
@@ -15,9 +16,10 @@ import de.rki.coronawarnapp.coronatest.type.CoronaTest
 import de.rki.coronawarnapp.databinding.HomeFragmentLayoutBinding
 import de.rki.coronawarnapp.tracing.ui.TracingExplanationDialog
 import de.rki.coronawarnapp.ui.main.home.popups.DeviceTimeIncorrectDialog
+import de.rki.coronawarnapp.util.CWADebug
 import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import de.rki.coronawarnapp.util.DialogHelper
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.errors.RecoveryByResetDialogFactory
 import de.rki.coronawarnapp.util.lists.decorations.TopBottomPaddingDecorator
@@ -44,7 +46,6 @@ class HomeFragment : Fragment(R.layout.home_fragment_layout), AutoInject {
 
     val binding: HomeFragmentLayoutBinding by viewBindingLazy()
 
-    @Inject lateinit var homeMenu: HomeMenu
     @Inject lateinit var tracingExplanationDialog: TracingExplanationDialog
     @Inject lateinit var deviceTimeIncorrectDialog: DeviceTimeIncorrectDialog
 
@@ -53,7 +54,10 @@ class HomeFragment : Fragment(R.layout.home_fragment_layout), AutoInject {
     override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
         super.onViewCreated(view, savedInstanceState)
 
-        homeMenu.setupMenu(binding.toolbar)
+        with(binding.toolbar) {
+            menu.findItem(R.id.test_nav_graph).isVisible = CWADebug.isDeviceForTestersBuild
+            setOnMenuItemClickListener { it.onNavDestinationSelected(findNavController()) }
+        }
 
         viewModel.tracingHeaderState.observe2(this) {
             binding.tracingHeader = it
@@ -79,11 +83,11 @@ class HomeFragment : Fragment(R.layout.home_fragment_layout), AutoInject {
         }
 
         viewModel.openFAQUrlEvent.observe2(this) {
-            ExternalActionHelper.openUrl(this@HomeFragment, getString(R.string.main_about_link))
+            openUrl(getString(R.string.main_about_link))
         }
 
         viewModel.openIncompatibleEvent.observe2(this) {
-            ExternalActionHelper.openUrl(this@HomeFragment, getString(R.string.incompatible_link))
+            openUrl(getString(R.string.incompatible_link))
         }
 
         viewModel.openTraceLocationOrganizerFlow.observe2(this) {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeMenu.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeMenu.kt
deleted file mode 100644
index 4189f6bd9082e22bf122324b1e4f19159be4b696..0000000000000000000000000000000000000000
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/home/HomeMenu.kt
+++ /dev/null
@@ -1,49 +0,0 @@
-package de.rki.coronawarnapp.ui.main.home
-
-import android.view.MenuItem.SHOW_AS_ACTION_ALWAYS
-import androidx.appcompat.widget.Toolbar
-import androidx.navigation.NavController
-import androidx.navigation.fragment.findNavController
-import de.rki.coronawarnapp.R
-import de.rki.coronawarnapp.ui.doNavigate
-import de.rki.coronawarnapp.util.CWADebug
-import javax.inject.Inject
-
-class HomeMenu @Inject constructor(
-    private val homeFragment: HomeFragment
-) {
-
-    private val navController: NavController
-        get() = homeFragment.findNavController()
-
-    fun setupMenu(toolbar: Toolbar) = toolbar.apply {
-        inflateMenu(R.menu.menu_main)
-        menu.findItem(R.id.menu_test).isVisible = CWADebug.isDeviceForTestersBuild
-        menu.findItem(R.id.menu_share).setShowAsAction(SHOW_AS_ACTION_ALWAYS)
-        setOnMenuItemClickListener {
-            return@setOnMenuItemClickListener when (it.itemId) {
-                R.id.menu_share -> {
-                    navController.doNavigate(HomeFragmentDirections.actionMainFragmentToMainSharingFragment())
-                    true
-                }
-                R.id.menu_help -> {
-                    navController.doNavigate(HomeFragmentDirections.actionMainFragmentToMainOverviewFragment())
-                    true
-                }
-                R.id.menu_information -> {
-                    navController.doNavigate(HomeFragmentDirections.actionMainFragmentToInformationFragment())
-                    true
-                }
-                R.id.menu_settings -> {
-                    navController.doNavigate(HomeFragmentDirections.actionMainFragmentToSettingsFragment())
-                    true
-                }
-                R.id.menu_test -> {
-                    navController.doNavigate(HomeFragmentDirections.actionMainFragmentToTestNavGraph())
-                    true
-                }
-                else -> homeFragment.onOptionsItemSelected(it)
-            }
-        }
-    }
-}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/overview/MainOverviewFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/overview/MainOverviewFragment.kt
index 0a4dce381da1918101babbfd72f70007bb19af3e..4696cb1367faff604b6775589543b6b1d58769e0 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/overview/MainOverviewFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/overview/MainOverviewFragment.kt
@@ -6,7 +6,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentMainOverviewBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -32,7 +32,7 @@ class MainOverviewFragment : Fragment(R.layout.fragment_main_overview) {
 
     private fun setButtonOnClickListener() {
         binding.mainOverviewHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/share/MainShareFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/share/MainShareFragment.kt
index baf25b71c87cb06f8833dfa9417be4304de2d135..0fb6b9eaf491b211acfac1505e5975c3edd6561f 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/share/MainShareFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/share/MainShareFragment.kt
@@ -6,8 +6,8 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentMainShareBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.shareText
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 
 /**
@@ -24,10 +24,10 @@ class MainShareFragment : Fragment(R.layout.fragment_main_share) {
 
     private fun setButtonOnClickListener() {
         binding.mainShareButton.setOnClickListener {
-            ExternalActionHelper.shareText(this, getString(R.string.main_share_message), null)
+            shareText(getString(R.string.main_share_message), null)
         }
         binding.mainShareHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingFragment.kt
index 38f0c37dfd467790e03ca074f4f6f287c57c30a2..dc080acf55a7faf3509763a87fe63f2f02224ada 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingFragment.kt
@@ -7,7 +7,7 @@ import androidx.annotation.VisibleForTesting
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentOnboardingBinding
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import java.util.Locale
@@ -41,7 +41,7 @@ class OnboardingFragment : Fragment(R.layout.fragment_onboarding) {
     }
 
     private fun openEasyLanguageLink() {
-        ExternalActionHelper.openUrl(this, getString(R.string.onboarding_tracing_easy_language_explanation_url))
+        openUrl(getString(R.string.onboarding_tracing_easy_language_explanation_url))
     }
 
     override fun onResume() {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterFragment.kt
index a38a3c447d166eadeba49cda769ed2c204a4e0f1..0d7b28cd67eeb742ea1b1dec0b942821e4602ccf 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterFragment.kt
@@ -151,7 +151,7 @@ class QrCodePosterFragment : Fragment(R.layout.qr_code_poster_fragment), AutoInj
                 getString(R.string.app_name),
                 PrintingAdapter(file),
                 PrintAttributes.Builder()
-                    .setMediaSize(PrintAttributes.MediaSize.ISO_A3)
+                    .setMediaSize(PrintAttributes.MediaSize.ISO_A4)
                     .build()
             )
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterViewModel.kt
index 4e7facefc6fdff6626a1fece1e42fee551241d37..4f903050f79ca8c91daa2885f382f8ff21f1fd2e 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterViewModel.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/presencetracing/organizer/poster/QrCodePosterViewModel.kt
@@ -53,10 +53,12 @@ class QrCodePosterViewModel @AssistedInject constructor(
             val file = File(directory, "cwa-qr-code.pdf")
 
             val weakView = weakViewRef.get() ?: return@launch // View is not existing anymore
-            val pageInfo = PdfDocument.PageInfo.Builder(weakView.width, weakView.height, 1).create()
-
+            val pageInfo = PdfDocument.PageInfo.Builder(A4_WIDTH, A4_HEIGHT, 1).create()
             PdfDocument().apply {
                 startPage(pageInfo).apply {
+                    val sx = A4_WIDTH.toFloat() / weakView.width
+                    val sy = A4_HEIGHT.toFloat() / weakView.height
+                    canvas.scale(sx, sy)
                     weakView.draw(canvas)
                     finishPage(this)
                 }
@@ -70,7 +72,7 @@ class QrCodePosterViewModel @AssistedInject constructor(
             sharingIntent.postValue(fileSharing.getFileIntentProvider(file, traceLocation().description))
         } catch (e: Exception) {
             Timber.d(e, "Creating pdf failed")
-            e.report(ExceptionCategory.INTERNAL)
+            e.report(ExceptionCategory.UI)
         }
     }
 
@@ -96,7 +98,7 @@ class QrCodePosterViewModel @AssistedInject constructor(
         } catch (e: Exception) {
             Timber.d(e, "Generating poster failed")
             posterLiveData.postValue(Poster())
-            e.report(ExceptionCategory.INTERNAL)
+            e.report(ExceptionCategory.UI)
         }
     }
 
@@ -108,6 +110,15 @@ class QrCodePosterViewModel @AssistedInject constructor(
             traceLocationId: Long
         ): QrCodePosterViewModel
     }
+
+    companion object {
+        /**
+         * A4 size in PostScript
+         * @see <a href="https://www.cl.cam.ac.uk/~mgk25/iso-paper-ps.txt">Iso-paper-ps</a>
+         */
+        private const val A4_WIDTH = 595 // PostScript
+        private const val A4_HEIGHT = 842 // PostScript
+    }
 }
 
 data class Poster(
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsResetFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsResetFragment.kt
index c1af5db433504f3806510a07a03b27022575ffdd..8cf49a835c079029b9757ac50f57a0e6c745da50 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsResetFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsResetFragment.kt
@@ -7,12 +7,12 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentSettingsResetBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.ui.onboarding.OnboardingActivity
 import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import de.rki.coronawarnapp.util.DialogHelper
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
 import de.rki.coronawarnapp.util.viewmodel.cwaViewModels
@@ -38,7 +38,7 @@ class SettingsResetFragment : Fragment(R.layout.fragment_settings_reset), AutoIn
         vm.clickEvent.observe2(this) {
             when (it) {
                 is SettingsEvents.ResetApp -> confirmReset()
-                is SettingsEvents.GoBack -> (activity as MainActivity).goBack()
+                is SettingsEvents.GoBack -> popBackStack()
                 is SettingsEvents.GoToOnboarding -> navigateToOnboarding()
             }
         }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/backgroundpriority/SettingsBackgroundPriorityFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/backgroundpriority/SettingsBackgroundPriorityFragment.kt
index 4edfee1a4a158af5c9032ac4a3fc90680691df13..e4ae1166f822ebd64404d4962920936c232b4d32 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/backgroundpriority/SettingsBackgroundPriorityFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/backgroundpriority/SettingsBackgroundPriorityFragment.kt
@@ -10,6 +10,7 @@ import de.rki.coronawarnapp.ui.base.startActivitySafely
 import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
 import de.rki.coronawarnapp.util.viewmodel.cwaViewModels
@@ -60,7 +61,7 @@ class SettingsBackgroundPriorityFragment : Fragment(R.layout.fragment_settings_b
 
         // back navigation
         binding.settingsBackgroundPriorityHeader.headerButtonBack.buttonIcon.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/notifications/NotificationSettingsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/notifications/NotificationSettingsFragment.kt
index bd9eac9b26b758bca23ed18cc867bd19a15fc84b..f5f75de0b1166b3b9144a1702a28cd4252b47fb0 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/notifications/NotificationSettingsFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/notifications/NotificationSettingsFragment.kt
@@ -6,7 +6,7 @@ import android.view.accessibility.AccessibilityEvent
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentSettingsNotificationsBinding
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openAppNotificationSettings
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.observe2
 import de.rki.coronawarnapp.util.ui.popBackStack
@@ -53,7 +53,7 @@ class NotificationSettingsFragment :
             popBackStack()
         }
         binding.settingsNotificationsCard.tracingStatusCardButton.setOnClickListener {
-            ExternalActionHelper.toNotifications(requireContext())
+            requireContext().openAppNotificationSettings()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragment.kt
index 93995c1038b075335d493a2b3575fdde83d3806a..e2c60ec83049bbe65c2fd4529019e658ff61badd 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragment.kt
@@ -8,9 +8,9 @@ import androidx.navigation.fragment.findNavController
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentSettingsBinding
 import de.rki.coronawarnapp.ui.doNavigate
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
 import de.rki.coronawarnapp.util.viewmodel.cwaViewModels
@@ -87,7 +87,7 @@ class SettingsFragment : Fragment(R.layout.fragment_settings), AutoInject {
         }
 
         goBack.setOnClickListener {
-            (activity as MainActivity).goBack()
+            popBackStack()
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/fragment/SubmissionContactFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/fragment/SubmissionContactFragment.kt
index 1cfcb3edcb2063e3b657184d3ad01764fa00d885..7d6e8d04fd17a57cef8474283fc89e2ef550b1d1 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/fragment/SubmissionContactFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/fragment/SubmissionContactFragment.kt
@@ -9,7 +9,7 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentSubmissionContactBinding
 import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionContactViewModel
 import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionNavigationEvents
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.callPhone
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.linkifyPhoneNumbers
 import de.rki.coronawarnapp.util.ui.doNavigate
@@ -58,13 +58,11 @@ class SubmissionContactFragment : Fragment(R.layout.fragment_submission_contact)
         }
         binding.includeSubmissionContact.submissionContactNavigationRowPhone.navigationRow
             .setOnClickListener {
-                val number = getString(R.string.submission_contact_number_display)
-                ExternalActionHelper.call(this, number)
+                callPhone(getString(R.string.submission_contact_number_display))
             }
         binding.includeSubmissionContact.submissionContactNavigationRowInternationalPhone.navigationRow
             .setOnClickListener {
-                val number = getString(R.string.submission_contact_button_international_phone)
-                ExternalActionHelper.call(this, number)
+                callPhone(getString(R.string.submission_contact_button_international_phone))
             }
         binding.submissionContactButtonEnter.setOnClickListener {
             viewModel.onEnterTanPressed()
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/tan/SubmissionTanFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/tan/SubmissionTanFragment.kt
index 083d67a6601505ff81f9c9a7c65b992b8cb8b0f1..eaad5f6f953b567e3e7ffa71353c81a6e9abfe9b 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/tan/SubmissionTanFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/tan/SubmissionTanFragment.kt
@@ -11,13 +11,13 @@ import de.rki.coronawarnapp.exception.http.BadRequestException
 import de.rki.coronawarnapp.exception.http.CwaClientError
 import de.rki.coronawarnapp.exception.http.CwaServerError
 import de.rki.coronawarnapp.exception.http.CwaWebException
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.ui.submission.ApiRequestState
 import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionNavigationEvents
 import de.rki.coronawarnapp.util.DialogHelper
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.setGone
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
@@ -102,7 +102,9 @@ class SubmissionTanFragment : Fragment(R.layout.fragment_submission_tan), AutoIn
         binding.submissionTanRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT)
     }
 
-    private fun goBack() = (activity as MainActivity).goBack()
+    private fun goBack() {
+        popBackStack()
+    }
 
     private fun buildErrorDialog(exception: CwaWebException): DialogHelper.DialogInstance {
         return when (exception) {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentFragment.kt
index 6fbff88ab60419f4f7ff9ddd8ec708d5c73736a6..6c0ba694a688232986ddc22069c15cdcd906d58f 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentFragment.kt
@@ -8,10 +8,10 @@ import androidx.navigation.fragment.navArgs
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.bugreporting.ui.toErrorDialogBuilder
 import de.rki.coronawarnapp.databinding.FragmentSubmissionYourConsentBinding
-import de.rki.coronawarnapp.ui.main.MainActivity
 import de.rki.coronawarnapp.util.di.AutoInject
 import de.rki.coronawarnapp.util.ui.doNavigate
 import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.popBackStack
 import de.rki.coronawarnapp.util.ui.viewBindingLazy
 import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
 import de.rki.coronawarnapp.util.viewmodel.cwaViewModelsAssisted
@@ -56,7 +56,7 @@ class SubmissionYourConsentFragment : Fragment(R.layout.fragment_submission_your
 
         vm.clickEvent.observe2(this) {
             when (it) {
-                is SubmissionYourConsentEvents.GoBack -> (activity as MainActivity).goBack()
+                is SubmissionYourConsentEvents.GoBack -> popBackStack()
                 is SubmissionYourConsentEvents.GoLegal -> doNavigate(
                     SubmissionYourConsentFragmentDirections
                         .actionSubmissionYourConsentFragmentToInformationPrivacyFragment()
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/ExternalActionHelper.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/ExternalActionHelper.kt
index d9b1aa103170b0b6a62bd3fda04f0355f7e3ddb6..acc91f7c4a9131e70a02d8719b1a9bb18967f3e8 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/ExternalActionHelper.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/ExternalActionHelper.kt
@@ -15,18 +15,14 @@ import de.rki.coronawarnapp.exception.reporting.report
  *
  */
 object ExternalActionHelper {
-    private val TAG: String? = ExternalActionHelper::class.simpleName
-
     /**
      * Opens the share default overlay to provide the Corona-Warn-App installation link
-     *
-     * @param fragment
      * @param text
      * @param title
      */
-    fun shareText(fragment: Fragment, text: String, title: String?) {
+    fun Fragment.shareText(text: String, title: String?) {
         try {
-            fragment.startActivity(
+            startActivity(
                 Intent.createChooser(
                     Intent().apply {
                         action = Intent.ACTION_SEND
@@ -47,17 +43,12 @@ object ExternalActionHelper {
 
     /**
      * Opens the client default phone app and inserts a given number
-     *
-     * @param fragment
-     * @param uri
+     * @param phoneNumber
      */
-    fun call(fragment: Fragment, uri: String) {
+    fun Fragment.callPhone(phoneNumber: String) {
         try {
-            fragment.startActivity(
-                Intent(
-                    Intent.ACTION_DIAL,
-                    Uri.parse("tel:$uri")
-                )
+            startActivity(
+                Intent(Intent.ACTION_DIAL, Uri.parse("tel:$phoneNumber"))
             )
         } catch (exception: Exception) {
             // catch generic exception on call
@@ -70,17 +61,12 @@ object ExternalActionHelper {
 
     /**
      * Opens a given url in the client default browser
-     *
-     * @param fragment
      * @param url
      */
-    fun openUrl(fragment: Fragment, url: String) {
+    fun Fragment.openUrl(url: String) {
         try {
-            fragment.startActivity(
-                Intent(
-                    Intent.ACTION_VIEW,
-                    Uri.parse(url)
-                )
+            startActivity(
+                Intent(Intent.ACTION_VIEW, Uri.parse(url))
             )
         } catch (exception: Exception) {
             // catch generic exception on url navigation
@@ -92,47 +78,25 @@ object ExternalActionHelper {
         }
     }
 
-    /**
-     * Navigate the user to the os connection settings.
-     *
-     * @param context
-     */
-    fun toConnections(context: Context) {
-        try {
-            val intent = Intent(Settings.ACTION_WIRELESS_SETTINGS)
-            context.startActivity(intent)
-        } catch (exception: Exception) {
-            // catch generic exception on settings navigation
-            // most likely due to device / rom specific intent issue
-            ExternalActionException(exception).report(
-                ExceptionCategory.UI
-            )
-        }
-    }
-
     /**
      * Navigate the user to the os notification settings.
-     *
-     * @param context
      */
-    fun toNotifications(context: Context) {
+    fun Context.openAppNotificationSettings() {
         try {
-            val intent = Intent()
-            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
-                intent.action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
-                intent.putExtra(
-                    Settings.EXTRA_APP_PACKAGE,
-                    context.packageName
-                )
-            } else {
-                intent.action = "android.settings.APP_NOTIFICATION_SETTINGS"
-                intent.putExtra(
-                    "app_package",
-                    context.packageName
-                )
-                intent.putExtra("app_uid", context.applicationInfo.uid)
+            val intent = Intent().apply {
+                when {
+                    Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> {
+                        action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
+                        putExtra(Settings.EXTRA_APP_PACKAGE, packageName)
+                    }
+                    else -> {
+                        action = "android.settings.APP_NOTIFICATION_SETTINGS"
+                        putExtra("app_package", packageName)
+                        putExtra("app_uid", applicationInfo.uid)
+                    }
+                }
             }
-            context.startActivity(intent)
+            startActivity(intent)
         } catch (exception: Exception) {
             // catch generic exception on settings navigation
             // most likely due to device / rom specific intent issue
@@ -145,13 +109,11 @@ object ExternalActionHelper {
     /**
      * Navigate the user to the os settings as navigation to
      * bluetooth settings directly is not reliable for all devices
-     *
-     * @param context
      */
-    fun toMainSettings(context: Context) {
+    fun Fragment.openDeviceSettings() {
         try {
             val intent = Intent(Settings.ACTION_SETTINGS)
-            context.startActivity(intent)
+            startActivity(intent)
         } catch (exception: Exception) {
             // catch generic exception on settings navigation
             // most likely due to device / rom specific intent issue
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/errors/RecoveryByResetDialogFactory.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/errors/RecoveryByResetDialogFactory.kt
index c8804aaad1d50729150f7a593bea8d8c80356665..f94c3128088bbd190a0f51c516243bc359fee925 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/errors/RecoveryByResetDialogFactory.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/errors/RecoveryByResetDialogFactory.kt
@@ -5,7 +5,7 @@ import androidx.annotation.StringRes
 import androidx.appcompat.app.AlertDialog
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.R
-import de.rki.coronawarnapp.util.ExternalActionHelper
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
 
 class RecoveryByResetDialogFactory(private val fragment: Fragment) {
 
@@ -27,7 +27,7 @@ class RecoveryByResetDialogFactory(private val fragment: Fragment) {
             .create()
         dialog.show()
         dialog.getButton(AlertDialog.BUTTON_NEUTRAL)?.setOnClickListener {
-            ExternalActionHelper.openUrl(fragment, context.getString(detailsLink))
+            fragment.openUrl(context.getString(detailsLink))
         }
     }
 }
diff --git a/Corona-Warn-App/src/main/res/layout/analytics_ppa_userinfo_input_fragment.xml b/Corona-Warn-App/src/main/res/layout/analytics_ppa_userinfo_input_fragment.xml
index a729a715dec1edf4577bd2c4a2331ae868b0b139..a4edac6db8479de1a38df269c66eedf71bdccaed 100644
--- a/Corona-Warn-App/src/main/res/layout/analytics_ppa_userinfo_input_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/analytics_ppa_userinfo_input_fragment.xml
@@ -6,7 +6,7 @@
     android:layout_height="match_parent"
     android:orientation="vertical">
 
-    <androidx.appcompat.widget.Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbar"
         style="@style/CWAToolbar.Close"
         android:layout_width="match_parent"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_comment_info_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_comment_info_fragment.xml
index b2d7b3114fcaeacdf31acd056688e643154c1a15..0a0d9d9b17d8448ff87c6a633d02331d121f87fb 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_comment_info_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_comment_info_fragment.xml
@@ -5,13 +5,12 @@
     android:layout_height="wrap_content"
     android:orientation="vertical">
 
-    <Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbar"
-        style="@style/CWAToolbar"
+        style="@style/CWAToolbar.Close"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:layout_marginStart="8dp"
-        android:navigationIcon="@drawable/ic_close" />
+        android:layout_marginStart="8dp" />
 
     <ScrollView
         android:layout_width="match_parent"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_day_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_day_fragment.xml
index 101c40867eddf5c040ebc1710c1c2a1bb715c77b..5e28a5a9d8b813d544f754488e757ae5d0b95163 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_day_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_day_fragment.xml
@@ -9,7 +9,7 @@
         android:layout_height="match_parent"
         android:focusable="true">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/contact_diary_day_header"
             style="@style/CWAToolbar.BackArrow"
             android:layout_width="0dp"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_edit_locations_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_edit_locations_fragment.xml
index 72bfa17005cd72bc5645155e10d221a8b56c88c9..9006453c6aa2e54b871fc94490d1b04cc31b4a24 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_edit_locations_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_edit_locations_fragment.xml
@@ -9,7 +9,7 @@
         android:layout_height="match_parent"
         android:contentDescription="@string/contact_diary_edit_locations_title">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.Close"
             android:layout_width="0dp"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_edit_persons_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_edit_persons_fragment.xml
index e58bf18b26d95cd7af8ceffafc57a420435a63f2..bb23fa72b8a706320cefde91fb426e0c86d08591 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_edit_persons_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_edit_persons_fragment.xml
@@ -9,7 +9,7 @@
         android:layout_height="match_parent"
         android:contentDescription="@string/contact_diary_edit_persons_title">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_homescreen_card_include.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_homescreen_card_include.xml
index 390d2b13cf7b3690a5cbb5178106cc0717f36be4..b7f33780b8a4d465a9183d1661ea7e357ec6d3f0 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_homescreen_card_include.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_homescreen_card_include.xml
@@ -34,7 +34,7 @@
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toBottomOf="@+id/contact_diary_card_homescreen_title" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/contact_diary_card_homescreen_icon"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_location_list_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_location_list_fragment.xml
index ea59fb9e0b29f95ecfe8689bef0ecfc0824d7edb..4a5fcd8614870ddc5ae57476f2dbfe2a0876c639 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_location_list_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_location_list_fragment.xml
@@ -27,7 +27,7 @@
             android:visibility="gone"
             app:constraint_referenced_ids="contact_diary_location_list_no_items_image,contact_diary_location_list_no_items_title,contact_diary_location_list_no_items_subtitle" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/contact_diary_location_list_no_items_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
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 e726b8d0cc6036164b243272ae9d2242f4d81892..e13817189b34f388922075b048ec033ac77bf580 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
@@ -12,7 +12,7 @@
         android:contentDescription="@string/contact_diary_title"
         android:focusable="true">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
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 503bc98d761c9f55006ca2d5e430f0e8d5e602c9..b66cdd2c0d60badf6f5f74d4c2de9fdd381d7979 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
@@ -9,7 +9,7 @@
     android:background="@color/colorBackground"
     android:orientation="vertical">
 
-    <androidx.appcompat.widget.Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbar"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_person_list_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_person_list_fragment.xml
index 37cf73437b095a12485cb8d39825bbbf51492352..42d76704e7c2750b5f23e767f65caa73dfc0ffdd 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_person_list_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_person_list_fragment.xml
@@ -27,7 +27,7 @@
             android:visibility="gone"
             app:constraint_referenced_ids="contact_diary_person_list_no_items_image,contact_diary_person_list_no_items_title,contact_diary_person_list_no_items_subtitle" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/contact_diary_person_list_no_items_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml
index a34da0c9424fbd812f17a364ab83371d645a6a1e..7723129e1f0043eb2067f5a1ef7fc31ca2ea2550 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml
@@ -25,7 +25,7 @@
                 android:layout_height="wrap_content"
                 android:paddingBottom="@dimen/spacing_medium">
 
-                <androidx.appcompat.widget.AppCompatImageView
+                 <ImageView
                     android:id="@+id/onboarding_illustration"
                     android:layout_width="0dp"
                     android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_delta_ppa.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_delta_ppa.xml
index 464d8c50f8ee5babb217b25ac47cb0f9f474a57e..945b64ea86c12facceeacbcdec192b5e6a346009 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_delta_ppa.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_delta_ppa.xml
@@ -280,7 +280,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_body" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/bullet_point_consent"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -303,7 +303,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_point_consent" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/bullet_point_identity"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -326,7 +326,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_point_identity" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/bullet_point_sixteen"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_ppa.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_ppa.xml
index bd4f247b1a02d8edb40a9dec2995681519711807..fddc1bafe696935ba1f7a27e09be7a3f6b214e2e 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_ppa.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_ppa.xml
@@ -286,7 +286,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_body" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/bullet_point_consent"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -309,7 +309,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_point_consent" />
 
-                     <androidx.appcompat.widget.AppCompatImageView
+                      <ImageView
                         android:id="@+id/bullet_point_identity"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -332,7 +332,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_point_identity" />
 
-                     <androidx.appcompat.widget.AppCompatImageView
+                      <ImageView
                         android:id="@+id/bullet_point_sixteen"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_ppa_more_info.xml b/Corona-Warn-App/src/main/res/layout/fragment_ppa_more_info.xml
index 4acd20f2b086f3d68190b79faa099565a4b4f012..02379b9dd847711461895979192a3a02f555ee2b 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_ppa_more_info.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_ppa_more_info.xml
@@ -597,7 +597,7 @@
                     <TableRow
                         android:layout_marginTop="@dimen/spacing_small">
 
-                        <androidx.appcompat.widget.AppCompatImageView
+                         <ImageView
                             android:id="@+id/other_info_point_1"
                             android:layout_width="@dimen/bullet_point_size"
                             android:layout_height="@dimen/bullet_point_size"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_settings_privacy_preserving_analytics.xml b/Corona-Warn-App/src/main/res/layout/fragment_settings_privacy_preserving_analytics.xml
index eec2f250912951aac825936469576328b904fe19..cfba7139fe405ba1334bd3e855b81dc997fa4e81 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_settings_privacy_preserving_analytics.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_settings_privacy_preserving_analytics.xml
@@ -36,7 +36,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content">
 
-                <androidx.appcompat.widget.AppCompatImageView
+                 <ImageView
                     android:id="@+id/onboarding_illustration"
                     android:layout_width="0dp"
                     android:layout_height="wrap_content"
@@ -168,7 +168,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_body" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@id/bullet_point_consent"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -191,7 +191,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@+id/legal_point_consent" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@id/bullet_point_identity"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
@@ -214,7 +214,7 @@
                         app:layout_constraintStart_toStartOf="@id/bullet_point_consent"
                         app:layout_constraintTop_toBottomOf="@id/legal_point_identity" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@id/bullet_point_sixteen"
                         android:layout_width="@dimen/bullet_point_size"
                         android:layout_height="@dimen/bullet_point_size"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_settings_tracing.xml b/Corona-Warn-App/src/main/res/layout/fragment_settings_tracing.xml
index 906b8f3dd1a67de9385be0f5034837247e0beaab..fe996c6bc980a66d4f6ae2eda6151dc322df9d63 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_settings_tracing.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_settings_tracing.xml
@@ -23,7 +23,7 @@
         android:contentDescription="@string/settings_tracing_title"
         android:focusable="true">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.Close"
             android:layout_width="match_parent"
@@ -108,7 +108,7 @@
                     app:layout_constraintStart_toStartOf="@id/guideline_start"
                     app:layout_constraintTop_toBottomOf="@id/switch_row">
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/flag_eu"
                         android:layout_width="26dp"
                         android:layout_height="26dp"
@@ -127,7 +127,7 @@
                         app:layout_constraintStart_toEndOf="@id/flag_eu"
                         app:layout_constraintTop_toTopOf="@id/flag_eu" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/flag_ch"
                         android:layout_width="0dp"
                         android:layout_height="22dp"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_statistics_explanation.xml b/Corona-Warn-App/src/main/res/layout/fragment_statistics_explanation.xml
index 082aa18e15213023e746986a0d2735bad6b20ecd..fa6a203d8cad9043160c76755aa14d9a7e5220a8 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_statistics_explanation.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_statistics_explanation.xml
@@ -108,7 +108,7 @@
                 android:layout_height="wrap_content"
                 android:orientation="vertical">
 
-                <androidx.appcompat.widget.AppCompatImageView
+                 <ImageView
                     android:id="@+id/interoperability_illustration"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
@@ -346,7 +346,7 @@
                     android:layout_marginTop="25dp"
                     android:layout_marginEnd="@dimen/guideline_end">
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/statistics_explanation_trend_increasing_arrow"
                         android:layout_width="0dp"
                         android:layout_height="wrap_content"
@@ -371,7 +371,7 @@
                         app:layout_constraintStart_toEndOf="@+id/statistics_explanation_trend_increasing_arrow"
                         app:layout_constraintTop_toTopOf="@+id/statistics_explanation_trend_increasing_arrow" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/statistics_explanation_trend_decreasing_arrow"
                         android:layout_width="0dp"
                         android:layout_height="wrap_content"
@@ -397,7 +397,7 @@
                         app:layout_constraintStart_toEndOf="@+id/statistics_explanation_trend_decreasing_arrow"
                         app:layout_constraintTop_toTopOf="@+id/statistics_explanation_trend_decreasing_arrow" />
 
-                    <androidx.appcompat.widget.AppCompatImageView
+                     <ImageView
                         android:id="@+id/statistics_explanation_trend_stable_arrow"
                         android:layout_width="0dp"
                         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_deletion_warning.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_deletion_warning.xml
index 5b89dec0d5222de7328ab7f2a25781a5dc5c3c18..5d0f28070e10d837bf41d284d8ab620c481c7100 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_deletion_warning.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_deletion_warning.xml
@@ -8,7 +8,7 @@
     android:contentDescription="@string/submission_deletion_warning_title"
     android:focusable="true">
 
-    <androidx.appcompat.widget.Toolbar
+    <com.google.android.material.appbar.MaterialToolbar
         android:id="@+id/toolbar"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
@@ -31,7 +31,7 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content">
 
-            <androidx.appcompat.widget.AppCompatImageView
+             <ImageView
                 android:id="@+id/deletion_warning_illustration"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
index 25844017a9edf419fd46c3b30e697558c7e78cab..b4ed1f9ee9db30e0c4a1652430e2b8ffa5e17dad 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
@@ -11,7 +11,7 @@
         android:fillViewport="true"
         tools:context=".ui.submission.fragment.SubmissionDoneFragment">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_no_consent_positive_other_warning.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_no_consent_positive_other_warning.xml
index 07ef45ea131f55b072dff90511434bd3a21dc6a9..c73df8d501d1b27d3ef6abd18af52b5f5c05dacc 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_no_consent_positive_other_warning.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_no_consent_positive_other_warning.xml
@@ -18,7 +18,7 @@
         android:fillViewport="true"
         tools:context=".ui.submission.warnothers.SubmissionResultPositiveOtherWarningNoConsentFragment">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_positive_keys_shared.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_positive_keys_shared.xml
index 7f26366943bd40fbdf4faf1306c7d6efcd6be2bc..ece322a33f4623cc8971e60e9ff11edc8f5095b5 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_positive_keys_shared.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_positive_keys_shared.xml
@@ -9,7 +9,7 @@
         android:accessibilityLiveRegion="assertive"
         android:contentDescription="@string/submission_test_result_headline">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.Close"
             android:layout_width="match_parent"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_test_home_test_cards_layout.xml b/Corona-Warn-App/src/main/res/layout/fragment_test_home_test_cards_layout.xml
index 03465872a364efac9d328977fc27308d20df4190..696c625e8541069f76f81dd850bd06836fa77cb8 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_test_home_test_cards_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_test_home_test_cards_layout.xml
@@ -18,11 +18,11 @@
         android:orientation="vertical"
         tools:context=".ui.main.MainActivity">
 
-        <Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
+            style="@style/CWAToolbar"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            style="@style/CWAToolbar"
             app:popupTheme="@style/CWAToolbar.Menu">
             <ImageView
                 android:id="@+id/main_header_logo"
@@ -34,7 +34,7 @@
                 android:src="@drawable/ic_main_header"
                 bind:cwaContentDescription="@{@string/accessibility_logo}"
                 tools:ignore="ContentDescription" />
-        </Toolbar>
+        </com.google.android.material.appbar.MaterialToolbar>
 
         <androidx.coordinatorlayout.widget.CoordinatorLayout
             android:layout_width="match_parent"
@@ -42,16 +42,16 @@
 
             <com.google.android.material.appbar.AppBarLayout
                 android:layout_width="match_parent"
-                android:theme="@style/CWAToolbar"
-                android:layout_height="wrap_content">
+                android:layout_height="wrap_content"
+                android:theme="@style/CWAToolbar">
 
-                <Toolbar
+                <com.google.android.material.appbar.MaterialToolbar
+                    android:id="@+id/main_tracing"
+                    style="@style/CWAToolbar"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:elevation="8dp"
-                    style="@style/CWAToolbar"
-                    android:id="@+id/main_tracing"
                     android:clickable="true"
+                    android:elevation="8dp"
                     android:focusable="true"
                     android:foreground="?selectableItemBackground"
                     app:layout_scrollFlags="scroll|snap|enterAlways">
@@ -78,7 +78,7 @@
                         app:animation="@{tracingHeader.getTracingAnimation(context)}"
                         app:animation_tint="@{tracingHeader.getTracingTint(context)}" />
 
-                </Toolbar>
+                </com.google.android.material.appbar.MaterialToolbar>
 
             </com.google.android.material.appbar.AppBarLayout>
 
diff --git a/Corona-Warn-App/src/main/res/layout/home_create_trace_location_card.xml b/Corona-Warn-App/src/main/res/layout/home_create_trace_location_card.xml
index ff2b328fa8a3cf07118805662e7f490c649bd83f..bf6780e5a569092f3fb8c84b75a813b0cefe7728 100644
--- a/Corona-Warn-App/src/main/res/layout/home_create_trace_location_card.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_create_trace_location_card.xml
@@ -31,7 +31,7 @@
         app:layout_constraintTop_toBottomOf="@id/create_trace_location_card_headline"
         tools:text="@string/create_trace_location_card_subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/create_trace_location_card_icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_fragment_layout.xml b/Corona-Warn-App/src/main/res/layout/home_fragment_layout.xml
index 79b703795f468257a51a13d58ebfecdfef24be0e..234652b8581199bbada6bf74cdf7babd56186181 100644
--- a/Corona-Warn-App/src/main/res/layout/home_fragment_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_fragment_layout.xml
@@ -20,9 +20,10 @@
 
         <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
+            style="@style/CWAToolbar"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            style="@style/CWAToolbar"
+            app:menu="@menu/menu_main"
             app:popupTheme="@style/CWAToolbar.Menu">
             <ImageView
                 android:id="@+id/main_header_logo"
@@ -42,16 +43,16 @@
 
             <com.google.android.material.appbar.AppBarLayout
                 android:layout_width="match_parent"
-                android:theme="@style/CWAToolbar"
-                android:layout_height="wrap_content">
+                android:layout_height="wrap_content"
+                android:theme="@style/CWAToolbar">
 
-                <Toolbar
+                <com.google.android.material.appbar.MaterialToolbar
+                    android:id="@+id/main_tracing"
+                    style="@style/CWAToolbar"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:elevation="8dp"
-                    style="@style/CWAToolbar"
-                    android:id="@+id/main_tracing"
                     android:clickable="true"
+                    android:elevation="8dp"
                     android:focusable="true"
                     android:foreground="?selectableItemBackground"
                     app:layout_scrollFlags="scroll|snap|enterAlways">
@@ -78,7 +79,7 @@
                         app:animation="@{tracingHeader.getTracingAnimation(context)}"
                         app:animation_tint="@{tracingHeader.getTracingTint(context)}" />
 
-                </Toolbar>
+                </com.google.android.material.appbar.MaterialToolbar>
 
             </com.google.android.material.appbar.AppBarLayout>
 
diff --git a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_incidence_layout.xml b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_incidence_layout.xml
index 7eee9560c166dc4b7e507df6d0fd25f7b1a25c92..d1969a13b506b7a8312375d84a17fe9e7bc9e1ec 100644
--- a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_incidence_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_incidence_layout.xml
@@ -12,7 +12,7 @@
         android:id="@+id/incidence_container"
         tools:showIn="@layout/home_statistics_cards_basecard_layout">
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/background_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_infections_layout.xml b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_infections_layout.xml
index 1d54ca078e19c2008ac9b13851aaa11bb7d8fe20..31410db6eb5357070b2345ee9459f302430f0bc6 100644
--- a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_infections_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_infections_layout.xml
@@ -12,7 +12,7 @@
         android:id="@+id/infections_container"
         tools:showIn="@layout/home_statistics_cards_basecard_layout">
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/background_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_keysubmissions_layout.xml b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_keysubmissions_layout.xml
index 1d486842a6fee8dbac82c1637f95608e5b6e3114..0b64677699659882b8cbf5f59ff4dd1ff523b5c0 100644
--- a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_keysubmissions_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_keysubmissions_layout.xml
@@ -12,7 +12,7 @@
         android:id="@+id/keysubmissions_container"
         tools:showIn="@layout/home_statistics_cards_basecard_layout">
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/background_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_sevendayrvalue_layout.xml b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_sevendayrvalue_layout.xml
index 57f7e82475116fe8e63ca7d7a8eab9beb0c464b0..07640dab4df1f979a97a523b9aa0c064252de88f 100644
--- a/Corona-Warn-App/src/main/res/layout/home_statistics_cards_sevendayrvalue_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_statistics_cards_sevendayrvalue_layout.xml
@@ -12,7 +12,7 @@
         android:id="@+id/seven_day_r_value_container"
         tools:showIn="@layout/home_statistics_cards_basecard_layout">
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/background_image"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_error.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_error.xml
index c49ecb6fb79e3c97427dfdd60238de2e7cf77e75..ec8c361b3e950098e33db28e2a380a78321337f3 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_error.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_error.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_invalid.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_invalid.xml
index 6c03a73581718fbcb1cc1ae1141b536c37c3d49f..9b5813b1737ad52d076897abaa584f171a664c95 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_invalid.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_invalid.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_negative.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_negative.xml
index 6b23023977d63eda004770d1cf3ba16fa93d96d8..ccdbe8acef0a1dcba6f74f3ff02bdae8c2362ccf 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_negative.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_negative.xml
@@ -91,7 +91,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_pending.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_pending.xml
index da6cb6b82918c50ac40cc55550cf4f550ff4f7f9..6c0fcf602fca67c1c2097e8c3c6eda6456f20615 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_pending.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_pending.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_not_shared.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_not_shared.xml
index 65812e9d4cd43430cba8cc75fd50b5139125c4f6..f69b2b2634964a7451b048a8aa7766960d869a27 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_not_shared.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_not_shared.xml
@@ -84,7 +84,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -115,7 +115,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@+id/divider" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contact_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -143,7 +143,7 @@
         app:layout_constraintStart_toEndOf="@+id/contact_icon"
         app:layout_constraintTop_toTopOf="@+id/contact_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contagious_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -171,7 +171,7 @@
         app:layout_constraintStart_toEndOf="@+id/contagious_icon"
         app:layout_constraintTop_toTopOf="@+id/contagious_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/share_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_shared.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_shared.xml
index bc0dd85a63b74a3bc6535adf01720ef3b162ce55..80b89358a8100e99634fc7e788238a6f5e7f4634 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_shared.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_positive_shared.xml
@@ -84,7 +84,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -115,7 +115,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@+id/divider" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contact_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -143,7 +143,7 @@
         app:layout_constraintStart_toEndOf="@+id/contact_icon"
         app:layout_constraintTop_toTopOf="@+id/contact_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contagious_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_ready.xml b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_ready.xml
index b4d9ecbbc923c8b46b325a88aee703e881bc1484..28ff61c8a38d395b9e7047b8fcaec70a1c062564 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_ready.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_pcr_status_card_ready.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_error.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_error.xml
index eec3d36c7890f062905f402dea4b655fb337c9cd..007dcea8d5c2d82ad55c85752c89b4aa89f09264 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_error.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_error.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_invalid.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_invalid.xml
index 5ee0fdbae1dff0e9e2f1e858e0c6c246cc3d1c0e..8527df7657a5494994f24bfbf5b5b6ee3ac83b47 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_invalid.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_invalid.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_negative.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_negative.xml
index c08d9fef1b9255c8f777133500ac06f80c87b5cc..dd1da1efc4dcb11211a9e6db6a406cdc08a8647e 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_negative.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_negative.xml
@@ -91,7 +91,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_outdated.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_outdated.xml
index 8ba510968c65f48c5a71a07cf4fd0832fe514ff7..906c9dc733b14cb0a09dacd7c455dd1351d38057 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_outdated.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_outdated.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_pending.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_pending.xml
index 5c9eb6e5541b817f82f7dfaa98704166d77bf1bc..3522c0bd30e1217601bb972078c2a6c2759f7948 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_pending.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_pending.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_not_shared.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_not_shared.xml
index 33bf2d3e74a207b9d98019a3d909ac701ceb5355..380fce89b3016e3ca2d4b27d521cf9f0410672e7 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_not_shared.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_not_shared.xml
@@ -84,7 +84,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -115,7 +115,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@+id/divider" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/prc_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -144,7 +144,7 @@
         app:layout_constraintStart_toEndOf="@+id/prc_icon"
         app:layout_constraintTop_toTopOf="@+id/prc_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contact_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -172,7 +172,7 @@
         app:layout_constraintStart_toEndOf="@+id/contact_icon"
         app:layout_constraintTop_toTopOf="@+id/contact_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contagious_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -200,7 +200,7 @@
         app:layout_constraintStart_toEndOf="@+id/contagious_icon"
         app:layout_constraintTop_toTopOf="@+id/contagious_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/share_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_shared.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_shared.xml
index 9ecf98e1234564db8b62a7b6c85f92dd1929c866..0b0c503b0d9a73884815c30a999b362365de2246 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_shared.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_positive_shared.xml
@@ -84,7 +84,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/body" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -115,7 +115,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@+id/divider" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/prc_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -144,7 +144,7 @@
         app:layout_constraintStart_toEndOf="@+id/prc_icon"
         app:layout_constraintTop_toTopOf="@+id/prc_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contact_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
@@ -172,7 +172,7 @@
         app:layout_constraintStart_toEndOf="@+id/contact_icon"
         app:layout_constraintTop_toTopOf="@+id/contact_icon" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/contagious_icon"
         style="@style/icon"
         android:layout_width="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_ready.xml b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_ready.xml
index 26747ccb991403571436853831e9c862d6b917f0..1211238ff9b1ceb053dcf2810787cd82284a73b8 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_ready.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_rapid_status_card_ready.xml
@@ -48,7 +48,7 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toBottomOf="@id/subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/home_submission_status_card_unregistered.xml b/Corona-Warn-App/src/main/res/layout/home_submission_status_card_unregistered.xml
index 4004baa2d329e216b4ca2f88560529a381f8bfed..edf3afd3b6afc1dfe6a61d5d0d2ff46b631cee9d 100644
--- a/Corona-Warn-App/src/main/res/layout/home_submission_status_card_unregistered.xml
+++ b/Corona-Warn-App/src/main/res/layout/home_submission_status_card_unregistered.xml
@@ -37,7 +37,7 @@
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toBottomOf="@+id/title" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/icon"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_behaviour_row.xml b/Corona-Warn-App/src/main/res/layout/include_submission_behaviour_row.xml
index 046b5250db1ee8551e37d106a3fc851bc58875a7..f88e80dbe8e9e73427924d27f140b34424bea65b 100644
--- a/Corona-Warn-App/src/main/res/layout/include_submission_behaviour_row.xml
+++ b/Corona-Warn-App/src/main/res/layout/include_submission_behaviour_row.xml
@@ -27,7 +27,7 @@
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toTopOf="parent">
 
-            <androidx.appcompat.widget.AppCompatImageView
+             <ImageView
                 style="@style/icon"
                 android:layout_width="@dimen/icon_size_risk_details_behavior"
                 android:layout_height="@dimen/icon_size_risk_details_behavior"
diff --git a/Corona-Warn-App/src/main/res/layout/new_release_info_screen_fragment.xml b/Corona-Warn-App/src/main/res/layout/new_release_info_screen_fragment.xml
index 9761fcdcf4c4c0ac5dc8596a25ea536ce56538fc..27abf1496b5df95f0927ab61caa7c7fefd6adb42 100644
--- a/Corona-Warn-App/src/main/res/layout/new_release_info_screen_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/new_release_info_screen_fragment.xml
@@ -9,7 +9,7 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.Close"
             android:layout_width="0dp"
diff --git a/Corona-Warn-App/src/main/res/layout/survey_consent_fragment.xml b/Corona-Warn-App/src/main/res/layout/survey_consent_fragment.xml
index fe1c3c7ef61715c5c5e095444fe87ac18213bc71..ede7afa130e49722de36bf32e763906aa3dadb7c 100644
--- a/Corona-Warn-App/src/main/res/layout/survey_consent_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/survey_consent_fragment.xml
@@ -10,7 +10,7 @@
         android:background="@drawable/contact_diary_onboarding_background"
         android:focusable="true">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.BackArrow"
             android:layout_width="0dp"
diff --git a/Corona-Warn-App/src/main/res/layout/trace_location_create_fragment.xml b/Corona-Warn-App/src/main/res/layout/trace_location_create_fragment.xml
index 2cd6a15dfe3c635c017cb1d6d3ede275c89fe840..d7acf8accc7f5ee9afe626355776fefb7a67752c 100644
--- a/Corona-Warn-App/src/main/res/layout/trace_location_create_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/trace_location_create_fragment.xml
@@ -51,8 +51,7 @@
                     android:layout_height="wrap_content"
                     android:imeOptions="actionNext"
                     android:inputType="textCapWords"
-                    android:maxLength="100"
-                    android:textStyle="bold" />
+                    android:maxLength="100" />
 
             </com.google.android.material.textfield.TextInputLayout>
 
diff --git a/Corona-Warn-App/src/main/res/layout/trace_location_organizer_trace_locations_list_fragment.xml b/Corona-Warn-App/src/main/res/layout/trace_location_organizer_trace_locations_list_fragment.xml
index 7cc778f51698899505c2beef24786640fd99ec0a..255ed0fa8049672d69931d78a26e98a4cd1080b8 100644
--- a/Corona-Warn-App/src/main/res/layout/trace_location_organizer_trace_locations_list_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/trace_location_organizer_trace_locations_list_fragment.xml
@@ -42,7 +42,7 @@
         android:layout_height="wrap_content"
         app:constraint_referenced_ids="qr_codes__list_no_items_image,qr_codes_list_no_items_title,qr_codes_list_no_items_subtitle" />
 
-    <androidx.appcompat.widget.AppCompatImageView
+     <ImageView
         android:id="@+id/qr_codes__list_no_items_image"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/trace_location_privacy_card.xml b/Corona-Warn-App/src/main/res/layout/trace_location_privacy_card.xml
index cd37450cf9ba6b4a96d717d4efff30f5775ee0b2..ca0459380a09c51c00f3a3230568399e3fbec235 100644
--- a/Corona-Warn-App/src/main/res/layout/trace_location_privacy_card.xml
+++ b/Corona-Warn-App/src/main/res/layout/trace_location_privacy_card.xml
@@ -106,7 +106,7 @@
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_marginTop="@dimen/spacing_normal"
-        android:text="@string/trace_location_privacy_card_third_bulletpoint_text"
+        android:text="@string/trace_location_privacy_card_fourth_bulletpoint_text"
         app:layout_constraintEnd_toEndOf="@id/second_bulletpoint_subtitle"
         app:layout_constraintStart_toStartOf="@id/second_bulletpoint_subtitle"
         app:layout_constraintTop_toBottomOf="@id/second_bulletpoint_subtitle" />
@@ -126,7 +126,7 @@
         android:layout_height="wrap_content"
         android:layout_marginTop="@dimen/spacing_normal"
         android:paddingBottom="@dimen/spacing_medium"
-        android:text="@string/trace_location_privacy_card_fourth_bulletpoint_text"
+        android:text="@string/trace_location_privacy_card_third_bulletpoint_text"
         app:layout_constraintEnd_toEndOf="@id/third_bulletpoint_text"
         app:layout_constraintStart_toStartOf="@id/third_bulletpoint_text"
         app:layout_constraintTop_toBottomOf="@id/third_bulletpoint_text" />
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_content_disabled_view.xml b/Corona-Warn-App/src/main/res/layout/tracing_content_disabled_view.xml
index b5ab40269e5bcc93d7b540ce596642d053fd03b1..527c1a7f5325a8ffc3999058859d8d9f812d3fd0 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_content_disabled_view.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_content_disabled_view.xml
@@ -28,7 +28,7 @@
             app:layout_constraintTop_toTopOf="parent"
             app:layout_goneMarginEnd="0dp" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/details_icon"
             gone="@{state.isInDetailsMode}"
             android:layout_width="@dimen/icon_size_risk_card"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_content_failed_view.xml b/Corona-Warn-App/src/main/res/layout/tracing_content_failed_view.xml
index 31da8067055d0218e12fe0675f01f10b53026c44..874f5f839c50f2d36a072b84c6bc7588fdfe1719 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_content_failed_view.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_content_failed_view.xml
@@ -27,7 +27,7 @@
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toTopOf="parent" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/risk_card_header_icon"
             gone="@{state.isInDetailsMode}"
             android:layout_width="@dimen/icon_size_risk_card"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_content_increased_view.xml b/Corona-Warn-App/src/main/res/layout/tracing_content_increased_view.xml
index 79688669a658d2ce286d953b6c04897b3dc5cc3c..0fe181f52e7da0a49ee22938f87a4ab587fb937a 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_content_increased_view.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_content_increased_view.xml
@@ -29,7 +29,7 @@
             app:layout_constraintTop_toTopOf="parent"
             app:layout_goneMarginEnd="0dp" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/details_icon"
             gone="@{state.isInDetailsMode}"
             android:layout_width="@dimen/icon_size_risk_card"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_content_low_view.xml b/Corona-Warn-App/src/main/res/layout/tracing_content_low_view.xml
index 0c569562d3d1fe3ad86431eb15aa91f29f59327d..8d6e9e7260307b80843e9bd8617a1ad477695e47 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_content_low_view.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_content_low_view.xml
@@ -31,7 +31,7 @@
             tools:text="@string/risk_card_low_risk_headline"
             tools:textColor="@color/colorStableLight" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/details_icon"
             gone="@{state.isInDetailsMode}"
             android:layout_width="@dimen/icon_size_risk_card"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_content_progress_view.xml b/Corona-Warn-App/src/main/res/layout/tracing_content_progress_view.xml
index 10154cbf3cecfb6b580dac8e08dc49c4b288f87d..25892b2a8efc99a6f95587f4883b76eefb6a6a95 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_content_progress_view.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_content_progress_view.xml
@@ -29,7 +29,7 @@
             app:layout_goneMarginEnd="0dp"
             tools:text="Daten werden herunter geladen" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/details_icon"
             gone="@{state.isInDetailsMode}"
             android:layout_width="@dimen/icon_size_risk_card"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_details_access_survey_card.xml b/Corona-Warn-App/src/main/res/layout/tracing_details_access_survey_card.xml
index 69635c8f19b5127277f2e49069fd13d12ef6c1e8..bdfb816c9842767120df9e5559552e14692b0a09 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_details_access_survey_card.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_details_access_survey_card.xml
@@ -42,7 +42,7 @@
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toBottomOf="@+id/tracing_details_survey_card_title" />
 
-        <androidx.appcompat.widget.AppCompatImageView
+         <ImageView
             android:id="@+id/tracing_details_survey_card_icon"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
diff --git a/Corona-Warn-App/src/main/res/layout/tracing_details_fragment_layout.xml b/Corona-Warn-App/src/main/res/layout/tracing_details_fragment_layout.xml
index d6ff95745ba0aab96ca1166ee1aa12d0bcc15cf9..a239f18d87d0048a566e21d5269b2c1addec331f 100644
--- a/Corona-Warn-App/src/main/res/layout/tracing_details_fragment_layout.xml
+++ b/Corona-Warn-App/src/main/res/layout/tracing_details_fragment_layout.xml
@@ -16,7 +16,7 @@
         android:layout_height="match_parent"
         android:contentDescription="@string/risk_details_accessibility_title">
 
-        <androidx.appcompat.widget.Toolbar
+        <com.google.android.material.appbar.MaterialToolbar
             android:id="@+id/toolbar"
             style="@style/CWAToolbar.Close"
             android:layout_width="match_parent"
diff --git a/Corona-Warn-App/src/main/res/menu/menu_main.xml b/Corona-Warn-App/src/main/res/menu/menu_main.xml
index 12e95ff6cc53a47de62326631e25d872e2671d0a..494829eb627f3989af88fe4ba0aed3dc4490cf55 100644
--- a/Corona-Warn-App/src/main/res/menu/menu_main.xml
+++ b/Corona-Warn-App/src/main/res/menu/menu_main.xml
@@ -4,7 +4,7 @@
     tools:context=".MainActivity">
 
     <item
-        android:id="@+id/menu_share"
+        android:id="@+id/mainSharingFragment"
         android:contentDescription="@string/button_share"
         android:icon="@drawable/ic_main_share"
         android:title="@string/button_share"
@@ -12,16 +12,16 @@
         app:showAsAction="always" />
 
     <item
-        android:id="@+id/menu_help"
+        android:id="@+id/mainOverviewFragment"
         android:title="@string/menu_help" />
     <item
-        android:id="@+id/menu_information"
+        android:id="@+id/informationFragment"
         android:title="@string/menu_information" />
     <item
-        android:id="@+id/menu_settings"
+        android:id="@+id/settingsFragment"
         android:title="@string/menu_settings" />
     <item
-        android:id="@+id/menu_test"
+        android:id="@+id/test_nav_graph"
         android:title="Test Menu"
         android:visible="false"
         tools:ignore="HardcodedText" />
diff --git a/Corona-Warn-App/src/main/res/values-night/bools.xml b/Corona-Warn-App/src/main/res/values-night/bools.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2f4026b34a8ce418bb0c66dd37c1790efdf34ffa
--- /dev/null
+++ b/Corona-Warn-App/src/main/res/values-night/bools.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <bool name="lightSystemUI">false</bool>
+</resources>
\ No newline at end of file
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 5048bc35d9f3a0b2e1453465631456740198a04c..98ab8628d60233f4e20f818f634cf1ff47ad9347 100644
--- a/Corona-Warn-App/src/main/res/values-night/colors.xml
+++ b/Corona-Warn-App/src/main/res/values-night/colors.xml
@@ -13,6 +13,7 @@
     <color name="colorSurface2">#434445</color>
     <color name="colorSurface2Pressed">#565757</color>
     <color name="colorHairline">#4DFFFFFF</color>
+    <color name="colorSystemUI">#000000</color>
 
     <!-- Text -->
     <color name="colorTextPrimary1">#FFFFFF</color>
diff --git a/Corona-Warn-App/src/main/res/values/bools.xml b/Corona-Warn-App/src/main/res/values/bools.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8ca6391ddb023064b3cc2f09c27333655e7d5a55
--- /dev/null
+++ b/Corona-Warn-App/src/main/res/values/bools.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <bool name="lightSystemUI">true</bool>
+</resources>
\ No newline at end of file
diff --git a/Corona-Warn-App/src/main/res/values/colors.xml b/Corona-Warn-App/src/main/res/values/colors.xml
index b7063323ae1e42e5116b21d203e7f41824ac4718..0c537ee78bf3599e4114803c7a7d9fbf89b59585 100644
--- a/Corona-Warn-App/src/main/res/values/colors.xml
+++ b/Corona-Warn-App/src/main/res/values/colors.xml
@@ -15,6 +15,7 @@
     <color name="colorHairline">#3317191A</color>
 
     <color name="cwaGrayHighlight">#5D6F80</color>
+    <color name="colorSystemUI">#F5F5F5</color>
 
     <!--Cards-->
     <color name="colorCardBackgroundHighlightGray">@color/cwaGrayHighlight</color>
diff --git a/Corona-Warn-App/src/main/res/values/styles.xml b/Corona-Warn-App/src/main/res/values/styles.xml
index dbdaf8ec64842f97a24b27b26a8ef05293f79b64..5d15c348679f1361518f54ef889e8edb9b53f6c0 100644
--- a/Corona-Warn-App/src/main/res/values/styles.xml
+++ b/Corona-Warn-App/src/main/res/values/styles.xml
@@ -1,4 +1,4 @@
-<resources xmlns:android="http://schemas.android.com/apk/res/android">
+<resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">
 
     <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.Bridge">
         <item name="colorPrimary">@color/colorBrandSecondary</item>
@@ -11,6 +11,13 @@
         <item name="materialTimePickerTheme">@style/ThemeOverlay.App.TimePicker</item>
 
         <item name="buttonStyle">@style/Widget.AppCompat.Button.Borderless.Colored</item>
+
+        <item name="android:windowLightNavigationBar" tools:targetApi="o_mr1">@bool/lightSystemUI
+        </item>
+        <item name="android:windowLightStatusBar">@bool/lightSystemUI</item>
+
+        <item name="android:navigationBarColor">@color/colorSystemUI</item>
+        <item name="android:statusBarColor">@color/colorSystemUI</item>
     </style>
 
     <style name="ThemeOverlay.App.DatePicker" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
index 45c6063ee6fb5b7482bca133cc421971c854083b..2d35e3e1d05299469413643e044c4ce7a0699fcd 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
@@ -4,6 +4,10 @@ import android.content.Context
 import android.content.pm.ApplicationInfo
 import androidx.fragment.app.Fragment
 import de.rki.coronawarnapp.CoronaWarnApplication
+import de.rki.coronawarnapp.util.ExternalActionHelper.callPhone
+import de.rki.coronawarnapp.util.ExternalActionHelper.openAppNotificationSettings
+import de.rki.coronawarnapp.util.ExternalActionHelper.openUrl
+import de.rki.coronawarnapp.util.ExternalActionHelper.shareText
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
 import io.mockk.every
@@ -30,51 +34,40 @@ class ExternalActionHelperTest : BaseTest() {
         mockkObject(CoronaWarnApplication)
     }
 
-    @Test
-    fun toConnectionsTest() {
-        every { context.startActivity(any()) } just Runs
-        ExternalActionHelper.toConnections(context = context)
-        verify(exactly = 1) { context.startActivity(any()) }
-    }
-
     @Test
     fun toNotificationsTest() {
         every { context.startActivity(any()) } just Runs
         every { context.packageName } returns "package_name"
         every { context.applicationInfo } returns applicationInfo
 
-        ExternalActionHelper.toNotifications(context = context)
-        verify(exactly = 1) { context.startActivity(any()) }
-    }
-
-    @Test
-    fun toMainSettingsTest() {
-        every { context.startActivity(any()) } just Runs
-        ExternalActionHelper.toConnections(context = context)
+        context.openAppNotificationSettings()
         verify(exactly = 1) { context.startActivity(any()) }
     }
 
     @Test
     fun openUrlTest() {
-        val fragment = mockk<Fragment>()
-        every { fragment.startActivity(any()) } just Runs
-        ExternalActionHelper.openUrl(fragment = fragment, url = "url_path")
-        verify(exactly = 1) { fragment.startActivity(any()) }
+        mockk<Fragment>().apply {
+            every { startActivity(any()) } just Runs
+            openUrl(url = "url_path")
+            verify(exactly = 1) { startActivity(any()) }
+        }
     }
 
     @Test
     fun callTest() {
-        val fragment = mockk<Fragment>()
-        every { fragment.startActivity(any()) } just Runs
-        ExternalActionHelper.call(fragment = fragment, uri = "call_path")
-        verify(exactly = 1) { fragment.startActivity(any()) }
+        mockk<Fragment>().apply {
+            every { startActivity(any()) } just Runs
+            callPhone(phoneNumber = "01234343535")
+            verify(exactly = 1) { startActivity(any()) }
+        }
     }
 
     @Test
     fun shareTextTest() {
-        val fragment = mockk<Fragment>()
-        every { fragment.startActivity(any()) } just Runs
-        ExternalActionHelper.shareText(fragment = fragment, text = "text", title = "title")
-        verify(exactly = 1) { fragment.startActivity(any()) }
+        mockk<Fragment>().apply {
+            every { startActivity(any()) } just Runs
+            shareText(text = "text", title = "title")
+            verify(exactly = 1) { startActivity(any()) }
+        }
     }
 }