diff --git a/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt b/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt
index f5b3656320..02668a8c30 100644
--- a/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt
+++ b/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt
@@ -25,6 +25,7 @@ import mozilla.components.browser.state.state.TabSessionState
import mozilla.components.browser.tabstray.BrowserTabsTray
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.components
+import org.mozilla.fenix.ext.settings
interface TabTrayInteractor {
fun onNewTabTapped(private: Boolean)
@@ -61,14 +62,18 @@ class TabTrayView(
get() = container
init {
+ val hasAccessibilityEnabled = view.context.settings().accessibilityServicesEnabled
+
toggleFabText(isPrivate)
behavior.addBottomSheetCallback(object : BottomSheetBehavior.BottomSheetCallback() {
override fun onSlide(bottomSheet: View, slideOffset: Float) {
- if (slideOffset >= SLIDE_OFFSET) {
- fabView.new_tab_button.show()
- } else {
- fabView.new_tab_button.hide()
+ if (!hasAccessibilityEnabled) {
+ if (slideOffset >= SLIDE_OFFSET) {
+ fabView.new_tab_button.show()
+ } else {
+ fabView.new_tab_button.hide()
+ }
}
}
@@ -142,8 +147,18 @@ class TabTrayView(
}
}
- fabView.new_tab_button.setOnClickListener {
- interactor.onNewTabTapped(isPrivateModeSelected)
+ view.tab_tray_new_tab.apply {
+ isVisible = hasAccessibilityEnabled
+ setOnClickListener {
+ interactor.onNewTabTapped(isPrivateModeSelected)
+ }
+ }
+
+ fabView.new_tab_button.apply {
+ isVisible = !hasAccessibilityEnabled
+ setOnClickListener {
+ interactor.onNewTabTapped(isPrivateModeSelected)
+ }
}
}
diff --git a/app/src/main/res/layout/component_tabstray.xml b/app/src/main/res/layout/component_tabstray.xml
index 291b5135dd..a7e5c381ab 100644
--- a/app/src/main/res/layout/component_tabstray.xml
+++ b/app/src/main/res/layout/component_tabstray.xml
@@ -70,6 +70,18 @@
+
+