From c0b3a57e0005ea377fc2959ac16571682905dd1c Mon Sep 17 00:00:00 2001 From: Queenhymon <66369714+Queenhymon@users.noreply.github.com> Date: Mon, 8 Jun 2020 17:30:36 +0200 Subject: [PATCH] Exposureapp 1079 (#274) * accessibility button texts * accessibility fixes * replace buttons with image views * solve conflicts with dev * accessibility for all onboarding views * accessibility for all submission views * accessibility for risk details * call views with bindings * pull request review fixes * strings * lint check fixes * lint check fixes Co-authored-by: harambasicluka <64483219+harambasicluka@users.noreply.github.com> --- .../rki/coronawarnapp/ui/main/MainFragment.kt | 17 ++++ .../ui/main/MainOverviewFragment.kt | 11 +++ .../ui/onboarding/OnboardingFragment.kt | 11 +++ .../OnboardingNotificationsFragment.kt | 11 +++ .../onboarding/OnboardingPrivacyFragment.kt | 11 +++ .../ui/onboarding/OnboardingTestFragment.kt | 11 +++ .../onboarding/OnboardingTracingFragment.kt | 11 +++ .../ui/riskdetails/RiskDetailsFragment.kt | 8 +- .../submission/SubmissionContactFragment.kt | 11 +++ .../SubmissionDispatcherFragment.kt | 11 +++ .../ui/submission/SubmissionIntroFragment.kt | 12 ++- .../ui/submission/SubmissionTanFragment.kt | 12 ++- .../ui/viewmodel/TracingViewModel.kt | 3 +- .../src/main/res/layout/fragment_main.xml | 4 + .../res/layout/fragment_main_overview.xml | 83 ++++++++++--------- .../main/res/layout/fragment_onboarding.xml | 5 +- .../fragment_onboarding_notifications.xml | 4 +- .../layout/fragment_onboarding_privacy.xml | 2 + .../res/layout/fragment_onboarding_test.xml | 4 +- .../layout/fragment_onboarding_tracing.xml | 4 +- .../main/res/layout/fragment_risk_details.xml | 16 +++- .../layout/fragment_submission_contact.xml | 2 + .../layout/fragment_submission_dispatcher.xml | 4 +- .../res/layout/fragment_submission_intro.xml | 8 +- .../res/layout/fragment_submission_tan.xml | 13 ++- .../main/res/layout/include_button_icon.xml | 2 +- .../res/layout/include_dispatcher_card.xml | 10 +-- .../src/main/res/layout/include_main_card.xml | 3 +- .../layout/include_main_overview_segment.xml | 9 +- .../main/res/layout/include_onboarding.xml | 7 +- .../src/main/res/layout/include_risk_card.xml | 7 +- .../res/layout/include_risk_card_header.xml | 1 - ...e_risk_details_behavior_increased_risk.xml | 8 ++ .../include_risk_details_behavior_row.xml | 3 + .../res/layout/include_submission_contact.xml | 29 +++++-- .../res/layout/include_submission_intro.xml | 6 +- ...include_submission_status_card_content.xml | 4 + ...de_submission_status_card_unregistered.xml | 7 +- .../src/main/res/values/strings.xml | 46 +++++++++- 39 files changed, 349 insertions(+), 82 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainFragment.kt index e699c28da..cebf0c1f9 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/main/MainFragment.kt @@ -5,6 +5,7 @@ import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import android.widget.PopupMenu import androidx.core.app.NotificationCompat import androidx.core.app.NotificationManagerCompat @@ -62,6 +63,7 @@ class MainFragment : BaseFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) setButtonOnClickListener() + setContentDescription() } override fun onResume() { @@ -74,6 +76,21 @@ class MainFragment : BaseFragment() { tracingViewModel.refreshActiveTracingDaysInRetentionPeriod() TimerHelper.checkManualKeyRetrievalTimer() submissionViewModel.refreshDeviceUIState() + binding.mainScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + 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.setContentDescription(shareButtonString) + binding.mainHeaderOptionsMenu.buttonIcon.setContentDescription(menuButtonString) + binding.mainAbout.mainCard.setContentDescription(mainCardString) } 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 28b9c00ba..7131a3ed3 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 @@ -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 de.rki.coronawarnapp.databinding.FragmentMainOverviewBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -42,6 +43,16 @@ class MainOverviewFragment : BaseFragment() { 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) + } + private fun setButtonOnClickListener() { binding.mainOverviewHeader.headerToolbar.setNavigationOnClickListener { (activity as MainActivity).goBack() 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 bad65043b..8aae16616 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 @@ -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 de.rki.coronawarnapp.databinding.FragmentOnboardingBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -40,4 +41,14 @@ class OnboardingFragment : BaseFragment() { ) } } + + override fun onStart() { + super.onStart() + binding.onboardingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + override fun onResume() { + super.onResume() + binding.onboardingContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } } 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 7b9c98795..b7f060e57 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 @@ -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.appcompat.app.AlertDialog import androidx.core.app.NotificationManagerCompat import de.rki.coronawarnapp.databinding.FragmentOnboardingNotificationsBinding @@ -42,6 +43,16 @@ class OnboardingNotificationsFragment : BaseFragment() { 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) + } + private fun setButtonOnClickListener() { binding.onboardingButtonNext.setOnClickListener { navigateToMain() 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 21bacc792..d0b725448 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 @@ -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 de.rki.coronawarnapp.databinding.FragmentOnboardingPrivacyBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -37,6 +38,16 @@ class OnboardingPrivacyFragment : BaseFragment() { 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) + } + private fun setButtonOnClickListener() { binding.onboardingButtonNext.setOnClickListener { doNavigate( 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 494b6fbd7..c2926653b 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 @@ -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 de.rki.coronawarnapp.databinding.FragmentOnboardingTestBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -37,6 +38,16 @@ class OnboardingTestFragment : BaseFragment() { 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) + } + private fun setButtonOnClickListener() { binding.onboardingButtonNext.setOnClickListener { doNavigate( 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 3ff6a0f5d..82a3c4707 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 @@ -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.appcompat.app.AlertDialog import androidx.lifecycle.lifecycleScope import de.rki.coronawarnapp.R @@ -65,6 +66,16 @@ class OnboardingTracingFragment : BaseFragment(), override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) 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) 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 3c753af57..d4e93ee4c 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 @@ -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.activityViewModels import de.rki.coronawarnapp.databinding.FragmentRiskDetailsBinding import de.rki.coronawarnapp.timer.TimerHelper @@ -11,7 +12,6 @@ import de.rki.coronawarnapp.ui.BaseFragment import de.rki.coronawarnapp.ui.main.MainActivity import de.rki.coronawarnapp.ui.viewmodel.SettingsViewModel import de.rki.coronawarnapp.ui.viewmodel.TracingViewModel - /** * This is the detail view of the risk card if additional information for the user. * @@ -51,6 +51,11 @@ class RiskDetailsFragment : BaseFragment() { setButtonOnClickListeners() } + override fun onStart() { + super.onStart() + binding.riskDetailsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + override fun onResume() { super.onResume() // refresh required data @@ -58,6 +63,7 @@ class RiskDetailsFragment : BaseFragment() { tracingViewModel.refreshExposureSummary() tracingViewModel.refreshLastTimeDiagnosisKeysFetchedDate() TimerHelper.checkManualKeyRetrievalTimer() + binding.riskDetailsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) } private fun setButtonOnClickListeners() { 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 93bd99e04..fd37c6941 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 @@ -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 de.rki.coronawarnapp.R import de.rki.coronawarnapp.databinding.FragmentSubmissionContactBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -38,6 +39,16 @@ class SubmissionContactFragment : BaseFragment() { setButtonOnClickListener() } + override fun onStart() { + super.onStart() + binding.submissionContactScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + override fun onResume() { + super.onResume() + binding.submissionContactScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + private fun setButtonOnClickListener() { binding.submissionContactHeader.headerToolbar.setNavigationOnClickListener { (activity as MainActivity).goBack() 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 73bf2aa35..99bdf0a44 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 @@ -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 de.rki.coronawarnapp.R import de.rki.coronawarnapp.databinding.FragmentSubmissionDispatcherBinding import de.rki.coronawarnapp.ui.BaseFragment @@ -39,6 +40,16 @@ class SubmissionDispatcherFragment : BaseFragment() { setButtonOnClickListener() } + override fun onStart() { + super.onStart() + binding.submissionDispatcherScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + override fun onResume() { + super.onResume() + binding.submissionDispatcherScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + private fun setButtonOnClickListener() { binding.submissionDispatcherHeader.headerToolbar.setNavigationOnClickListener { (activity as MainActivity).goBack() 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 0dc26e99b..eb58eaced 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 @@ -4,9 +4,9 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.accessibility.AccessibilityEvent import de.rki.coronawarnapp.databinding.FragmentSubmissionIntroBinding import de.rki.coronawarnapp.ui.BaseFragment - /** * The [SubmissionIntroFragment] displays information about how the corona warning system works */ @@ -35,6 +35,16 @@ class SubmissionIntroFragment : BaseFragment() { setButtonOnClickListener() } + override fun onStart() { + super.onStart() + binding.submissionIntroScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + override fun onResume() { + super.onResume() + binding.submissionIntroScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + private fun setButtonOnClickListener() { binding.submissionIntroHeader.headerToolbar.setNavigationOnClickListener { doNavigate(SubmissionIntroFragmentDirections.actionSubmissionIntroFragmentToMainFragment()) 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 7a6036caa..b8cc6974f 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 @@ -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.activityViewModels import de.rki.coronawarnapp.R import de.rki.coronawarnapp.databinding.FragmentSubmissionTanBinding @@ -15,7 +16,6 @@ import de.rki.coronawarnapp.ui.BaseFragment import de.rki.coronawarnapp.ui.viewmodel.SubmissionViewModel import de.rki.coronawarnapp.util.DialogHelper import de.rki.coronawarnapp.util.observeEvent - /** * Fragment for TAN entry */ @@ -110,6 +110,16 @@ class SubmissionTanFragment : BaseFragment() { }) } + override fun onStart() { + super.onStart() + binding.submissionTanScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + + override fun onResume() { + super.onResume() + binding.submissionTanScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + } + private fun navigateToDispatchScreen() = doNavigate(SubmissionTanFragmentDirections.actionSubmissionTanFragmentToSubmissionDispatcherFragment()) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/viewmodel/TracingViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/viewmodel/TracingViewModel.kt index 4bccd807c..cfbf5efcb 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/viewmodel/TracingViewModel.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/viewmodel/TracingViewModel.kt @@ -32,7 +32,8 @@ class TracingViewModel : ViewModel() { // TODO: comments for variables // Values from RiskLevelRepository val riskLevel: LiveData<Int> = RiskLevelRepository.riskLevelScore - val riskLevelScoreLastSuccessfulCalculated = RiskLevelRepository.riskLevelScoreLastSuccessfulCalculated + val riskLevelScoreLastSuccessfulCalculated = + RiskLevelRepository.riskLevelScoreLastSuccessfulCalculated // Values from ExposureSummaryRepository val daysSinceLastExposure: LiveData<Int?> = ExposureSummaryRepository.daysSinceLastExposure 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 27b5cd78e..95e316012 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_main.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_main.xml @@ -22,6 +22,8 @@ </data> <ScrollView + android:id="@+id/main_scrollview" + android:contentDescription="@string/main_title" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" @@ -76,6 +78,7 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:id="@+id/main_tracing" style="@style/buttonTracing" android:layout_width="@dimen/match_constraint" @@ -86,6 +89,7 @@ app:layout_constraintTop_toBottomOf="@+id/main_header"> <TextView + android:focusable="false" android:id="@+id/main_tracing_headline" style="@style/bodyButton" android:layout_width="@dimen/match_constraint" 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 a2d3826e6..218d1e0e8 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 @@ -3,10 +3,13 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/main_overview_container" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_height="match_parent" + android:contentDescription="@string/main_overview_accessibility_title"> <!-- todo font adjustments needed through final styles --> + <include android:id="@+id/main_overview_header" layout="@layout/include_header" @@ -14,6 +17,7 @@ android:layout_height="wrap_content" app:icon="@{@drawable/ic_close}" app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:title="@{@string/main_overview_title}" /> @@ -74,58 +78,60 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/main_overview_risk"> <TextView + android:id="@+id/main_overview_risk_subtitle_text" style="@style/headline6" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/guideline_body_title" + android:focusable="false" 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" - layout="@layout/include_row" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="@dimen/spacing_small" - app:iconStart="@{@drawable/ic_main_overview_circle}" - app:iconTint="@{@color/colorSemanticHighRisk}" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_subtitle" - app:subtitle="@{@string/main_overview_subtitle_increased_risk}" /> + <include + android:id="@+id/main_overview_risk_increased_risk" + layout="@layout/include_row" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_marginTop="@dimen/spacing_small" + app:iconStart="@{@drawable/ic_main_overview_circle}" + 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:subtitle="@{@string/main_overview_subtitle_increased_risk}" /> - <include - android:id="@+id/main_overview_risk_low_risk" - layout="@layout/include_row" - android:layout_width="0dp" - android:layout_height="wrap_content" - app:iconStart="@{@drawable/ic_main_overview_circle}" - app:iconTint="@{@color/colorSemanticLowRisk}" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_increased_risk" - app:subtitle="@{@string/main_overview_subtitle_low_risk}" /> + <include + android:id="@+id/main_overview_risk_low_risk" + layout="@layout/include_row" + android:layout_width="0dp" + android:layout_height="wrap_content" + app:iconStart="@{@drawable/ic_main_overview_circle}" + app:iconTint="@{@color/colorSemanticLowRisk}" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_increased_risk" + app:subtitle="@{@string/main_overview_subtitle_low_risk}" /> - <include - android:id="@+id/main_overview_risk_unknown_risk" - layout="@layout/include_row" - android:layout_width="0dp" - android:layout_height="wrap_content" - app:iconStart="@{@drawable/ic_main_overview_circle}" - app:iconTint="@{@color/colorSemanticNeutralRisk}" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_low_risk" - app:subtitle="@{@string/main_overview_subtitle_unknown_risk}" /> + <include + android:id="@+id/main_overview_risk_unknown_risk" + layout="@layout/include_row" + android:layout_width="0dp" + android:layout_height="wrap_content" + app:iconStart="@{@drawable/ic_main_overview_circle}" + app:iconTint="@{@color/colorSemanticNeutralRisk}" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_low_risk" + app:subtitle="@{@string/main_overview_subtitle_unknown_risk}" /> + </androidx.constraintlayout.widget.ConstraintLayout> <include android:id="@+id/main_overview_test" @@ -137,7 +143,7 @@ app:icon="@{@drawable/ic_main_overview_3}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_unknown_risk" + app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_subtitle" app:subtitle="@{@string/main_overview_headline_test}" /> <include @@ -151,6 +157,7 @@ app:layout_constraintTop_toBottomOf="@id/main_overview_test" /> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorSurface2" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml b/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml index 7227d5efb..6c99c27ae 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_onboarding.xml @@ -4,6 +4,8 @@ xmlns:tools="http://schemas.android.com/tools"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/onboarding_container" + android:contentDescription="@string/onboarding_onboarding_accessibility_title" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" @@ -23,7 +25,8 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/guideline_top" - app:subtitle="@{@string/onboarding_subtitle}" /> + app:subtitle="@{@string/onboarding_subtitle}" + android:focusable="false"/> <Button android:id="@+id/onboarding_button_next" 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 da7e8378d..a4d892473 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 @@ -3,9 +3,11 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/onboarding_notifications_container" android:layout_width="match_parent" android:layout_height="match_parent" - android:fillViewport="true"> + android:fillViewport="true" + android:contentDescription="@string/onboarding_notifications_accessibility_title"> <include android:id="@+id/onboarding_button_back" 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 65d102f43..e0b0d9448 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 @@ -11,8 +11,10 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/onboarding_privacy_container" android:layout_width="match_parent" android:layout_height="match_parent" + android:contentDescription="@string/onboarding_privacy_accessibility_title" android:fillViewport="true"> <include 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 ec7bb4e9e..69316d407 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 @@ -3,9 +3,11 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/onboarding_test_container" android:layout_width="match_parent" android:layout_height="match_parent" - android:fillViewport="true"> + android:fillViewport="true" + android:contentDescription="@string/onboarding_test_accessibility_title"> <include android:id="@+id/onboarding_button_back" 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 c46d695cd..442c4f9ab 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 @@ -3,9 +3,11 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/onboarding_tracing_container" android:layout_width="match_parent" android:layout_height="match_parent" - android:fillViewport="true"> + android:fillViewport="true" + android:contentDescription="@string/onboarding_tracing_accessibility_title"> <include android:id="@+id/onboarding_button_back" 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 3e5f3ad20..d4851a0e1 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 @@ -21,8 +21,10 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/risk_details_container" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_height="match_parent" + android:contentDescription="@string/risk_details_accessibility_title"> <com.google.android.material.appbar.AppBarLayout android:id="@+id/risk_details_app_bar_layout" @@ -58,10 +60,12 @@ app:layout_constraintTop_toBottomOf="@+id/risk_details_app_bar_layout"> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:layout_width="match_parent" android:layout_height="wrap_content"> <include + android:focusable="false" android:id="@+id/risk_details_risk_card" layout="@layout/include_risk_card" android:layout_width="0dp" @@ -74,6 +78,7 @@ app:tracingViewModel="@{tracingViewModel}" /> <TextView + android:focusable="false" android:id="@+id/risk_details_behavior_headline" style="@style/headline5" android:layout_width="0dp" @@ -85,6 +90,7 @@ app:layout_constraintTop_toBottomOf="@+id/risk_details_risk_card" /> <TextView + android:focusable="false" android:id="@+id/risk_details_behavior_subtitle" style="@style/body2" android:layout_width="0dp" @@ -99,6 +105,7 @@ android:id="@+id/risk_details_behavior_wrapper" android:layout_width="0dp" android:layout_height="wrap_content" + android:focusable="true" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@id/risk_details_behavior_subtitle"> @@ -109,6 +116,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="false" android:visibility="@{FormatterRiskHelper.formatVisibilityBehavior(tracingViewModel.riskLevel)}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -121,6 +129,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="false" android:visibility="@{FormatterRiskHelper.formatVisibilityBehaviorIncreasedRisk(tracingViewModel.riskLevel)}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -130,6 +139,7 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:id="@+id/risk_details_body" style="@style/greyBodyBackground" android:layout_width="match_parent" @@ -139,6 +149,7 @@ app:layout_constraintTop_toBottomOf="@id/risk_details_behavior_wrapper"> <TextView + android:focusable="false" android:id="@+id/risk_details_information_headline" style="@style/headline5" android:layout_width="match_parent" @@ -149,6 +160,7 @@ app:layout_constraintTop_toTopOf="parent" /> <TextView + android:focusable="false" android:id="@+id/risk_details_information_subtitle" style="@style/body2" android:layout_width="match_parent" @@ -160,6 +172,7 @@ app:layout_constraintTop_toBottomOf="@+id/risk_details_information_headline" /> <TextView + android:focusable="false" android:id="@+id/risk_details_information_body" style="@style/body2" android:layout_width="match_parent" @@ -172,6 +185,7 @@ app:layout_constraintTop_toBottomOf="@+id/risk_details_information_subtitle" /> <TextView + android:focusable="false" android:id="@+id/risk_details_information_body_notice" style="@style/body2" android:layout_width="match_parent" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_contact.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_contact.xml index 1c0e6016e..a007acf69 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_contact.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_contact.xml @@ -4,9 +4,11 @@ xmlns:tools="http://schemas.android.com/tools"> <ScrollView + android:id="@+id/submission_contact_scrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" + android:contentDescription="@string/submission_contact_accessibility_title" tools:context=".ui.submission.SubmissionContactFragment"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_dispatcher.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_dispatcher.xml index d4f5b84bc..086d6c77f 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_dispatcher.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_dispatcher.xml @@ -4,10 +4,12 @@ xmlns:tools="http://schemas.android.com/tools"> <ScrollView + android:id="@+id/submission_dispatcher_scrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" - tools:context=".ui.submission.SubmissionDispatcherFragment"> + tools:context=".ui.submission.SubmissionDispatcherFragment" + android:contentDescription="@string/submission_dispatcher_accessibility_title"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" 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 f9742d587..c3cd9f457 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 @@ -4,9 +4,11 @@ xmlns:tools="http://schemas.android.com/tools"> <ScrollView + android:id="@+id/submission_intro_scrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" + android:contentDescription="@string/submission_intro_accessibility_title" tools:context=".ui.submission.SubmissionIntroFragment"> <androidx.constraintlayout.widget.ConstraintLayout @@ -22,7 +24,8 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:title="@{@string/submission_intro_title}" /> + app:title="@{@string/submission_intro_title}" + /> <include layout="@layout/include_submission_intro" @@ -31,7 +34,8 @@ app:layout_constraintBottom_toTopOf="@+id/guideline_action" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/submission_intro_header" /> + app:layout_constraintTop_toBottomOf="@+id/submission_intro_header" + /> <Button android:id="@+id/submission_intro_button_next" diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_tan.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_tan.xml index c940d7044..4803d45dd 100644 --- a/Corona-Warn-App/src/main/res/layout/fragment_submission_tan.xml +++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_tan.xml @@ -14,14 +14,17 @@ <ScrollView + android:id="@+id/submission_tan_scrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" + android:contentDescription="@string/submission_tan_accessibility_title" tools:context=".ui.submission.SubmissionTanFragment"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <include android:id="@+id/submission_tan_header" @@ -32,7 +35,8 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:title="@{@string/submission_tan_title}" /> + app:title="@{@string/submission_tan_title}" + android:focusable="false"/> <TextView android:id="@+id/submission_tan_body" @@ -43,7 +47,8 @@ android:text="@string/submission_tan_body" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" - app:layout_constraintTop_toBottomOf="@id/submission_tan_header" /> + app:layout_constraintTop_toBottomOf="@id/submission_tan_header" + android:focusable="false"/> <de.rki.coronawarnapp.ui.submission.TanInput android:id="@+id/submission_tan_input" @@ -52,7 +57,7 @@ android:layout_marginTop="@dimen/spacing_normal" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" - app:layout_constraintTop_toBottomOf="@+id/submission_tan_body" /> + app:layout_constraintTop_toBottomOf="@+id/submission_tan_body"/> <Button android:id="@+id/submission_tan_button_enter" 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 4bdf45b4d..2eabc9342 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 @@ -22,7 +22,7 @@ style="@style/icon" android:layout_width="@dimen/icon_size_button" android:layout_height="@dimen/icon_size_button" - android:contentDescription="@string/lorem_ipsum" + android:contentDescription="@string/button_back" android:src="@{icon}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="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 12f0a3542..6dc37f0bd 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 @@ -24,7 +24,8 @@ style="@style/cardGrey" android:layout_width="match_parent" android:layout_height="wrap_content" - app:layout_constraintTop_toTopOf="parent"> + app:layout_constraintTop_toTopOf="parent" + android:focusable="true"> <TextView android:id="@+id/dispatcher_card_title" @@ -40,16 +41,16 @@ app:layout_constraintTop_toTopOf="parent" tools:text="@string/submission_dispatcher_card_qr" /> - <include + <ImageView android:id="@+id/dispatcher_card_icon" - layout="@layout/include_button_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" android:layout_marginEnd="@dimen/spacing_normal" app:icon="@{@drawable/ic_forward}" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="parent" + tools:src="@drawable/ic_icon_drilldowncard_dark" /> <TextView android:id="@+id/submission_dispatcher_card_text" @@ -70,7 +71,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/button_icon_margin" - android:contentDescription="@string/lorem_ipsum" android:src="@{illustration}" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/Corona-Warn-App/src/main/res/layout/include_main_card.xml b/Corona-Warn-App/src/main/res/layout/include_main_card.xml index 5783ed452..d147902ef 100644 --- a/Corona-Warn-App/src/main/res/layout/include_main_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_main_card.xml @@ -42,7 +42,7 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/main_card" style="@style/card" - android:layout_width="match_parent" + android:layout_width="match_parent" android:layout_height="wrap_content"> <androidx.constraintlayout.widget.ConstraintLayout @@ -116,7 +116,6 @@ android:id="@+id/main_card_content_illustration" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:contentDescription="@string/lorem_ipsum" android:src="@{illustration}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> 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 25644c52e..8201510f7 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 @@ -28,7 +28,8 @@ android:layout_height="wrap_content" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent"> + app:layout_constraintTop_toTopOf="parent" + android:focusable="true"> <ImageView android:id="@+id/main_overview_segment_icon" @@ -48,7 +49,8 @@ android:text="@{subtitle}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="@+id/guideline_body" - app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="parent" + android:focusable="false"/> <TextView android:id="@+id/main_overview_segment_body" @@ -60,7 +62,8 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="@+id/main_overview_segment_subtitle" - app:layout_constraintTop_toBottomOf="@+id/main_overview_segment_subtitle" /> + app:layout_constraintTop_toBottomOf="@+id/main_overview_segment_subtitle" + android:focusable="false"/> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_body" 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 b7628a823..f8e7814a7 100644 --- a/Corona-Warn-App/src/main/res/layout/include_onboarding.xml +++ b/Corona-Warn-App/src/main/res/layout/include_onboarding.xml @@ -47,7 +47,8 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <ImageView android:id="@+id/onboarding_illustration" @@ -66,6 +67,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="false" android:text="@{headline}" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" @@ -78,6 +80,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_small" + android:focusable="false" android:text="@{subtitle}" android:visibility="@{FormatterHelper.formatVisibilityText(subtitle)}" app:layout_constraintEnd_toEndOf="@id/guideline_end" @@ -91,6 +94,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/spacing_normal" + android:focusable="false" android:text="@{body}" app:layout_constraintEnd_toEndOf="@id/guideline_end" app:layout_constraintStart_toStartOf="@id/guideline_start" @@ -103,6 +107,7 @@ 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)}" app:layout_constraintEnd_toEndOf="@id/guideline_end" diff --git a/Corona-Warn-App/src/main/res/layout/include_risk_card.xml b/Corona-Warn-App/src/main/res/layout/include_risk_card.xml index 5eabb5178..48c7feab6 100644 --- a/Corona-Warn-App/src/main/res/layout/include_risk_card.xml +++ b/Corona-Warn-App/src/main/res/layout/include_risk_card.xml @@ -27,7 +27,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@{FormatterRiskHelper.formatRiskShape(showDetails)}" - android:backgroundTint="@{FormatterRiskHelper.formatRiskColor(tracingViewModel.riskLevel)}"> + android:backgroundTint="@{FormatterRiskHelper.formatRiskColor(tracingViewModel.riskLevel)}" + android:focusable="true"> <include android:id="@+id/risk_card_header" @@ -144,9 +145,9 @@ <!-- todo exchange variable--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/risk_card_row_saved_days" - android:layout_marginTop="@dimen/spacing_small" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" + android:layout_marginTop="@dimen/spacing_small" android:visibility="@{FormatterHelper.formatVisibilityText(FormatterRiskHelper.formatRiskActiveTracingDaysInRetentionPeriod(tracingViewModel.riskLevel, showDetails, tracingViewModel.activeTracingDaysInRetentionPeriod))}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -165,12 +166,12 @@ android:layout_width="23dp" android:layout_height="23dp" app:circleColor="@color/colorStableMedium" + app:circleWidth="5" app:disableText="true" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:circleWidth="5" app:progress="@{tracingViewModel.activeTracingDaysInRetentionPeriod}" app:progressColor="@color/colorStableLight" /> 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 4b625854d..5aa9c5097 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 @@ -40,7 +40,6 @@ android:id="@+id/risk_card_header_icon" android:layout_width="@dimen/icon_size_risk_card" android:layout_height="@dimen/icon_size_risk_card" - android:contentDescription="@string/lorem_ipsum" android:importantForAccessibility="no" android:src="@drawable/ic_forward" android:tint="@{FormatterRiskHelper.formatStableIconColor(tracingViewModel.riskLevel)}" diff --git a/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_increased_risk.xml b/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_increased_risk.xml index 32fe7197c..15e1b4702 100644 --- a/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_increased_risk.xml +++ b/Corona-Warn-App/src/main/res/layout/include_risk_details_behavior_increased_risk.xml @@ -15,10 +15,12 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:layout_width="match_parent" android:layout_height="match_parent"> <include + android:focusable="false" android:id="@+id/risk_details_behavior_stay_home" layout="@layout/include_risk_details_behavior_row" android:layout_width="0dp" @@ -31,6 +33,7 @@ app:riskLevel="@{tracingViewModel.riskLevel}" /> <include + android:focusable="false" android:id="@+id/risk_details_behavior_stay_away" layout="@layout/include_risk_details_behavior_row" android:layout_width="0dp" @@ -44,6 +47,7 @@ app:riskLevel="@{tracingViewModel.riskLevel}" /> <include + android:focusable="false" android:id="@+id/risk_details_behavior_cough_sneeze" layout="@layout/include_risk_details_behavior_row" android:layout_width="0dp" @@ -58,6 +62,7 @@ <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="@dimen/spacing_large" @@ -67,6 +72,7 @@ app:layout_constraintTop_toBottomOf="@+id/risk_details_behavior_cough_sneeze"> <TextView + android:focusable="false" android:id="@+id/risk_details_behavior_bullet_point_1" style="@style/subtitle" android:layout_width="0dp" @@ -77,6 +83,7 @@ app:layout_constraintTop_toTopOf="parent" /> <TextView + android:focusable="false" android:id="@+id/risk_details_behavior_bullet_point_2" style="@style/subtitle" android:layout_width="0dp" @@ -88,6 +95,7 @@ app:layout_constraintTop_toBottomOf="@id/risk_details_behavior_bullet_point_1" /> <TextView + android:focusable="false" android:id="@+id/risk_details_behavior_bullet_point_3" style="@style/subtitle" android:layout_width="0dp" 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 82bfcf512..8d5e0f5e8 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 @@ -21,6 +21,7 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:layout_width="match_parent" android:layout_height="wrap_content"> @@ -35,6 +36,7 @@ app:layout_constraintTop_toTopOf="parent"> <ImageView + android:focusable="false" style="@style/icon" android:layout_width="@dimen/icon_size_risk_details_behavior" android:layout_height="@dimen/icon_size_risk_details_behavior" @@ -49,6 +51,7 @@ </androidx.constraintlayout.widget.ConstraintLayout> <TextView + android:focusable="false" style="@style/subtitle" android:layout_width="0dp" android:layout_height="wrap_content" 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 6fde2a8fc..b07947c95 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 @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> -<layout xmlns:android="http://schemas.android.com/apk/res/android" +<layout xmlns:tools="http://schemas.android.com/tools" + xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <ScrollView @@ -8,7 +9,8 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <ImageView android:id="@+id/submission_contact_illustration" @@ -28,7 +30,8 @@ android:text="@string/submission_contact_body" app:layout_constraintEnd_toStartOf="@+id/guideline_end" app:layout_constraintStart_toStartOf="@+id/guideline_start" - app:layout_constraintTop_toBottomOf="@id/submission_contact_illustration" /> + app:layout_constraintTop_toBottomOf="@id/submission_contact_illustration" + android:focusable="false"/> <TextView android:id="@+id/submission_contact_headline" @@ -39,7 +42,8 @@ android:text="@string/submission_contact_headline" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="@id/guideline_start" - app:layout_constraintTop_toBottomOf="@+id/submission_contact_body" /> + app:layout_constraintTop_toBottomOf="@+id/submission_contact_body" + android:focusable="false"/> <de.rki.coronawarnapp.ui.view.StepEntry @@ -51,7 +55,8 @@ app:layout_constraintStart_toStartOf="@+id/guideline_start" app:layout_constraintTop_toBottomOf="@id/submission_contact_headline" app:step_entry_final="false" - app:step_entry_icon="@drawable/ic_main_overview_1"> + app:step_entry_icon="@drawable/ic_main_overview_1" + android:contentDescription="@string/submission_contact_step_1_content"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" @@ -105,12 +110,20 @@ app:layout_constraintTop_toBottomOf="@+id/submission_contact_step_1" app:step_entry_final="true" app:step_entry_icon="@drawable/ic_main_overview_2"> + android:contentDescription="@string/submission_contact_step_2_content"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="wrap_content"> <TextView - style="@style/subtitle" - android:layout_width="wrap_content" + android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" - android:text="@string/submission_contact_step_2_body" /> + android:layout_marginTop="@dimen/button_icon_margin" + android:text="@string/submission_contact_step_2_body" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> </de.rki.coronawarnapp.ui.view.StepEntry> 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 06ae9ec33..c60a1ff19 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,7 +8,8 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <ImageView android:id="@+id/submission_intro_hero_illustration" @@ -23,6 +24,7 @@ <TextView android:id="@+id/submission_intro_headline" + android:focusable="false" style="@style/headline4" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" @@ -34,6 +36,7 @@ <TextView android:id="@+id/submission_intro_text" + android:focusable="false" style="@style/subtitle" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" @@ -46,6 +49,7 @@ <TextView android:id="@+id/submission_intro_text_enum" style="@style/subtitle" + android:focusable="false" 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_content.xml b/Corona-Warn-App/src/main/res/layout/include_submission_status_card_content.xml index bc18df4e3..8ab090fe2 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 @@ -13,12 +13,14 @@ </data> <androidx.constraintlayout.widget.ConstraintLayout + android:focusable="true" android:id="@+id/submission_status_card_content" style="@style/cardNoPadding" android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView + android:focusable="false" android:id="@+id/submission_status_card_content_title" style="@style/headline5" android:layout_width="@dimen/match_constraint" @@ -33,6 +35,7 @@ tools:text="@string/submission_status_card_title_available" /> <TextView + android:focusable="false" android:id="@+id/submission_status_card_content_subtitle" style="@style/subtitleMedium" android:layout_width="@dimen/match_constraint" @@ -49,6 +52,7 @@ tools:text="@string/test_result_card_status_negative" /> <TextView + android:focusable="false" android:id="@+id/submission_status_card_content_body" style="@style/subtitle" android:layout_width="@dimen/match_constraint" 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 8c60e2647..918d8abac 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 @@ -6,7 +6,8 @@ android:id="@+id/submission_status_card_unregistered" style="@style/cardNoPadding" android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:focusable="true"> <TextView @@ -20,11 +21,13 @@ android:text="@string/submission_status_card_title_unregistered" app:layout_constraintEnd_toStartOf="@+id/submission_status_card_unregistered_icon" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="parent" + android:focusable="false"/> <TextView android:id="@+id/submission_status_card_unregistered_body" + android:focusable="false" style="@style/subtitleMedium" android:layout_width="@dimen/match_constraint" android:layout_height="wrap_content" diff --git a/Corona-Warn-App/src/main/res/values/strings.xml b/Corona-Warn-App/src/main/res/values/strings.xml index 0b6468412..98914fc88 100644 --- a/Corona-Warn-App/src/main/res/values/strings.xml +++ b/Corona-Warn-App/src/main/res/values/strings.xml @@ -226,7 +226,8 @@ <string name="main_about_body">Hier finden Sie Antworten auf häufig gestellte Fragen rund um die Corona-Warn-App.</string> <!-- NOTR todo insert english link in translation file https://www.bundesregierung.de/corona-warn-app-faq-englisch --> <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> <!-- #################################### Main - Share ###################################### --> @@ -250,6 +251,8 @@ <!-- XHED: App overview page title --> <string name="main_overview_title">Überblick</string> + <!-- XACT: main overview page title --> + <string name="main_overview_accessibility_title">Überblick</string> <!-- XHED: App overview subtitle for tracing explanation--> <string name="main_overview_subtitle_tracing">Risiko-Ermittlung</string> <!-- YTXT: App overview body text about tracing --> @@ -294,6 +297,8 @@ <string name="main_overview_body_glossary_keys">Die Zufallscodes sind zufällig erzeugte Zahlen- und Buchstabenkombinationen. Sie werden zwischen benachbarten Smartphones ausgetauscht. Zufallskennungen lassen sich nicht einer bestimmten Person zuordnen und werden nach 14 Tagen automatisch gelöscht. Eine Corona-positiv getestete Person kann ihre Zufallscodes der letzten bis zu 14 Tage freiwillig mit anderen CWA-Nutzern teilen.</string> <!-- XACT: main (overview) - illustraction description, explanation image --> <string name="main_overview_illustration_description">Ein Smartphone zeigt unterschiedliche Inhalte, die von eins bis drei nummeriert sind.</string> + <!-- XACT: App main page title --> + <string name="main_title">Hauptseite der Corona-Warn App</string> <!-- #################################### Risk Details @@ -341,6 +346,8 @@ <string name="risk_details_information_body_notice">Das Infektionsrisiko wird anhand der Daten der Risiko-Ermittlung unter Berücksichtigung von Abstand und Dauer lokal auf Ihrem Smartphone berechnet. Ihr Infektionsrisiko ist für niemanden einsehbar und wird nicht weitergegeben.</string> <!-- final --> <string name="risk_details_button_update">@string/risk_card_button_update</string> <string name="risk_details_button_enable_tracing">@string/risk_card_button_enable_tracing</string> + <!-- XACT: risk details page title --> + <string name="risk_details_accessibility_title">Ihr Risikostatus</string> <!-- #################################### Onboarding @@ -359,6 +366,8 @@ <string name="onboarding_button_start">Los geht\'s</string> <!-- XTXT: onboarding - back description for screen reader --> <string name="onboarding_button_back_description">Zurück</string> + <!-- XACT: Onboarding (together) page title --> + <string name="onboarding_onboarding_accessibility_title">Einführung Seite 1 von 5. Gemeinsam Corona bekämpfen</string> <!-- XHED: onboarding(together) - fight corona --> <string name="onboarding_headline">Gemeinsam Corona bekämpfen</string> <!-- XHED: onboarding(together) - two/three line headline under an illustration --> @@ -369,12 +378,16 @@ <string name="onboarding_body_emphasized">Die App merkt sich Begegnungen zwischen Menschen, indem ihre Smartphones verschlüsselte Zufallscodes austauschen. Und zwar ohne dabei auf persönliche Daten zuzugreifen.</string> <!-- 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> <!-- XHED: onboarding(privacy) - title --> <string name="onboarding_privacy_headline">Datenschutz</string> <!-- YTXT: onboarding(privacy) - body --> <string name="onboarding_privacy_body">@string/information_privacy_body</string> <!-- XACT: onboarding(privacy) - illustraction description, header image --> <string name="onboarding_privacy_illustration_description">Eine Frau mit einem Handy benutzt die Corona-Warn-App, ein Vorhängeschloss auf einem Schild steht als Symbol für verschlüsselte Daten.</string> + <!-- XACT: Onboarding (tracing) page title --> + <string name="onboarding_tracing_accessibility_title">Einführung Seite 3 von 5. Wie Sie die Risiko Ermittlung ermöglichen</string> <!-- XHED: onboarding(tracing) - how to enable tracing --> <string name="onboarding_tracing_headline">Wie Sie die Risiko-Ermittlung ermöglichen</string> <!-- XHED: onboarding(tracing) - two/three line headline under an illustration --> @@ -399,6 +412,8 @@ <string name="onboarding_tracing_dialog_button_negative">Zurück</string> <!-- XACT: onboarding(tracing) - illustraction description, header image --> <string name="onboarding_tracing_illustration_description">Drei Personen haben die Risiko-Erkennung auf ihren Smartphones aktiviert, ihre Begegnung wird daher aufgezeichnet.</string> + <!-- XACT: Onboarding (test) page title --> + <string name="onboarding_test_accessibility_title">Einführung Seite 4 von 5. Falls Sie positiv getestet wurden</string> <!-- XHED: onboarding(test) - about positive tests --> <string name="onboarding_test_headline">Falls Sie positiv getestet werden …</string> <!-- XHED: onboarding(test) - two/three line headline under an illustration --> @@ -407,6 +422,8 @@ <string name="onboarding_test_body">Ihre Mitteilung wird zuverlässig verschlüsselt über einen sicheren Server weiterverarbeitet. Die Personen, deren verschlüsselte Zufallscodes Sie gesammelt haben, erhalten nun eine Warnung und Informationen darüber, wie sie weiter vorgehen sollen.</string> <!-- XACT: onboarding(test) - illustraction description, header image --> <string name="onboarding_test_illustration_description">Ein positiver Testbefund wird verschlüsselt ins System übermittelt, das nun andere Nutzerinnen und Nutzer warnt.</string> + <!-- XACT: Onboarding (datashare) page title --> + <string name="onboarding_notifications_accessibility_title">Einführung Seite 5 von 5. Warnungen erhalten und Risiken erkennen</string> <!-- XHED: onboarding(datashare) - about positive tests --> <string name="onboarding_notifications_headline">Warnungen erhalten, Risiken erkennen</string> <!-- XHED: onboarding(datashare) - two/three line headline under an illustration --> @@ -2667,6 +2684,9 @@ as modifying the License. <string name="submission_tan_body">Die TAN ist 7-stellig und Groß- und Kleinschreibung muss beachtet werden.\n\nGeben Sie bitte die Ihnen mitgeteilte TAN ein:</string> <!-- XBUT: Submit TAN button --> <string name="submission_tan_button_text">Weiter</string> + <!-- XACT: Submission Tan page title --> + <string name="submission_tan_accessibility_title">TAN Eingabe</string> + <!-- Submission Intro --> <!-- XHED: Page title for menu at the start of the submission process --> @@ -2681,6 +2701,9 @@ as modifying the License. <string name="submission_intro_button_next">Weiter</string> <!-- XACT: Submission intro - illustration description, explanation image --> <string name="submission_intro_illustration_description">Ein positiver Testbefund wird verschlüsselt ins System übermittelt, das nun andere Nutzerinnen und Nutzer warnt.</string> + <!-- XACT: Submission Intro page title --> + <string name="submission_intro_accessibility_title">Wurden Sie getestet? So funktioniert das Corona-Warn-System</string> + <!-- Notification --> <!-- XHED: Dialog headline for result dialog --> @@ -2712,6 +2735,8 @@ as modifying the License. <string name="submission_dispatcher_card_tan_tele">Noch keine TAN?</string> <!-- YTXT: Body text for TELE_TAN dispatcher option --> <string name="submission_dispatcher_tan_tele_card_text">Bitte rufen Sie uns an, falls Sie Positiv getestet wurden</string> + <!-- XACT: Dispatcher Tan page title --> + <string name="submission_dispatcher_accessibility_title">Welche Informationen liegen ihnen vor?</string> <!-- Submission Positive Other Warning --> <!-- XHED: Page title for the positive result additional warning page--> @@ -2782,6 +2807,12 @@ as modifying the License. <!-- YTXT: Body text for operating hours in contact page--> <string name="submission_contact_operating_hours_body">Unsere Öffnungszeiten:\nMo - Fr: 08:00 - 22:00 Uhr\nSa - So: 10:00 - 22:00 Uhr\nEs gelten die Preise Ihres\nTelefonanbieters.</string> + <!-- XACT: Submission contact page title --> + <string name="submission_contact_accessibility_title">TAN Anfrage per Telefonanruf</string> + <!-- XACT: Content Description for submission contact step 1 --> + <string name="submission_contact_step_1_content">Im ersten Schritt Hotline anrufen und TAN erfragen, unter der Rufnummer 0800 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> + <!-- 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> <!-- Submission Status Card --> <!-- XHED: Page title for the various submission status: fetching --> @@ -2845,6 +2876,19 @@ as modifying the License. <!-- XBUT: submission result dialog close button --> <string name="submission_result_button_dialog_close">OK</string> + + <!-- #################################### + Button Tooltips for Accessibility + ###################################### --> + <!-- XACT: back button--> + <string name="button_back">Zurück zur vorherigen Seite</string> + <!-- XACT: proceed button--> + <string name="button_proceed">Fortfahren Button</string> + <!-- XACT: share button--> + <string name="button_share">Teilen</string> + <!-- XACT: menu button--> + <string name="button_menu">Menü</string> + <!-- #################################### Generic Error Messages ###################################### --> -- GitLab