From 0356d867845af282acc771659266b44f790dd6e0 Mon Sep 17 00:00:00 2001 From: Shen Date: Wed, 12 Aug 2020 18:11:12 -0700 Subject: [PATCH] For #12976 - Show infinity symbol in the tab counter when the count is greater than 99 --- .../java/org/mozilla/fenix/tabtray/TabTrayView.kt | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) 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 d0d903447..3be06f084 100644 --- a/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt +++ b/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt @@ -39,9 +39,13 @@ import mozilla.components.browser.tabstray.TabViewHolder import mozilla.components.support.ktx.android.util.dpToPx import org.mozilla.fenix.R import org.mozilla.fenix.components.metrics.Event +import org.mozilla.fenix.components.toolbar.TabCounter.Companion.INFINITE_CHAR_PADDING_BOTTOM +import org.mozilla.fenix.components.toolbar.TabCounter.Companion.MAX_VISIBLE_TABS +import org.mozilla.fenix.components.toolbar.TabCounter.Companion.SO_MANY_TABS_OPEN import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.settings import org.mozilla.fenix.tabtray.SaveToCollectionsButtonAdapter.MultiselectModeChange +import java.text.NumberFormat /** * View that contains and configures the BrowserAwesomeBar @@ -372,7 +376,7 @@ class TabTrayView( } view.tab_tray_overflow.isVisible = !hasNoTabs - counter_text.text = "${browserState.normalTabs.size}" + counter_text.text = updateTabCounter(browserState.normalTabs.size) updateTabCounterContentDescription(browserState.normalTabs.size) adjustNewTabButtonsForNormalMode() @@ -457,6 +461,14 @@ class TabTrayView( } } + private fun updateTabCounter(count: Int): String { + if (count > MAX_VISIBLE_TABS) { + counter_text.setPadding(0, 0, 0, INFINITE_CHAR_PADDING_BOTTOM) + return SO_MANY_TABS_OPEN + } + return NumberFormat.getInstance().format(count.toLong()) + } + fun setTopOffset(landscape: Boolean) { val topOffset = if (landscape) { 0