diff --git a/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt b/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt index a3228a498..cf1fb7822 100644 --- a/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt +++ b/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt @@ -11,6 +11,7 @@ import mozilla.components.browser.toolbar.MAX_URI_LENGTH import mozilla.components.concept.tabstray.Tab import org.mozilla.fenix.R import org.mozilla.fenix.components.metrics.Event +import org.mozilla.fenix.components.FenixSnackbar import org.mozilla.fenix.databinding.InactiveFooterItemBinding import org.mozilla.fenix.databinding.InactiveHeaderItemBinding import org.mozilla.fenix.databinding.InactiveTabListItemBinding @@ -19,6 +20,7 @@ import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.loadIntoView import org.mozilla.fenix.ext.toShortUrl import org.mozilla.fenix.home.topsites.dpToPx +import org.mozilla.fenix.tabstray.TabsTrayFragment import org.mozilla.fenix.tabstray.TabsTrayInteractor sealed class InactiveTabViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { @@ -80,9 +82,23 @@ sealed class InactiveTabViewHolder(itemView: View) : RecyclerView.ViewHolder(ite binding.action.setOnClickListener { interactor.onEnabledAutoCloseClicked() + showConfirmationSnackbar() } } + private fun showConfirmationSnackbar() { + val context = binding.root.context + val view = binding.root + val text = context.getString(R.string.inactive_tabs_auto_close_message_snackbar) + val snackbar = FenixSnackbar.make( + view = view, + duration = FenixSnackbar.LENGTH_SHORT, + isDisplayedWithBrowserToolbar = true + ).setText(text) + snackbar.view.elevation = TabsTrayFragment.ELEVATION + snackbar.show() + } + companion object { const val LAYOUT_ID = R.layout.inactive_tabs_auto_close } diff --git a/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabsAutoCloseDialogController.kt b/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabsAutoCloseDialogController.kt index 137d7d318..554c27d7b 100644 --- a/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabsAutoCloseDialogController.kt +++ b/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabsAutoCloseDialogController.kt @@ -29,6 +29,7 @@ class InactiveTabsAutoCloseDialogController( * Enable the auto-close feature with the after a month setting. */ fun enableAutoClosed() { + settings.hasInactiveTabsAutoCloseDialogBeenDismissed = true settings.closeTabsAfterOneMonth = true settings.closeTabsAfterOneWeek = false settings.closeTabsAfterOneDay = false diff --git a/app/src/main/res/layout/inactive_tabs_auto_close.xml b/app/src/main/res/layout/inactive_tabs_auto_close.xml index e8a1a4133..873597fe1 100644 --- a/app/src/main/res/layout/inactive_tabs_auto_close.xml +++ b/app/src/main/res/layout/inactive_tabs_auto_close.xml @@ -10,7 +10,6 @@ android:paddingHorizontal="1dp" android:background="@color/photonLightGrey30"> - + android:padding="12dp"> + android:padding="12dp"> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a0e939a2b..57e05b82c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -117,7 +117,11 @@ Close - Turn on auto close + Turn on auto close + + + Turn on auto-close + @@ -1957,6 +1961,8 @@ Firefox can close tabs you haven’t viewed over the past month. TURN ON AUTO CLOSE + + Auto-close enabled