diff --git a/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/TestRiskLevelCalculation.kt b/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/TestRiskLevelCalculation.kt index 83b7d857dc2b8fe76b8dc134f007ed2448f4f3fe..76e9833d49ca35e56d83de2497aeaea468ae938a 100644 --- a/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/TestRiskLevelCalculation.kt +++ b/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/TestRiskLevelCalculation.kt @@ -130,9 +130,7 @@ class TestRiskLevelCalculation : Fragment() { } } - startObserving() - } override fun onResume() { diff --git a/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/ui/main/MainFragment.kt b/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/ui/main/MainFragment.kt index 502ba7fe7dd35bf60ce2f9b14bb578a3c1accc48..4c4dfe9d46a2baae1b17f866be80b15b6233dc8c 100644 --- a/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/ui/main/MainFragment.kt +++ b/Corona-Warn-App/src/deviceForTesters/java/de.rki.coronawarnapp/ui/main/MainFragment.kt @@ -61,7 +61,6 @@ class MainFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) setButtonOnClickListener() - setContentDescription() } override fun onResume() { @@ -75,21 +74,12 @@ class MainFragment : Fragment() { TimerHelper.checkManualKeyRetrievalTimer() submissionViewModel.refreshDeviceUIState() tracingViewModel.refreshLastSuccessfullyCalculatedScore() - binding.mainScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.mainScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } override fun onStart() { super.onStart() - binding.mainScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - - private fun setContentDescription() { - val shareButtonString: String = getString(R.string.button_share) - val menuButtonString: String = getString(R.string.button_menu) - val mainCardString: String = getString(R.string.hint_external_webpage) - binding.mainHeaderShare.buttonIcon.contentDescription = shareButtonString - binding.mainHeaderOptionsMenu.buttonIcon.contentDescription = menuButtonString - binding.mainAbout.mainCard.contentDescription = mainCardString + binding.mainScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml index c0b516a9f780fe0d91ce2e9236dad02ef500a4cb..ba559e601e7cd88cd6ac9e71e1a5222f2b316f08 100644 --- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml +++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml @@ -36,6 +36,7 @@ <TextView android:id="@+id/label_exposure_summary" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/test_api_exposure_summary_headline" /> @@ -97,6 +98,7 @@ <TextView android:id="@+id/label_my_keys" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" @@ -118,6 +120,7 @@ <TextView android:id="@+id/label_other_keys" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/test_api_body_other_keys" /> @@ -209,18 +212,21 @@ <TextView style="@style/headline4" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="headline4" /> <TextView style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="headline5" /> <TextView style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="headline6" /> diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_risk_level_calculation.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_risk_level_calculation.xml index 60c2ee0182357d0a1cabee614db3229cd1207bef..a2fe370331b0ad99655b6481a915145af3763125 100644 --- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_risk_level_calculation.xml +++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_risk_level_calculation.xml @@ -35,6 +35,7 @@ <TextView style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Preview (no interaction possible)" /> @@ -105,6 +106,7 @@ <TextView android:id="@+id/label_exposure_summary_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" @@ -119,6 +121,7 @@ <TextView android:id="@+id/label_risk_score_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Risk Score" /> @@ -132,6 +135,7 @@ <TextView android:id="@+id/label_backend_parameters_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Backend Parameters" /> @@ -145,6 +149,7 @@ <TextView android:id="@+id/label_formula_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Used Formula" /> @@ -158,6 +163,7 @@ <TextView android:id="@+id/label_exposure_info_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Exposure Information" /> @@ -171,6 +177,7 @@ <TextView android:id="@+id/label_full_config_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Full Backend Configuration" /> 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 d88206e60abfc543f45aa6719b13a42362c1aeee..6df694a8916794392cd8c3b215db0435588d7f9c 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 @@ -39,14 +39,9 @@ class InformationAboutFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationAboutScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationAboutScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationAboutScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { 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 fd26db493731bf2d07c72fad757c4b572a6f2f87..6b351030c0f2712e25a9b14be40911e267cebcd8 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 @@ -41,14 +41,9 @@ class InformationContactFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationContactContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationContactContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationContactContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { 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 bc14cbf4b571f6c69e9da5b3992378a7de1acbdc..173f6b129f5d55bc125b98f6b01045ea534f03c2 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 @@ -43,14 +43,9 @@ class InformationFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { 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 cbe86b19918311d0193945e0f49eb0dc2517a015..053d1bb2fa06b08794858cab2cb2393b616cc23c 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 @@ -39,14 +39,9 @@ class InformationLegalFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationLegalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationLegalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationLegalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationPrivacyFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationPrivacyFragment.kt index d7ee64f534321deec1a6cd635ef9df18dfaa9f79..c445f900f1539bfd1ef4e31ae4b9c10138a99311 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationPrivacyFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/information/InformationPrivacyFragment.kt @@ -39,14 +39,9 @@ class InformationPrivacyFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { 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 eeef00278c61f0e76d22a3564ef99590cc522245..a4ee7576532e3928a945d24b1704b46eefab41e9 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 @@ -39,14 +39,9 @@ class InformationTechnicalFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationTechnicalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationTechnicalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationTechnicalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { 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 ad0a09245ad517ea322102f4142a76a01ef83c6c..98a4079e6a084554861912d4f0ad375ba5fc4531 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 @@ -39,14 +39,9 @@ class InformationTermsFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.informationTermsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.informationTermsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.informationTermsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainOverviewFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainOverviewFragment.kt index 4de437340053c067c4361c960d27e81274aa7ea8..67b6ebbe80b2cfc72150ad78ee1b68f853d17c61 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainOverviewFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainOverviewFragment.kt @@ -43,14 +43,9 @@ class MainOverviewFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.mainOverviewContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.mainOverviewContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.mainOverviewContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainShareFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainShareFragment.kt index 42077a648dc2627b9084d84a3435bc8a813f54e5..52c0e3df59de90639ce0c92aec3f62300e00934d 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainShareFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainShareFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import de.rki.coronawarnapp.R @@ -55,4 +56,9 @@ class MainShareFragment : Fragment() { (activity as MainActivity).goBack() } } + + override fun onResume() { + super.onResume() + binding.mainShareContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) + } } 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 13925c8779ab03bf2c25a47aa4597ad81b421a99..ace481434d72a43119d9f3f4328f95c3a362d513 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 @@ -44,13 +44,8 @@ class OnboardingFragment : Fragment() { } } - override fun onStart() { - super.onStart() - binding.onboardingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.onboardingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.onboardingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragment.kt index a89d179d5c73fe57e2df6d0243b8dfc0716e51f5..c6768a15f48d752bc6b7ce8ba8022a4eee645790 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragment.kt @@ -43,14 +43,9 @@ class OnboardingNotificationsFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.onboardingNotificationsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.onboardingNotificationsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.onboardingNotificationsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragment.kt index 9e40aefe05876ed0be20547cf622bbd804001ccc..f15cbfbde6c084c29ee22e40add187f5ef94f49a 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragment.kt @@ -40,14 +40,9 @@ class OnboardingPrivacyFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.onboardingPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.onboardingPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.onboardingPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragment.kt index a95516e58c42d2b91846b9f1ad30fec44438ba26..2923d9ea0f06dbc570783d41a99d0b24b6b9b5f6 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragment.kt @@ -40,14 +40,9 @@ class OnboardingTestFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.onboardingTestContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.onboardingTestContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.onboardingTestContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragment.kt index 21115e9166b27435d3ff282fc3214c5a473afe1e..23f302095ecfca1dc2fc645a8751af08b5535140 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragment.kt @@ -70,14 +70,9 @@ class OnboardingTracingFragment : Fragment(), setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.onboardingTracingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.onboardingTracingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.onboardingTracingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) resetTracing() } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/riskdetails/RiskDetailsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/riskdetails/RiskDetailsFragment.kt index 8f6f5a752b2798f7bcc9061d2ab313b92467c0bd..a36fcd300f59a5302a4bf9f90d0d71559b059ee0 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/riskdetails/RiskDetailsFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/riskdetails/RiskDetailsFragment.kt @@ -54,11 +54,6 @@ class RiskDetailsFragment : Fragment() { setButtonOnClickListeners() } - override fun onStart() { - super.onStart() - binding.riskDetailsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() // refresh required data @@ -66,7 +61,7 @@ class RiskDetailsFragment : Fragment() { tracingViewModel.refreshExposureSummary() tracingViewModel.refreshLastTimeDiagnosisKeysFetchedDate() TimerHelper.checkManualKeyRetrievalTimer() - binding.riskDetailsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.riskDetailsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListeners() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsFragment.kt index 9460bfe99ffc5a182e021d46780f16e3fdffc295..3c7e49013be8a55229817a5a96824722b5a3a233 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.navigation.fragment.findNavController @@ -59,6 +60,8 @@ class SettingsFragment : Fragment() { settingsViewModel.refreshNotificationsEnabled(requireContext()) settingsViewModel.refreshNotificationsRiskEnabled() settingsViewModel.refreshNotificationsTestEnabled() + + binding.settingsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsNotificationFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsNotificationFragment.kt index 99ca01e18c9d45eab743cd55361167f2fbc94fae..2baecf1273c0bc4f540e901a4cb39c37a9d67549 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsNotificationFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsNotificationFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import de.rki.coronawarnapp.databinding.FragmentSettingsNotificationsBinding @@ -52,6 +53,7 @@ class SettingsNotificationFragment : Fragment() { override fun onResume() { super.onResume() + binding.settingsNotificationsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) // refresh required data settingsViewModel.refreshNotificationsEnabled(requireContext()) settingsViewModel.refreshNotificationsRiskEnabled() @@ -70,18 +72,12 @@ class SettingsNotificationFragment : Fragment() { val goBack = binding.settingsNotificationsHeader.headerButtonBack.buttonIcon // Update Risk - updateRiskNotificationSwitch.setOnCheckedChangeListener { _, _ -> - // android calls this listener also on start, so it has to be verified if the user pressed the switch - if (updateRiskNotificationSwitch.isPressed) { - settingsViewModel.toggleNotificationsRiskEnabled() - } + updateRiskNotificationSwitch.setOnClickListener { + settingsViewModel.toggleNotificationsRiskEnabled() } // Update Test - updateTestNotificationSwitch.setOnCheckedChangeListener { _, _ -> - // android calls this listener also on start, so it has to be verified if the user pressed the switch - if (updateTestNotificationSwitch.isPressed) { - settingsViewModel.toggleNotificationsTestEnabled() - } + updateTestNotificationSwitch.setOnClickListener { + settingsViewModel.toggleNotificationsTestEnabled() } goBack.setOnClickListener { (activity as MainActivity).goBack() 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 cb9ddd031d99ed87b741cb12e7943c5d21a139cd..8bf2871c95d849d0bcc6681bd8beb45491eb564a 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 @@ -5,6 +5,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope import com.google.android.gms.common.api.ApiException @@ -60,6 +61,11 @@ class SettingsResetFragment : Fragment() { } } + override fun onResume() { + super.onResume() + binding.settingsResetContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) + } + private fun deleteAllAppContent() { lifecycleScope.launch { try { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsTracingFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsTracingFragment.kt index a1842b99820b0dc3ca3aafcb59a7e2a09e914b69..c2390c53934f19b59cd874e6c890433efbdb3601 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsTracingFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/settings/SettingsTracingFragment.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.lifecycle.lifecycleScope @@ -15,7 +16,6 @@ import de.rki.coronawarnapp.exception.reporting.report import de.rki.coronawarnapp.nearby.InternalExposureNotificationClient import de.rki.coronawarnapp.nearby.InternalExposureNotificationPermissionHelper import de.rki.coronawarnapp.storage.LocalData -import de.rki.coronawarnapp.ui.ViewBlocker import de.rki.coronawarnapp.ui.main.MainActivity import de.rki.coronawarnapp.ui.viewmodel.SettingsViewModel import de.rki.coronawarnapp.ui.viewmodel.TracingViewModel @@ -72,6 +72,7 @@ class SettingsTracingFragment : Fragment(), super.onResume() // refresh required data tracingViewModel.refreshIsTracingEnabled() + binding.settingsTracingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { @@ -93,23 +94,21 @@ class SettingsTracingFragment : Fragment(), private fun setButtonOnClickListener() { val switch = binding.settingsTracingSwitchRow.settingsSwitchRowSwitch + val back = binding.settingsTracingHeader.headerButtonBack.buttonIcon + val bluetooth = binding.settingsTracingStatusBluetooth.tracingStatusCardButton + val connection = binding.settingsTracingStatusConnection.tracingStatusCardButton internalExposureNotificationPermissionHelper = InternalExposureNotificationPermissionHelper(this, this) - switch.setOnCheckedChangeListener { _, _ -> - // android calls this listener also on start, so it has to be verified if the user pressed the switch - if (switch.isPressed) { - ViewBlocker.runAndBlockInteraction(arrayOf(switch)) { - startStopTracing() - } - } + switch.setOnClickListener { + startStopTracing() } - binding.settingsTracingHeader.headerButtonBack.buttonIcon.setOnClickListener { + back.setOnClickListener { (activity as MainActivity).goBack() } - binding.settingsTracingStatusBluetooth.tracingStatusCardButton.setOnClickListener { + bluetooth.setOnClickListener { ExternalActionHelper.toMainSettings(requireContext()) } - binding.settingsTracingStatusConnection.tracingStatusCardButton.setOnClickListener { + connection.setOnClickListener { ExternalActionHelper.toConnections(requireContext()) } } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragment.kt index d61a15600b1fbfd27f491425f993110a486615dd..de00ac35c343d7861c46fd7b122d75b4affb023a 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragment.kt @@ -41,14 +41,9 @@ class SubmissionContactFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.submissionContactRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.submissionContactRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.submissionContactRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragment.kt index dbc66ff1006c4a2aff97fa676cab379b4731d2ed..0ae9e32603cac3dedd9e3797f9cd3a05c80fe1ea 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragment.kt @@ -42,14 +42,9 @@ class SubmissionDispatcherFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.submissionDispatcherRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.submissionDispatcherRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.submissionDispatcherRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDoneFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDoneFragment.kt index dfcc635eb8ba8fc09f2d16eb00f8f7a5657fd451..5efab5ef21f2333b8737bb6d5b80140614a996ba 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDoneFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionDoneFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.navigation.fragment.findNavController import de.rki.coronawarnapp.databinding.FragmentSubmissionDoneBinding @@ -37,6 +38,11 @@ class SubmissionDoneFragment : Fragment() { setButtonOnClickListener() } + override fun onResume() { + super.onResume() + binding.submissionDoneContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) + } + private fun setButtonOnClickListener() { binding.submissionDoneHeader.headerButtonBack.buttonIcon.setOnClickListener { findNavController().doNavigate( diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionIntroFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionIntroFragment.kt index 5c688523b104795de2561f6c2fb47ff3cdeb23f7..3ad69bd6b9a2b6883013917664c96e2646d5ab02 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionIntroFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionIntroFragment.kt @@ -38,14 +38,9 @@ class SubmissionIntroFragment : Fragment() { setButtonOnClickListener() } - override fun onStart() { - super.onStart() - binding.submissionIntroRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.submissionIntroRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.submissionIntroRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun setButtonOnClickListener() { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionQRCodeScanFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionQRCodeScanFragment.kt index 3a92abbf6909357658eaa60e4599a5b87e98d136..85b652cd915a8c26bbda6e26b5cdf88ca30d1d9c 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionQRCodeScanFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionQRCodeScanFragment.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.navigation.fragment.findNavController @@ -185,6 +186,7 @@ class SubmissionQRCodeScanFragment : Fragment() { override fun onResume() { super.onResume() + binding.submissionQrCodeScanContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) if (CameraPermissionHelper.hasCameraPermission(requireActivity())) { binding.submissionQrCodeScanPreview.resume() diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionResultPositiveOtherWarningFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionResultPositiveOtherWarningFragment.kt index 312e91b419c791d1e40d9c2f0a69adab534f24ac..92c15d7fcc3c1004d61795872581049075b4e6c7 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionResultPositiveOtherWarningFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionResultPositiveOtherWarningFragment.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.navigation.fragment.findNavController @@ -41,6 +42,7 @@ class SubmissionResultPositiveOtherWarningFragment : Fragment(), override fun onResume() { super.onResume() + binding.submissionPositiveOtherPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) tracingViewModel.refreshIsTracingEnabled() if (submissionRequested && !submissionFailed) { internalExposureNotificationPermissionHelper.requestPermissionToShareKeys() diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragment.kt index 381ee51522c33f221b4de8eded7e901818965c62..a1188ed16b48a8ecb8699747c35fcb185c02bec3 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragment.kt @@ -120,14 +120,9 @@ class SubmissionTanFragment : Fragment() { }) } - override fun onStart() { - super.onStart() - binding.submissionTanRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - override fun onResume() { super.onResume() - binding.submissionTanRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + binding.submissionTanRoot.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) } private fun goBack() = (activity as MainActivity).goBack() diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragment.kt index cbea694ff9f25e30cab96a2eb16185ec81bda890..c1ea49f3e609baba045c2529fdb7fab718033339 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragment.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.navigation.fragment.findNavController @@ -105,6 +106,7 @@ class SubmissionTestResultFragment : Fragment() { override fun onResume() { super.onResume() + binding.submissionTestResultContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT) submissionViewModel.refreshDeviceUIState() tracingViewModel.refreshIsTracingEnabled() } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FormatterSettingsHelper.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FormatterSettingsHelper.kt index fbaea2c319efae910d7aa3ffcd7cdc0e58f343f8..685ab248557f04c4b65a5fff2293aed962263540 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FormatterSettingsHelper.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FormatterSettingsHelper.kt @@ -87,6 +87,15 @@ fun formatTracingStatusText(tracing: Boolean, bluetooth: Boolean, connection: Bo } } +/** + * Returns a combined string of subtitle and status for the content description for switches + * + * @param subtitle + * @param status + * @return String + */ +fun formatSwitchContentDescription(subtitle: String, status: String): String = "$subtitle $status" + /** * Format the settings tracing description text display depending on tracing status * diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FromatterAccessibilityHelper.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FromatterAccessibilityHelper.kt new file mode 100644 index 0000000000000000000000000000000000000000..987e0f5baafbe661fef8671541f22926a597ecea --- /dev/null +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/formatter/FromatterAccessibilityHelper.kt @@ -0,0 +1,17 @@ +@file:JvmName("FormatterAccessibilityHelper") + +package de.rki.coronawarnapp.util.formatter + +import de.rki.coronawarnapp.CoronaWarnApplication +import de.rki.coronawarnapp.R + +fun formatSuffix(string: String?, suffix: Int): String { + val appContext = CoronaWarnApplication.getAppContext() + return if (string != null) { + "$string ${appContext.getString(suffix)}" + } else "" +} + +fun formatButton(string: String?): String = formatSuffix(string, R.string.suffix_button) + +fun formatImage(string: String?): String = formatSuffix(string, R.string.suffix_image) diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information.xml b/Corona-Warn-App/src/main/res/layout/fragment_information.xml index edef7239dd82bf11429e50628af9cdf1fdf4ff45..299174395f260b10e635dfed719f6211b8df4922 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information.xml @@ -116,6 +116,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:text="@{FormatterInformationHelper.formatVersion()}" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="@+id/guideline_body" app:layout_constraintTop_toBottomOf="@+id/information_legal" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_about.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_about.xml index d07c91a08f0d0ef5969d087e1f16fc1630663279..e6a996ea347602db675a210e35b8572c791b7b6a 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_about.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_about.xml @@ -4,7 +4,9 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_height="match_parent" + android:contentDescription="@string/information_about_title" + android:focusable="true"> <include android:id="@+id/information_about_header" @@ -21,7 +23,6 @@ android:id="@+id/information_about_scrollview" android:layout_width="0dp" android:layout_height="0dp" - android:contentDescription="@string/information_about_title" android:fillViewport="true" app:layout_constraintBottom_toBottomOf="@+id/guideline_bottom" app:layout_constraintEnd_toEndOf="parent" @@ -30,8 +31,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <include android:id="@+id/information_about_header_details" @@ -52,6 +52,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" android:text="@string/information_about_body_emphasized" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_about_header_details" /> @@ -63,6 +64,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:text="@string/information_about_body" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_about_body_emphasized" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_contact.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_contact.xml index 8d8dafb4e0f4603c471b7ed5dd5f23a206fe6388..b903390504c4f9dcf089f94b59b0039b2a40a1ae 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_contact.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_contact.xml @@ -6,6 +6,7 @@ android:id="@+id/information_contact_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:focusable="true" android:contentDescription="@string/information_contact_title"> <include @@ -30,8 +31,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <include android:id="@+id/information_contact_header_details" @@ -59,10 +59,12 @@ <TextView android:id="@+id/information_contact_subtitle_phone" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:text="@string/information_contact_subtitle_phone" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/divider" /> @@ -83,6 +85,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:text="@string/information_contact_body_phone" + android:focusable="true" app:layout_constraintEnd_toEndOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_contact_navigation_row_phone" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_legal.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_legal.xml index b85d76155a137c606b58ba694070fef5508b0594..6827fea70c2affbae376b0db88eebaac2a6c5de4 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_legal.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_legal.xml @@ -14,6 +14,7 @@ android:id="@+id/information_legal_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:focusable="true" android:contentDescription="@string/information_legal_title"> <include @@ -61,6 +62,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" android:text="@string/information_legal_body_publisher" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_header_details" /> @@ -71,6 +73,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" + android:focusable="true" app:layout_constraintEnd_toEndOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_body_publisher" /> @@ -78,10 +81,12 @@ <TextView android:id="@+id/information_legal_headline_contact" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:text="@string/information_legal_headline_contact" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_divider_contact" /> @@ -93,6 +98,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" android:text="@string/information_legal_subtitle_contact" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_headline_contact" /> @@ -110,10 +116,12 @@ <TextView android:id="@+id/information_legal_headline_taxid" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:text="@string/information_legal_headline_taxid" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_divider_taxid" /> @@ -125,6 +133,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" android:text="@string/information_legal_subtitle_taxid" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/information_legal_headline_taxid" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_privacy.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_privacy.xml index 05da54a758869f08b5e0d95a6758993d2b46f858..655046eaf8006bb7daf07df7b41b891e68bdd30a 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_privacy.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_privacy.xml @@ -14,6 +14,7 @@ android:id="@+id/information_privacy_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:focusable="true" android:contentDescription="@string/information_privacy_title"> <include diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_technical.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_technical.xml index d9491981764baa72bbd6e03a77f6b5d4ead60d00..fa037a6adff6dd1b0fb2c479f815fa60b26c4117 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_technical.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_technical.xml @@ -14,6 +14,7 @@ android:id="@+id/information_technical_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:focusable="true" android:contentDescription="@string/information_technical_title"> <include @@ -31,7 +32,6 @@ android:layout_width="@dimen/match_constraint" android:layout_height="@dimen/match_constraint" android:fillViewport="true" - android:focusable="true" app:layout_constraintBottom_toBottomOf="@+id/guideline_bottom" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_information_terms.xml b/Corona-Warn-App/src/main/res/layout/fragment_information_terms.xml index e4e13e84fb16ad1fb2f5dc72d07c3ebc971c3c82..080c8f6df933158df8c6be5d8c06190612e2a431 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_information_terms.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_information_terms.xml @@ -14,6 +14,7 @@ android:id="@+id/information_terms_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:focusable="true" android:contentDescription="@string/information_terms_title"> <include diff --git a/Corona-Warn-App/src/main/res/layout/fragment_main.xml b/Corona-Warn-App/src/main/res/layout/fragment_main.xml index 6a9bd45d4e0208d49f49e6cac454f05170b1cc87..0babbd7a792d8dcb9879078f67e2f59e2e4952f0 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_main.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_main.xml @@ -9,6 +9,8 @@ <import type="de.rki.coronawarnapp.util.formatter.FormatterSubmissionHelper" /> + <import type="de.rki.coronawarnapp.util.formatter.FormatterAccessibilityHelper" /> + <variable name="submissionViewModel" type="de.rki.coronawarnapp.ui.viewmodel.SubmissionViewModel" /> @@ -48,9 +50,10 @@ android:id="@+id/main_header_logo" android:layout_width="0dp" android:layout_height="match_parent" - android:importantForAccessibility="no" + android:contentDescription="@{FormatterAccessibilityHelper.formatImage(@string/accessibility_logo)}" android:scaleType="fitStart" android:src="@drawable/ic_main_header" + android:focusable="true" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/main_header_share" app:layout_constraintStart_toStartOf="parent" @@ -61,8 +64,9 @@ layout="@layout/include_button_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:focusable="true" app:icon="@{@drawable/ic_main_share}" - app:iconDescription="@{@string/main_share_title}" + app:iconDescription="@{@string/button_share}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/main_header_options_menu" app:layout_constraintTop_toTopOf="parent" /> @@ -72,8 +76,9 @@ layout="@layout/include_button_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:focusable="true" app:icon="@{@drawable/ic_main_settings}" - app:iconDescription="@{@string/accessibility_menu}" + app:iconDescription="@{@string/button_menu}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_main_overview.xml b/Corona-Warn-App/src/main/res/layout/fragment_main_overview.xml index 92c15258c0321986f0d9933521a70dff041296ce..4805cd6cdca51d2d71ce2613eb807c4c439b428e 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_main_overview.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_main_overview.xml @@ -66,6 +66,7 @@ app:body="@{@string/main_overview_body_risk}" app:icon="@{@drawable/ic_main_overview_2}" app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/main_overview_tracing" app:subtitle="@{@string/main_overview_subtitle_risk}" /> @@ -80,15 +81,29 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/main_overview_risk"> - <include - android:id="@+id/main_overview_risk_subtitle_text" - layout="@layout/include_main_overview_glossary" + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/main_overview_risk_headline" + style="@style/row" android:layout_width="0dp" android:layout_height="wrap_content" + android:paddingTop="@dimen/spacing_small" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:subtitle="@{@string/main_overview_subtitle_risk_levels}" /> + app:layout_constraintTop_toTopOf="parent"> + + <TextView + style="@style/headline6" + android:accessibilityHeading="true" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_marginStart="@dimen/guideline_body_title" + android:text="@string/main_overview_subtitle_risk_levels" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + <include android:id="@+id/main_overview_risk_increased_risk" @@ -99,7 +114,7 @@ app:iconTint="@{@color/colorSemanticHighRisk}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_subtitle_text" + app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_headline" app:subtitle="@{@string/main_overview_subtitle_increased_risk}" /> <include @@ -159,6 +174,7 @@ <TextView style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/guideline_body_title" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_main_share.xml b/Corona-Warn-App/src/main/res/layout/fragment_main_share.xml index f9b4b42b3d82dbcdd152c9caf107ad884e9ee8cf..e69e6cfafee72896cc6388e6c6fff575d585e75a 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_main_share.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_main_share.xml @@ -11,8 +11,10 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/main_share_container" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_height="match_parent" + android:contentDescription="@string/main_share_title"> <include android:id="@+id/main_share_header" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_notifications.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_notifications.xml index 1800f51050ee1f7067070a99771136549596cf41..98934eed2f6aa477fb1d0ed4043f9428b21558cb 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_notifications.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_notifications.xml @@ -7,6 +7,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:contentDescription="@string/onboarding_notifications_accessibility_title" + android:focusable="true" android:fillViewport="true"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_privacy.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_privacy.xml index 739392b9baa54a2fd903a9b0563132818b62ac74..211d7a736c40f5465a675f9a9c564946e8bb577c 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_privacy.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_privacy.xml @@ -15,6 +15,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:contentDescription="@string/onboarding_privacy_accessibility_title" + android:focusable="true" android:fillViewport="true"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_test.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_test.xml index 8fd19dc34817701fb8c98369ead94a7d7b877639..5a73d2835b999dd33953235dd6e73b65d74cb462 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_test.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_test.xml @@ -7,6 +7,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:contentDescription="@string/onboarding_test_accessibility_title" + android:focusable="true" android:fillViewport="true"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_tracing.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_tracing.xml index dca4457c3534889560cb34e3e355ccc8d678cf52..c927d4d090d9087e92c539f04b60ca1b276bd575 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding_tracing.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding_tracing.xml @@ -7,6 +7,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:contentDescription="@string/onboarding_tracing_accessibility_title" + android:focusable="true" android:fillViewport="true"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/Corona-Warn-App/src/main/res/layout/fragment_risk_details.xml b/Corona-Warn-App/src/main/res/layout/fragment_risk_details.xml index 2289e51a0df681254bd27a7615555c06732f5a21..00cfdb750cd472931e3885bb962da9bac1be79aa 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_risk_details.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_risk_details.xml @@ -61,6 +61,7 @@ <TextView android:id="@+id/risk_details_header_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/guideline_body_title" @@ -99,8 +100,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <include android:id="@+id/risk_details_risk_card" @@ -118,11 +118,12 @@ <TextView android:id="@+id/risk_details_behavior_headline" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" - android:focusable="false" android:text="@string/risk_details_headline_behavior" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/risk_details_risk_card" /> @@ -133,7 +134,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" - android:focusable="false" + android:focusable="true" android:text="@string/risk_details_subtitle_behavior" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" @@ -154,7 +155,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" + android:focusable="true" android:visibility="@{FormatterRiskHelper.formatVisibilityBehavior(tracingViewModel.riskLevel)}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -167,7 +168,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" + android:focusable="true" android:visibility="@{FormatterRiskHelper.formatVisibilityBehaviorIncreasedRisk(tracingViewModel.riskLevel)}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -181,7 +182,6 @@ style="@style/greyBodyBackground" android:layout_width="match_parent" android:layout_height="wrap_content" - android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/risk_details_behavior_wrapper"> @@ -189,10 +189,11 @@ <TextView android:id="@+id/risk_details_information_headline" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="match_parent" android:layout_height="wrap_content" - android:focusable="false" android:text="@string/risk_details_headline_infection_risk" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -203,8 +204,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" - android:focusable="false" android:text="@string/risk_details_subtitle_infection_risk" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/risk_details_information_headline" /> @@ -215,9 +216,9 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@{FormatterRiskHelper.formatRiskDetailsRiskLevelBody(tracingViewModel.riskLevel, tracingViewModel.daysSinceLastExposure)}" android:visibility="@{FormatterHelper.formatVisibilityText(FormatterRiskHelper.formatRiskDetailsRiskLevelBody(tracingViewModel.riskLevel, tracingViewModel.daysSinceLastExposure))}" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/risk_details_information_subtitle" /> @@ -228,8 +229,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@string/risk_details_information_body_notice" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/risk_details_information_body" /> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_settings.xml b/Corona-Warn-App/src/main/res/layout/fragment_settings.xml index a9e1d1e24d53cc45726dee5c6d82393c88958d31..49b89205e701f9fb68e34edc552096efbd3235e2 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_settings.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_settings.xml @@ -17,6 +17,9 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/settings_container" + android:contentDescription="@string/settings_title" + android:focusable="true" android:layout_width="match_parent" android:layout_height="match_parent"> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_settings_notifications.xml b/Corona-Warn-App/src/main/res/layout/fragment_settings_notifications.xml index 0a62638a9e415643137a695067aa8cf1fbcba3a9..349df6f6359f13632086862ff4f87a93359f9f05 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_settings_notifications.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_settings_notifications.xml @@ -14,6 +14,9 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/settings_notifications_container" + android:contentDescription="@string/settings_notifications_title" + android:focusable="true" android:layout_width="match_parent" android:layout_height="match_parent"> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_settings_reset.xml b/Corona-Warn-App/src/main/res/layout/fragment_settings_reset.xml index 1c5c5143cf9349676ea8e6c4c96c8da6adb86fab..66961944eaa54cebc2808d1fba7ca77f04022c6e 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_settings_reset.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_settings_reset.xml @@ -3,6 +3,9 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/settings_reset_container" + android:contentDescription="@string/settings_reset_title" + android:focusable="true" android:layout_width="match_parent" android:layout_height="match_parent"> 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 4e2f001aaffb49c830a122a1308a2669c5ca49d2..a177b0e9eb52050b02501edd759d9b5143d20ce2 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 @@ -19,6 +19,9 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/settings_tracing_container" + android:contentDescription="@string/settings_tracing_title" + android:focusable="true" android:layout_width="match_parent" android:layout_height="match_parent"> @@ -116,6 +119,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_tiny" android:visibility="@{FormatterSettingsHelper.formatTracingStatusVisibilityTracing(tracingViewModel.isTracingEnabled(), settingsViewModel.isBluetoothEnabled(), settingsViewModel.isConnectionEnabled())}" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toEndOf="@+id/guideline_start" app:layout_constraintTop_toTopOf="parent"> @@ -136,6 +140,7 @@ android:id="@+id/settings_tracing_status_tracing_circle_progress" android:layout_width="@dimen/spacing_huge" android:layout_height="@dimen/spacing_huge" + android:importantForAccessibility="no" app:circleWidth="@dimen/circle_large_width" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" @@ -165,6 +170,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:text="@string/settings_tracing_body_text" + android:focusable="true" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" 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 78b422fa06bfd7aa4e0750229e56dd27b58c0590..92e8e11e3971b85aa8221a46be91b9ae2b68dc3d 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 @@ -4,6 +4,8 @@ xmlns:tools="http://schemas.android.com/tools"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/submission_done_container" + android:contentDescription="@string/submission_done_title" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_intro.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_intro.xml index 4423f39b4210742c2d64f0192f3752608803eeb5..cf44b0a02802ae9206f0ded2eb34f726173278e8 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_intro.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_intro.xml @@ -9,6 +9,7 @@ android:layout_height="match_parent" android:contentDescription="@string/submission_intro_accessibility_title" android:fillViewport="true" + android:focusable="true" tools:context=".ui.submission.SubmissionIntroFragment"> <include diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_positive_other_warning.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_positive_other_warning.xml index 6a827d2f8e5c48e27577668edc96297294858e6c..638b1c894201a6da1191a8b311e1c360fd2db843 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_positive_other_warning.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_positive_other_warning.xml @@ -4,6 +4,8 @@ xmlns:tools="http://schemas.android.com/tools"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/submission_positive_other_privacy_container" + android:contentDescription="@string/submission_positive_other_warning_title" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" @@ -27,9 +29,9 @@ app:layout_constraintBottom_toTopOf="@+id/guideline_action" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/submission_positive_other_warning_header" - app:layout_constraintVertical_bias="0.0" /> + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/submission_positive_other_warning_header" + app:layout_constraintVertical_bias="0.0" /> <Button android:id="@+id/submission_positive_other_warning_button_next" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_qr_code_scan.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_qr_code_scan.xml index 56ff871076fdc3728eba65a976c58f2ea9f7e861..8d9f69c28255022df5873adf3fdaf8e115eb5476 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_qr_code_scan.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_qr_code_scan.xml @@ -3,6 +3,8 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/submission_qr_code_scan_container" + android:contentDescription="@string/submission_qr_code_scan_title" android:layout_width="match_parent" android:layout_height="match_parent"> diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result.xml index a7368ab3d12339aa4500e9338f04970d3fafa398..3f8a927308e11cb9d894bdcc7dda3fb64d65455e 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result.xml @@ -12,6 +12,8 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/submission_test_result_container" + android:contentDescription="@string/submission_test_result_headline" android:layout_width="match_parent" android:layout_height="match_parent"> diff --git a/Corona-Warn-App/src/main/res/layout/include_button_icon.xml b/Corona-Warn-App/src/main/res/layout/include_button_icon.xml index 56a5d672356219d4f5e2d50362a978790b98f74d..ec8918be59f54efd5514830d99519e7666f88329 100644 --- a/Corona-Warn-App/src/main/res/layout/include_button_icon.xml +++ b/Corona-Warn-App/src/main/res/layout/include_button_icon.xml @@ -6,6 +6,8 @@ <import type="de.rki.coronawarnapp.util.formatter.FormatterHelper" /> + <import type="de.rki.coronawarnapp.util.formatter.FormatterAccessibilityHelper" /> + <variable name="icon" type="android.graphics.drawable.Drawable" /> @@ -28,8 +30,8 @@ style="@style/icon" android:layout_width="@dimen/icon_size_button" android:layout_height="@dimen/icon_size_button" - android:contentDescription="@{FormatterHelper.formatEmptyString(iconDescription)}" android:src="@{icon}" + android:contentDescription="@{FormatterAccessibilityHelper.formatButton(iconDescription)}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_dispatcher_card.xml b/Corona-Warn-App/src/main/res/layout/include_dispatcher_card.xml index 4d500b19ee035aaf9fb40e4bc992066d54dca05e..161d4745bc7fee68690964ea7502fceaf46a519c 100644 --- a/Corona-Warn-App/src/main/res/layout/include_dispatcher_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_dispatcher_card.xml @@ -30,6 +30,7 @@ <TextView android:id="@+id/dispatcher_card_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginStart="@dimen/spacing_normal" diff --git a/Corona-Warn-App/src/main/res/layout/include_header.xml b/Corona-Warn-App/src/main/res/layout/include_header.xml index 4dcf94459addc323cb377eb555afa07af627be13..e30f7bdf8c2e08f26e97e9ef1ab322fdeddd7749 100644 --- a/Corona-Warn-App/src/main/res/layout/include_header.xml +++ b/Corona-Warn-App/src/main/res/layout/include_header.xml @@ -34,12 +34,13 @@ <TextView android:id="@+id/header_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/guideline_body_title" android:text="@{title}" app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toTopOf="parent" tools:text="@string/settings_title" /> @@ -51,6 +52,13 @@ android:orientation="vertical" app:layout_constraintGuide_begin="@dimen/guideline_start" /> + <androidx.constraintlayout.widget.Guideline + android:id="@+id/guideline_end" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="vertical" + app:layout_constraintGuide_end="@dimen/guideline_end" /> + <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_back" android:layout_width="wrap_content" diff --git a/Corona-Warn-App/src/main/res/layout/include_information_details.xml b/Corona-Warn-App/src/main/res/layout/include_information_details.xml index 066967d1109e929fd8e1218e1db7d4c51949352d..36d411bdffc8ddcfb2c9ff8226e7ef26a71634e8 100644 --- a/Corona-Warn-App/src/main/res/layout/include_information_details.xml +++ b/Corona-Warn-App/src/main/res/layout/include_information_details.xml @@ -7,6 +7,8 @@ <import type="de.rki.coronawarnapp.util.formatter.FormatterHelper" /> + <import type="de.rki.coronawarnapp.util.formatter.FormatterAccessibilityHelper" /> + <variable name="illustration" type="android.graphics.drawable.Drawable" /> @@ -32,7 +34,8 @@ android:id="@+id/information_details_header_illustration" android:layout_width="0dp" android:layout_height="wrap_content" - android:contentDescription="@{illustrationDescription}" + android:contentDescription="@{FormatterAccessibilityHelper.formatImage(illustrationDescription)}" + android:focusable="true" android:src="@{illustration}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -50,6 +53,8 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" + android:accessibilityHeading="true" + android:focusable="true" android:text="@{headline}" android:visibility="@{FormatterHelper.formatVisibilityText(headline)}" app:layout_constraintEnd_toEndOf="@id/guideline_end" @@ -63,6 +68,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" + android:focusable="true" android:text="@{body}" android:visibility="@{FormatterHelper.formatVisibilityText(body)}" app:layout_constraintEnd_toEndOf="@id/guideline_end" diff --git a/Corona-Warn-App/src/main/res/layout/include_main_faq_card.xml b/Corona-Warn-App/src/main/res/layout/include_main_faq_card.xml index 17d2229e0eea029e5cba9c7ca8e091ca2e573706..fbb3dc3ea47e78df244a4af2fe6c9e33d63d200c 100644 --- a/Corona-Warn-App/src/main/res/layout/include_main_faq_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_main_faq_card.xml @@ -5,6 +5,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/main_card" style="@style/card" + android:contentDescription="@string/hint_external_webpage" android:layout_width="match_parent" android:layout_height="wrap_content"> @@ -30,6 +31,7 @@ <TextView android:id="@+id/main_card_header_headline" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginStart="@dimen/spacing_small" diff --git a/Corona-Warn-App/src/main/res/layout/include_main_overview_glossary.xml b/Corona-Warn-App/src/main/res/layout/include_main_overview_glossary.xml index ca4ae118936199c46c6f118916215b4b3bba42ce..d4c833a58569f77848db9163810471c32b5dcdca 100644 --- a/Corona-Warn-App/src/main/res/layout/include_main_overview_glossary.xml +++ b/Corona-Warn-App/src/main/res/layout/include_main_overview_glossary.xml @@ -33,6 +33,7 @@ <TextView android:id="@+id/main_overview_glossary_subtitle" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:text="@{subtitle}" diff --git a/Corona-Warn-App/src/main/res/layout/include_main_overview_segment.xml b/Corona-Warn-App/src/main/res/layout/include_main_overview_segment.xml index 7fb81c9ee89b70cb60625ce233381d0dc66306f0..c388fa4aa046972da5d6b691c1499c6f90c8698b 100644 --- a/Corona-Warn-App/src/main/res/layout/include_main_overview_segment.xml +++ b/Corona-Warn-App/src/main/res/layout/include_main_overview_segment.xml @@ -44,6 +44,7 @@ <TextView android:id="@+id/main_overview_segment_subtitle" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:focusable="false" diff --git a/Corona-Warn-App/src/main/res/layout/include_navigation_row.xml b/Corona-Warn-App/src/main/res/layout/include_navigation_row.xml index 0092de70be966880ba68f3672b156e30f1fbb05e..0254b11d32f6459ffd8f5b0e54e33203dc2ac7fb 100644 --- a/Corona-Warn-App/src/main/res/layout/include_navigation_row.xml +++ b/Corona-Warn-App/src/main/res/layout/include_navigation_row.xml @@ -31,6 +31,7 @@ style="@style/row" android:layout_width="0dp" android:layout_height="wrap_content" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> @@ -41,7 +42,7 @@ android:layout_width="@dimen/icon_size_settings" android:layout_height="@dimen/icon_size_settings" android:layout_marginEnd="@dimen/spacing_small" - android:contentDescription="@string/lorem_ipsum" + android:importantForAccessibility="no" android:src="@{icon}" android:visibility="@{FormatterHelper.formatVisibilityIcon(icon)}" app:layout_constraintBottom_toBottomOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_onboarding.xml b/Corona-Warn-App/src/main/res/layout/include_onboarding.xml index 03d9af5c84b9f0f5a26ce68bdeb9ba6a6687885a..c9fa1240ce949d9b7d269350dd071b2ce2488ef1 100644 --- a/Corona-Warn-App/src/main/res/layout/include_onboarding.xml +++ b/Corona-Warn-App/src/main/res/layout/include_onboarding.xml @@ -7,6 +7,8 @@ <import type="de.rki.coronawarnapp.util.formatter.FormatterHelper" /> + <import type="de.rki.coronawarnapp.util.formatter.FormatterAccessibilityHelper" /> + <variable name="illustration" type="android.graphics.drawable.Drawable" /> @@ -47,15 +49,15 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <ImageView android:id="@+id/onboarding_illustration" android:layout_width="0dp" android:layout_height="wrap_content" - android:contentDescription="@{illustrationDescription}" + android:contentDescription="@{FormatterAccessibilityHelper.formatImage(illustrationDescription)}" android:src="@{illustration}" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" @@ -64,11 +66,12 @@ <TextView android:id="@+id/onboarding_headline" style="@style/headline4" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@{headline}" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/onboarding_illustration" @@ -80,9 +83,9 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@{subtitle}" android:visibility="@{FormatterHelper.formatVisibilityText(subtitle)}" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/onboarding_headline" @@ -94,8 +97,8 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@{body}" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/onboarding_subtitle" @@ -107,9 +110,9 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@{bodyEmphasized}" android:visibility="@{FormatterHelper.formatVisibilityText(bodyEmphasized)}" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@id/onboarding_body" @@ -124,6 +127,7 @@ android:visibility="@{FormatterHelper.formatVisibilityText(headlineCard)}" app:body="@{bodyCard}" app:headline="@{headlineCard}" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_card_end" app:layout_constraintStart_toStartOf="@+id/guideline_card_start" app:layout_constraintTop_toBottomOf="@+id/onboarding_body_emphasized" /> diff --git a/Corona-Warn-App/src/main/res/layout/include_privacy_card.xml b/Corona-Warn-App/src/main/res/layout/include_privacy_card.xml index fa592e659e4314b1f4202221ed48729c6dc3c015..6da5f3ec6e4458480425f966ed77f814ee1e7a03 100644 --- a/Corona-Warn-App/src/main/res/layout/include_privacy_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_privacy_card.xml @@ -13,9 +13,11 @@ <TextView android:id="@+id/privacy_card_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:text="@string/submission_positive_other_warning_privacy_title" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -27,6 +29,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" android:text="@string/submission_positive_other_warning_privacy_body" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/privacy_card_title" /> diff --git a/Corona-Warn-App/src/main/res/layout/include_risk_card_header.xml b/Corona-Warn-App/src/main/res/layout/include_risk_card_header.xml index 4d85a537f3f856cd865a1756c04b7b6db3c381cb..fccd1ae0cfa564be9eca60de3f7930cff29e1adb 100644 --- a/Corona-Warn-App/src/main/res/layout/include_risk_card_header.xml +++ b/Corona-Warn-App/src/main/res/layout/include_risk_card_header.xml @@ -25,6 +25,7 @@ <TextView android:id="@+id/risk_card_header_headline" + android:accessibilityHeading="true" style="@style/headline5" android:layout_width="0dp" android:layout_height="wrap_content" diff --git a/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_row.xml b/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_row.xml index a58fad41380b545768d741874b60ad24e9d947c6..3049fb21f3524a37f342f1f2a5c5fa4b3323658b 100644 --- a/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_row.xml +++ b/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_row.xml @@ -55,7 +55,6 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/spacing_small" - android:focusable="false" android:text="@{body}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_settings_switch_row.xml b/Corona-Warn-App/src/main/res/layout/include_settings_switch_row.xml index 1b8527107cbdad6a0e14a60936190d4bcde98542..8fc6534d9ea13c360164d3a1f7d761b48d50e362 100644 --- a/Corona-Warn-App/src/main/res/layout/include_settings_switch_row.xml +++ b/Corona-Warn-App/src/main/res/layout/include_settings_switch_row.xml @@ -41,6 +41,7 @@ style="@style/row" android:layout_width="0dp" android:layout_height="wrap_content" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> @@ -71,6 +72,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_mega_tiny" + android:accessibilityLiveRegion="assertive" android:text="@{statusText}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -85,6 +87,7 @@ android:layout_height="wrap_content" android:checked="@{status}" android:enabled="@{enabled}" + android:contentDescription="@{FormatterSettingsHelper.formatSwitchContentDescription(subtitle, statusText)}" android:theme="@style/switchBase" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_step_entry_simple_body.xml b/Corona-Warn-App/src/main/res/layout/include_step_entry_simple_body.xml index f1b938eca4dbfe08adb6740deacff6a13ce1e1dd..b10fe9614a877033f9eee5d0481aba274d845421 100644 --- a/Corona-Warn-App/src/main/res/layout/include_step_entry_simple_body.xml +++ b/Corona-Warn-App/src/main/res/layout/include_step_entry_simple_body.xml @@ -8,6 +8,7 @@ <TextView android:id="@+id/simple_step_entry_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_contact.xml b/Corona-Warn-App/src/main/res/layout/include_submission_contact.xml index 4394189dd68f2372960116d254b61ebb0f48cae1..110933b75e570ae96415290e579d72997ee575ea 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_contact.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_contact.xml @@ -8,14 +8,15 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <ImageView android:id="@+id/submission_contact_illustration" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:src="@drawable/ic_submission_illustration_hotline" + android:contentDescription="@string/information_contact_illustration_description" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -26,8 +27,8 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" - android:focusable="false" android:text="@string/submission_contact_body" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@id/submission_contact_illustration" /> @@ -35,11 +36,12 @@ <TextView android:id="@+id/submission_contact_headline" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" - android:focusable="false" android:text="@string/submission_contact_headline" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_contact_body" /> @@ -49,6 +51,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="true" android:contentDescription="@string/submission_contact_step_1_content" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" @@ -74,6 +77,7 @@ <TextView android:id="@+id/submission_contact_step_1_number" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" @@ -102,6 +106,7 @@ android:id="@+id/submission_contact_step_2" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" + android:focusable="true" android:contentDescription="@string/submission_contact_step_2_content" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_dispatcher.xml b/Corona-Warn-App/src/main/res/layout/include_submission_dispatcher.xml index 6cca2badd71a21b4258853bf6a87279d1888fb36..ace4ba274b299e446cde53f6ffba9c6299a6cf50 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_dispatcher.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_dispatcher.xml @@ -19,6 +19,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" android:text="@string/submission_dispatcher_subheadline" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toTopOf="parent" /> @@ -44,6 +45,8 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" + android:clickable="true" + android:focusable="true" app:body="@{@string/submission_dispatcher_tan_code_card_text}" app:headline="@{@string/submission_dispatcher_card_tan_code}" app:illustration="@{@drawable/ic_submission_illustration_tan_code_card}" @@ -57,6 +60,8 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" + android:clickable="true" + android:focusable="true" app:body="@{@string/submission_dispatcher_tan_tele_card_text}" app:headline="@{@string/submission_dispatcher_card_tan_tele}" app:illustration="@{@drawable/ic_submission_illustration_tan_hotline_card}" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_done.xml b/Corona-Warn-App/src/main/res/layout/include_submission_done.xml index 683bd1f3f28f3b8b349e8d4d6d6e4a41ed7757f2..a3cdc8db715641cead330afbc8789deba05402b1 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_done.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_done.xml @@ -16,7 +16,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:contentDescription="@string/submission_done_illustration_description" - android:importantForAccessibility="no" + android:focusable="true" android:src="@drawable/ic_submission_illustration_thanks" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -25,10 +25,12 @@ <TextView android:id="@+id/submission_done_headline" style="@style/headline4" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" android:text="@string/submission_done_title" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_done_hero_illustration" /> diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml b/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml index 10e9634c8bc14606f76a4816a626206d8d078d2e..a988e9685244c9409f8c640b6449bef429b1ebcc 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml @@ -22,6 +22,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:text="@string/submission_done_body" + android:focusable="true" app:layout_constraintEnd_toEndOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toTopOf="parent" /> @@ -29,10 +30,12 @@ <TextView android:id="@+id/submission_done_subtitle" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" android:text="@string/submission_done_subtitle" + android:focusable="true" app:layout_constraintEnd_toEndOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_done_text" /> diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_done_further_info.xml b/Corona-Warn-App/src/main/res/layout/include_submission_done_further_info.xml index 708f6a0a7f05206ed181f8270a89133d09c660af..9b7f903402407811d8be2224dff743d7d303b961 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_done_further_info.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_done_further_info.xml @@ -13,8 +13,10 @@ <TextView android:id="@+id/further_info_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" + android:focusable="true" android:text="@string/submission_done_further_info_title" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -24,6 +26,7 @@ android:id="@+id/further_info_text" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" + android:focusable="true" android:layout_marginTop="@dimen/spacing_normal" app:entries="@array/submission_done_further_info_bullet_points" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_intro.xml b/Corona-Warn-App/src/main/res/layout/include_submission_intro.xml index 11f872f44b063d6e48aa98083560d9c51e786daf..47cca7183e2a4b7808e7340b29dc22a89c376918 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_intro.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_intro.xml @@ -8,16 +8,15 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="true"> + android:layout_height="wrap_content"> <ImageView android:id="@+id/submission_intro_hero_illustration" - contentDescription="@{@string/submission_intro_illustration_description}" + android:contentDescription="@{@string/submission_intro_illustration_description}" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" - android:importantForAccessibility="no" android:src="@drawable/ic_illustration_test" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -25,11 +24,12 @@ <TextView android:id="@+id/submission_intro_headline" style="@style/headline4" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@string/submission_intro_headline" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_intro_hero_illustration" /> @@ -40,8 +40,8 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" - android:focusable="false" android:text="@string/submission_intro_text" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_intro_headline" /> @@ -49,9 +49,9 @@ <de.rki.coronawarnapp.ui.view.BulletPointList android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" - android:focusable="false" android:paddingBottom="@dimen/spacing_normal" app:entries="@array/submission_intro_bullet_points" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@id/submission_intro_text" /> diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_positive_other_warning.xml b/Corona-Warn-App/src/main/res/layout/include_submission_positive_other_warning.xml index d2c5844584603ffc6f1da6f546009231e72d38c2..46a38d63298c2ca32d189fb994f0f301d1e9b76e 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_positive_other_warning.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_positive_other_warning.xml @@ -23,11 +23,13 @@ <TextView android:id="@+id/submission_positive_other_warning_headline" + android:accessibilityHeading="true" style="@style/headline5" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" android:text="@string/submission_positive_other_warning_headline" + android:focusable="true" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" app:layout_constraintTop_toBottomOf="@+id/submission_positive_other_warning_hero_illustration" /> @@ -38,6 +40,7 @@ android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="true" android:text="@string/submission_positive_other_warning_body" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_content.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_content.xml index 6d11a80ed55aa00f5aff1fe802dece9376dc78b0..9bb43b3cf3ecf32bdd41f5d1116500b6091f9088 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_content.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_content.xml @@ -22,6 +22,7 @@ <TextView android:id="@+id/submission_status_card_content_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginStart="@dimen/card_padding" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_done.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_done.xml index c6a968cecdf3224d0f420a46801d7a6e2a317864..44aae6bb807ed617ca3bf333ec91a1ca86949b9e 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_done.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_done.xml @@ -12,6 +12,7 @@ <TextView android:id="@+id/submission_done_card_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginStart="@dimen/spacing_normal" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_fetching.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_fetching.xml index 9b8209f5db50b9edc98a257481037139ca7f6c84..46c1d6cb61996e1e794d70ca2cd3959acede1ca1 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_fetching.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_fetching.xml @@ -12,6 +12,7 @@ <TextView android:id="@+id/submission_status_card_fetching_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:text="@string/submission_status_card_title_fetching" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_positive.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_positive.xml index 702b27048b15207536c16f3e095a8af6e2735cf2..0b1b0a1cae9a62c9ec7e2bb852ba2c9c63ff1bdc 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_positive.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_positive.xml @@ -22,6 +22,7 @@ <TextView android:id="@+id/submission_status_card_positive_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginEnd="@dimen/spacing_small" @@ -64,6 +65,7 @@ <TextView android:id="@+id/submission_status_card_positive_result_subtitle" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_unregistered.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_unregistered.xml index 491428bf7198015b5a30fe9f504db7ed548df95a..01fa72d8dce354cee9c0921f98f60209ef396e59 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_status_card_unregistered.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_unregistered.xml @@ -13,6 +13,7 @@ <TextView android:id="@+id/submission_status_card_unregistered_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginStart="@dimen/card_padding" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_test_result.xml b/Corona-Warn-App/src/main/res/layout/include_submission_test_result.xml index 1baf0257afbf7527f8ea0ec7a3cfcef02dbc712c..a479ec1ccef516e263981980d36a0670e4e3f91f 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_test_result.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_test_result.xml @@ -35,6 +35,7 @@ <TextView android:id="@+id/submission_test_result_subtitle" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_medium" diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_test_result_negative_further_info.xml b/Corona-Warn-App/src/main/res/layout/include_submission_test_result_negative_further_info.xml index 7beff057f55c5fbff3707df6bcc029a099142c5b..c5991128a1817d8db3a2fd86419d1d322b1c14e8 100644 --- a/Corona-Warn-App/src/main/res/layout/include_submission_test_result_negative_further_info.xml +++ b/Corona-Warn-App/src/main/res/layout/include_submission_test_result_negative_further_info.xml @@ -13,6 +13,7 @@ <TextView android:id="@+id/further_info_title" style="@style/headline5" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:text="@string/test_result_card_negative_further_info_title" diff --git a/Corona-Warn-App/src/main/res/layout/include_test_result_card.xml b/Corona-Warn-App/src/main/res/layout/include_test_result_card.xml index d0704542a6ecddd5a48c6ecaa73bf77b62414fe9..7e2140709a73eff44a30fcee1600e4b6bf0a1f08 100644 --- a/Corona-Warn-App/src/main/res/layout/include_test_result_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_test_result_card.xml @@ -20,11 +20,13 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/card_dark" + android:focusable="true" android:padding="@dimen/card_padding"> <TextView android:id="@+id/test_result_card_headline" style="@style/body2" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginEnd="@dimen/spacing_small" diff --git a/Corona-Warn-App/src/main/res/layout/include_test_result_card_positive.xml b/Corona-Warn-App/src/main/res/layout/include_test_result_card_positive.xml index e6f3bf2a7d2cd37c7515d69cb4ba2bbee12685da..23a5b5500c460d725df85274a34b0944e4ee856c 100644 --- a/Corona-Warn-App/src/main/res/layout/include_test_result_card_positive.xml +++ b/Corona-Warn-App/src/main/res/layout/include_test_result_card_positive.xml @@ -5,11 +5,13 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <TextView android:id="@+id/test_result_card_positive_title" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" android:layout_marginEnd="@dimen/spacing_small" diff --git a/Corona-Warn-App/src/main/res/layout/include_tracing_status_card.xml b/Corona-Warn-App/src/main/res/layout/include_tracing_status_card.xml index 9d5c53f07cf188e7ff4ab4be22667ff4ea51493b..e28b2fc320da0ab759b2f55206b8a5d16386ebee 100644 --- a/Corona-Warn-App/src/main/res/layout/include_tracing_status_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_tracing_status_card.xml @@ -6,6 +6,8 @@ <import type="de.rki.coronawarnapp.util.formatter.FormatterHelper" /> + <import type="de.rki.coronawarnapp.util.formatter.FormatterAccessibilityHelper" /> + <import type="android.view.View" /> <variable @@ -35,7 +37,8 @@ android:id="@+id/tracing_status_card" style="@style/cardTracing" android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/tracing_status_card_header" @@ -48,10 +51,12 @@ <TextView android:id="@+id/tracing_status_card_header_headline" style="@style/headline6" + android:accessibilityHeading="true" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginEnd="@dimen/spacing_small" android:text="@{headline}" + android:contentDescription="@{headline}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/tracing_status_card_header_icon" app:layout_constraintStart_toStartOf="parent" @@ -62,6 +67,7 @@ android:layout_width="@dimen/icon_size_main_card_end" android:layout_height="@dimen/icon_size_main_card_end" android:importantForAccessibility="no" + android:focusable="false" android:src="@{icon}" android:visibility="@{FormatterHelper.formatVisibilityIcon(icon)}" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/values-de/strings.xml b/Corona-Warn-App/src/main/res/values-de/strings.xml index a6aedf92da12ae6b47d6e848ab481063ae9a625f..dfc5f60b5955c70b49862699990bc369c703b252 100644 --- a/Corona-Warn-App/src/main/res/values-de/strings.xml +++ b/Corona-Warn-App/src/main/res/values-de/strings.xml @@ -182,7 +182,7 @@ <string name="main_about_headline">"Häufige Fragen"</string> <!-- XTXT: main, explains faq on card --> <string name="main_about_body">"Hier finden Sie Antworten auf häufig gestellte Fragen rund um die Corona-Warn-App."</string> - <!-- NOTR --> + <!-- XTXT: External Website for FAQ, has to be translated --> <string name="main_about_link">"https://www.bundesregierung.de/corona-warn-app-faq"</string> <!-- XACT: Opens external webpage --> <string name="hint_external_webpage">"Häufige Fragen, hier finden Sie Antworten auf häufig gestellte Fragen rund um die Corona-Warn-App. Aufruf externer Infos im Web."</string> diff --git a/Corona-Warn-App/src/main/res/values/strings.xml b/Corona-Warn-App/src/main/res/values/strings.xml index 8607dc7e69a2022ceb8dfd6b85f791094fd3134f..4019ad94d09a284f93c939d3d7d603ee49e0c6fa 100644 --- a/Corona-Warn-App/src/main/res/values/strings.xml +++ b/Corona-Warn-App/src/main/res/values/strings.xml @@ -147,6 +147,8 @@ <string name="accessibility_menu">Menu</string> <!-- XACT: menu description for screen readers --> <string name="accessibility_close">Schließen</string> + <!-- XACT: menu description for screen readers --> + <string name="accessibility_logo">Corona Warn-App</string> <!-- #################################### Menu @@ -411,7 +413,7 @@ <!-- XACT: onboarding(together) - illustraction description, header image --> <string name="onboarding_illustration_description">Eine vielfältige Gruppe in einer Stadt benutzt Smartphones.</string> <!-- XACT: Onboarding (privacy) page title --> - <string name="onboarding_privacy_accessibility_title">Einführung Seite 2 von 5. Datenschutz</string> + <string name="onboarding_privacy_accessibility_title">Einführung Seite 2 von 5. Datenschutz. Es folgt ein Langtext. Eine statische Weitertaste steht am unteren Rand des Bildschirms zur Verfügung. </string> <!-- XHED: onboarding(privacy) - title --> <string name="onboarding_privacy_headline">Datenschutz</string> @@ -703,6 +705,7 @@ <string name="submission_qr_code_scan_invalid_dialog_button_negative">Abbrechen</string> <!-- QR Code Scan Screen --> + <string name="submission_qr_code_scan_title">QR-Code Scan View Positionieren sie den QR-Code in den Rahmen</string> <!-- YTXT: instruction text for QR code scanning --> <string name="submission_qr_code_scan_body">Positionieren Sie den QR Code in den Rahmen</string> @@ -893,9 +896,9 @@ <!-- XACT: Submission contact page title --> <string name="submission_contact_accessibility_title">TAN Anfrage per Telefonanruf</string> <!-- XACT: Content Description for submission contact step 1, number has to sync with the display number --> - <string name="submission_contact_step_1_content">Im ersten Schritt Hotline anrufen und TAN erfragen, unter der Rufnummer +49 (0) 800 7540002. Die Öffnungszeiten sind Montag bis Freitag von 8 bis 22 Uhr sowie Samstag und Sonntag von 10 bis 22 Uhr. Es gelten die Preise ihres Telefonanbieters.</string> + <string name="submission_contact_step_1_content">Erster Schritt: Hotline anrufen und TAN erfragen, unter der Rufnummer +49 (0) 800 7540002. Die Öffnungszeiten sind Montag bis Freitag von 8 bis 10 Uhr abends, sowie Samstag und Sonntag von 10 bis 10 Uhr abends. Es gelten die Preise ihres Telefonanbieters.</string> <!-- XACT: Content Description for submission contact step 2 --> - <string name="submission_contact_step_2_content">Im Zweiten Schritt registrieren Sie den Test per TAN-Eingabe in der App</string> + <string name="submission_contact_step_2_content">Zweiter Schritt: Registrieren Sie den Test per TAN-Eingabe in der App</string> <!-- Submission Status Card --> <!-- XHED: Page title for the various submission status: fetching --> @@ -971,6 +974,10 @@ <string name="button_share">Teilen</string> <!-- XACT: menu button--> <string name="button_menu">Menü</string> + <!-- XACT: Accessibility needs a suffix to strings, to reduce the amount of manual translations this string is appended to accessibility button strings, e.g. "Zurück Taste", "Taste" is the default used by android in german --> + <string name="suffix_button">Taste</string> + <!-- XACT: Accessibility needs a suffix to strings, to reduce the amount of manual translations this string is appended to accessibility content description strings for images, e.g. "Eine Gruppe von... Bild" --> + <string name="suffix_image">Bild</string> <!-- #################################### Business Error Messages