2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-11 13:11:01 +00:00

Bug 1838859 - Remove no op utility for exhaustive when

This commit is contained in:
rahulsainani 2023-06-19 13:32:05 +02:00 committed by mergify[bot]
parent b121502ff2
commit 75e724284b
9 changed files with 8 additions and 34 deletions

View File

@ -49,7 +49,6 @@ import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.ext.navigateSafe import org.mozilla.fenix.ext.navigateSafe
import org.mozilla.fenix.ext.openSetDefaultBrowserOption import org.mozilla.fenix.ext.openSetDefaultBrowserOption
import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit
import org.mozilla.fenix.utils.Do
import org.mozilla.fenix.utils.Settings import org.mozilla.fenix.utils.Settings
/** /**
@ -95,7 +94,7 @@ class DefaultBrowserToolbarMenuController(
val customTabUseCases = activity.components.useCases.customTabsUseCases val customTabUseCases = activity.components.useCases.customTabsUseCases
trackToolbarItemInteraction(item) trackToolbarItemInteraction(item)
Do exhaustive when (item) { when (item) {
// TODO: These can be removed for https://github.com/mozilla-mobile/fenix/issues/17870 // TODO: These can be removed for https://github.com/mozilla-mobile/fenix/issues/17870
// todo === Start === // todo === Start ===
is ToolbarMenu.Item.InstallPwaToHomeScreen -> { is ToolbarMenu.Item.InstallPwaToHomeScreen -> {

View File

@ -9,7 +9,6 @@ import mozilla.components.concept.storage.BookmarkNodeType
import mozilla.telemetry.glean.private.NoExtras import mozilla.telemetry.glean.private.NoExtras
import org.mozilla.fenix.GleanMetrics.BookmarksManagement import org.mozilla.fenix.GleanMetrics.BookmarksManagement
import org.mozilla.fenix.browser.browsingmode.BrowsingMode import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.utils.Do
/** /**
* Interactor for the Bookmarks screen. * Interactor for the Bookmarks screen.
@ -113,7 +112,7 @@ class BookmarkFragmentInteractor(
} }
override fun open(item: BookmarkNode) { override fun open(item: BookmarkNode) {
Do exhaustive when (item.type) { when (item.type) {
BookmarkNodeType.ITEM -> { BookmarkNodeType.ITEM -> {
bookmarksController.handleBookmarkTapped(item) bookmarksController.handleBookmarkTapped(item)
BookmarksManagement.open.record(NoExtras()) BookmarksManagement.open.record(NoExtras())

View File

@ -23,7 +23,6 @@ import org.mozilla.fenix.library.bookmarks.BookmarkItemMenu
import org.mozilla.fenix.library.bookmarks.BookmarkPayload import org.mozilla.fenix.library.bookmarks.BookmarkPayload
import org.mozilla.fenix.library.bookmarks.BookmarkViewInteractor import org.mozilla.fenix.library.bookmarks.BookmarkViewInteractor
import org.mozilla.fenix.library.bookmarks.inRoots import org.mozilla.fenix.library.bookmarks.inRoots
import org.mozilla.fenix.utils.Do
/** /**
* Base class for bookmark node view holders. * Base class for bookmark node view holders.
@ -39,7 +38,7 @@ class BookmarkNodeViewHolder(
init { init {
menu = BookmarkItemMenu(containerView.context) { menuItem -> menu = BookmarkItemMenu(containerView.context) { menuItem ->
val item = this.item ?: return@BookmarkItemMenu val item = this.item ?: return@BookmarkItemMenu
Do exhaustive when (menuItem) { when (menuItem) {
BookmarkItemMenu.Item.Edit -> interactor.onEditPressed(item) BookmarkItemMenu.Item.Edit -> interactor.onEditPressed(item)
BookmarkItemMenu.Item.Copy -> interactor.onCopyPressed(item) BookmarkItemMenu.Item.Copy -> interactor.onCopyPressed(item)
BookmarkItemMenu.Item.Share -> interactor.onSharePressed(item) BookmarkItemMenu.Item.Share -> interactor.onSharePressed(item)

View File

@ -17,7 +17,6 @@ import org.mozilla.fenix.library.history.HistoryFragmentState
import org.mozilla.fenix.library.history.HistoryInteractor import org.mozilla.fenix.library.history.HistoryInteractor
import org.mozilla.fenix.library.history.HistoryItemTimeGroup import org.mozilla.fenix.library.history.HistoryItemTimeGroup
import org.mozilla.fenix.selection.SelectionHolder import org.mozilla.fenix.selection.SelectionHolder
import org.mozilla.fenix.utils.Do
class HistoryListItemViewHolder( class HistoryListItemViewHolder(
view: View, view: View,
@ -67,7 +66,7 @@ class HistoryListItemViewHolder(
binding.historyLayout.titleView.text = item.title binding.historyLayout.titleView.text = item.title
binding.historyLayout.urlView.text = Do exhaustive when (item) { binding.historyLayout.urlView.text = when (item) {
is History.Regular -> item.url is History.Regular -> item.url
is History.Metadata -> item.url is History.Metadata -> item.url
is History.Group -> { is History.Group -> {

View File

@ -31,7 +31,6 @@ import org.mozilla.fenix.settings.about.AboutItemType.PRIVACY_NOTICE
import org.mozilla.fenix.settings.about.AboutItemType.RIGHTS import org.mozilla.fenix.settings.about.AboutItemType.RIGHTS
import org.mozilla.fenix.settings.about.AboutItemType.SUPPORT import org.mozilla.fenix.settings.about.AboutItemType.SUPPORT
import org.mozilla.fenix.settings.about.AboutItemType.WHATS_NEW import org.mozilla.fenix.settings.about.AboutItemType.WHATS_NEW
import org.mozilla.fenix.utils.Do
import org.mozilla.fenix.whatsnew.WhatsNew import org.mozilla.fenix.whatsnew.WhatsNew
import org.mozilla.geckoview.BuildConfig as GeckoViewBuildConfig import org.mozilla.geckoview.BuildConfig as GeckoViewBuildConfig
@ -189,7 +188,7 @@ class AboutFragment : Fragment(), AboutPageListener {
} }
override fun onAboutItemClicked(item: AboutItem) { override fun onAboutItemClicked(item: AboutItem) {
Do exhaustive when (item) { when (item) {
is AboutItem.ExternalLink -> { is AboutItem.ExternalLink -> {
when (item.type) { when (item.type) {
WHATS_NEW -> { WHATS_NEW -> {

View File

@ -14,7 +14,6 @@ import org.mozilla.fenix.R
import org.mozilla.fenix.databinding.AccountShareListItemBinding import org.mozilla.fenix.databinding.AccountShareListItemBinding
import org.mozilla.fenix.share.ShareToAccountDevicesInteractor import org.mozilla.fenix.share.ShareToAccountDevicesInteractor
import org.mozilla.fenix.share.listadapters.SyncShareOption import org.mozilla.fenix.share.listadapters.SyncShareOption
import org.mozilla.fenix.utils.Do
class AccountDeviceViewHolder( class AccountDeviceViewHolder(
itemView: View, itemView: View,
@ -31,7 +30,7 @@ class AccountDeviceViewHolder(
private fun bindClickListeners(option: SyncShareOption) { private fun bindClickListeners(option: SyncShareOption) {
itemView.setOnClickListener { itemView.setOnClickListener {
Do exhaustive when (option) { when (option) {
SyncShareOption.SignIn -> interactor.onSignIn() SyncShareOption.SignIn -> interactor.onSignIn()
SyncShareOption.AddNewDevice -> interactor.onAddNewDevice() SyncShareOption.AddNewDevice -> interactor.onAddNewDevice()
is SyncShareOption.SendAll -> interactor.onShareToAllDevices(option.devices) is SyncShareOption.SendAll -> interactor.onShareToAllDevices(option.devices)

View File

@ -9,7 +9,6 @@ import androidx.annotation.VisibleForTesting
import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayout
import mozilla.components.browser.menu.BrowserMenuBuilder import mozilla.components.browser.menu.BrowserMenuBuilder
import mozilla.components.browser.state.store.BrowserStore import mozilla.components.browser.state.store.BrowserStore
import org.mozilla.fenix.utils.Do
/** /**
* A wrapper class that building the tabs tray menu that handles item clicks. * A wrapper class that building the tabs tray menu that handles item clicks.
@ -40,7 +39,7 @@ class MenuIntegration(
@VisibleForTesting @VisibleForTesting
internal fun handleMenuClicked(item: TabsTrayMenu.Item) { internal fun handleMenuClicked(item: TabsTrayMenu.Item) {
Do exhaustive when (item) { when (item) {
is TabsTrayMenu.Item.ShareAllTabs -> is TabsTrayMenu.Item.ShareAllTabs ->
navigationInteractor.onShareTabsOfTypeClicked(isPrivateMode) navigationInteractor.onShareTabsOfTypeClicked(isPrivateMode)
is TabsTrayMenu.Item.OpenAccountSettings -> is TabsTrayMenu.Item.OpenAccountSettings ->

View File

@ -8,7 +8,6 @@ import android.content.Context
import androidx.annotation.VisibleForTesting import androidx.annotation.VisibleForTesting
import mozilla.components.browser.menu.BrowserMenuBuilder import mozilla.components.browser.menu.BrowserMenuBuilder
import org.mozilla.fenix.tabstray.TabsTrayInteractor import org.mozilla.fenix.tabstray.TabsTrayInteractor
import org.mozilla.fenix.utils.Do
class SelectionMenuIntegration( class SelectionMenuIntegration(
private val context: Context, private val context: Context,
@ -25,7 +24,7 @@ class SelectionMenuIntegration(
@VisibleForTesting @VisibleForTesting
internal fun handleMenuClicked(item: SelectionMenu.Item) { internal fun handleMenuClicked(item: SelectionMenu.Item) {
Do exhaustive when (item) { when (item) {
is SelectionMenu.Item.BookmarkTabs -> { is SelectionMenu.Item.BookmarkTabs -> {
interactor.onBookmarkSelectedTabsClicked() interactor.onBookmarkSelectedTabsClicked()
} }

View File

@ -1,18 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.utils
object Do {
/**
* Indicates to the linter that the following when statement should be exhaustive.
*
* @sample Do exhaustive when (bool) {
* true -> Unit
* false -> Unit
* }
*/
inline infix fun <reified T> exhaustive(any: T?) = any
}