Skip to content
Snippets Groups Projects
Unverified Commit 70e795e4 authored by Queenhymon's avatar Queenhymon Committed by GitHub
Browse files

Exposureapp 1079 (#287)


* 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

* accessibility for settings and information views

* lint check fixes

Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
Co-authored-by: default avatarLuka Harambasic <luka.harambasic@sap.com>
parent 503cc3c1
No related branches found
No related tags found
No related merge requests found
Showing
with 265 additions and 3 deletions
......@@ -4,6 +4,8 @@ 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.FragmentInformationAboutBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -36,6 +38,22 @@ class InformationAboutFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationAboutScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationAboutScrollview.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationAboutHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -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.FragmentInformationContactBinding
import de.rki.coronawarnapp.ui.BaseFragment
......@@ -38,6 +39,22 @@ class InformationContactFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationContactContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationContactContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationContactHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -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.FragmentInformationBinding
import de.rki.coronawarnapp.ui.BaseFragment
......@@ -38,6 +39,22 @@ class InformationFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -4,6 +4,8 @@ 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.FragmentInformationLegalBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -36,6 +38,22 @@ class InformationLegalFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationLegalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationLegalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationLegalHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -4,6 +4,8 @@ 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.FragmentInformationPrivacyBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -36,6 +38,22 @@ class InformationPrivacyFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationPrivacyContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationPrivacyHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -4,6 +4,8 @@ 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.FragmentInformationTechnicalBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -36,6 +38,22 @@ class InformationTechnicalFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationTechnicalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationTechnicalContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationTechnicalHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -4,6 +4,8 @@ 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.FragmentInformationTermsBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -36,6 +38,22 @@ class InformationTermsFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onStart() {
super.onStart()
binding.informationTermsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
override fun onResume() {
super.onResume()
binding.informationTermsContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.informationTermsHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
......
......@@ -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() {
......
......@@ -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()
......
......@@ -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)
}
}
......@@ -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()
......
......@@ -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(
......
......@@ -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(
......
......@@ -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()
}
......
......@@ -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() {
......
......@@ -5,6 +5,7 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.activityViewModels
import de.rki.coronawarnapp.R
import de.rki.coronawarnapp.databinding.FragmentSettingsBinding
import de.rki.coronawarnapp.ui.BaseFragment
import de.rki.coronawarnapp.ui.main.MainActivity
......@@ -48,6 +49,7 @@ class SettingsFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setButtonOnClickListener()
setContentDescription()
}
override fun onResume() {
......@@ -59,6 +61,11 @@ class SettingsFragment : BaseFragment() {
settingsViewModel.refreshNotificationsTestEnabled()
}
private fun setContentDescription() {
val backButtonString: String = getString(R.string.button_back)
binding.settingsHeader.headerToolbar.setNavigationContentDescription(backButtonString)
}
private fun setButtonOnClickListener() {
val tracingRow = binding.settingsTracing.settingsRow
val notificationRow = binding.settingsNotifications.settingsRow
......
......@@ -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()
......
......@@ -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()
......
......@@ -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())
......
......@@ -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())
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment