From ccfaa3826b58f4025809360640f6bbd7866af3f9 Mon Sep 17 00:00:00 2001 From: Andrey Mukamolov Date: Fri, 19 Jul 2019 11:13:56 +0300 Subject: [PATCH] For #2142: Added accessibility focus --- .../main/java/org/mozilla/fenix/home/HomeFragment.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt index 63b36cdbc..b680c7c71 100644 --- a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt @@ -13,6 +13,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.view.ViewTreeObserver +import android.view.accessibility.AccessibilityEvent import androidx.annotation.StringRes import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AppCompatActivity @@ -321,6 +322,8 @@ class HomeFragment : Fragment(), AccountObserver { (activity as AppCompatActivity).supportActionBar?.hide() requireComponents.backgroundServices.accountManager.register(this, owner = this) + + focusToolbarForAccessibility() } override fun onStart() { @@ -837,6 +840,14 @@ class HomeFragment : Fragment(), AccountObserver { } } + private fun focusToolbarForAccessibility() { + viewLifecycleOwner.lifecycleScope.launch { + delay(ACCESSIBILITY_FOCUS_DELAY) + toolbar.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) + toolbar.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED) + } + } + private fun showRenamedSnackbar() { view?.let { view -> val string = view.context.getString(R.string.snackbar_collection_renamed) @@ -864,6 +875,7 @@ class HomeFragment : Fragment(), AccountObserver { private const val ANIM_ON_SCREEN_DELAY = 200L private const val FADE_ANIM_DURATION = 150L private const val ANIM_SNACKBAR_DELAY = 100L + private const val ACCESSIBILITY_FOCUS_DELAY = 2000L private const val SHARED_TRANSITION_MS = 200L private const val TAB_ITEM_TRANSITION_NAME = "tab_item" private const val toolbarPaddingDp = 12f