1
0
Fork 0

For #5442 - Show Delete Browsing Data on Quit option in home menu

master
Emily Kager 2019-09-26 11:46:05 -07:00 committed by Emily Kager
parent 841b06b02f
commit 40e6284aef
2 changed files with 28 additions and 2 deletions

View File

@ -93,6 +93,7 @@ import org.mozilla.fenix.mvi.getAutoDisposeObservable
import org.mozilla.fenix.mvi.getManagedEmitter
import org.mozilla.fenix.onboarding.FenixOnboarding
import org.mozilla.fenix.settings.SupportUtils
import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit
import org.mozilla.fenix.share.ShareTab
import org.mozilla.fenix.utils.FragmentPreDrawManager
import org.mozilla.fenix.utils.allowUndo
@ -677,6 +678,12 @@ class HomeFragment : Fragment() {
from = BrowserDirection.FromHome
)
}
HomeMenu.Item.Quit -> activity?.let { activity ->
deleteAndQuit(
activity,
lifecycleScope
)
}
}
}
}

View File

@ -11,6 +11,7 @@ import mozilla.components.browser.menu.item.BrowserMenuHighlightableItem
import mozilla.components.browser.menu.item.BrowserMenuImageText
import org.mozilla.fenix.R
import org.mozilla.fenix.theme.ThemeManager
import org.mozilla.fenix.utils.Settings
import org.mozilla.fenix.whatsnew.WhatsNew
class HomeMenu(
@ -22,12 +23,13 @@ class HomeMenu(
object Help : Item()
object Settings : Item()
object Library : Item()
object Quit : Item()
}
val menuBuilder by lazy { BrowserMenuBuilder(menuItems) }
private val menuItems by lazy {
listOf(
val items = mutableListOf(
BrowserMenuImageText(
context.getString(R.string.browser_menu_settings),
R.drawable.ic_settings,
@ -58,7 +60,10 @@ class HomeMenu(
R.drawable.ic_whats_new,
highlight = BrowserMenuHighlightableItem.Highlight(
startImageResource = R.drawable.ic_whats_new_notification,
backgroundResource = ThemeManager.resolveAttribute(R.attr.selectableItemBackground, context),
backgroundResource = ThemeManager.resolveAttribute(
R.attr.selectableItemBackground,
context
),
colorResource = R.color.whats_new_notification_color
),
isHighlighted = { WhatsNew.shouldHighlightWhatsNew(context) }
@ -66,5 +71,19 @@ class HomeMenu(
onItemTapped.invoke(Item.WhatsNew)
}
)
if (Settings.getInstance(context).shouldDeleteBrowsingDataOnQuit) {
items.add(
BrowserMenuImageText(
context.getString(R.string.delete_browsing_data_on_quit_action),
R.drawable.ic_exit,
ThemeManager.resolveAttribute(R.attr.primaryText, context)
) {
onItemTapped.invoke(Item.Quit)
}
)
}
items
}
}