No issue: reduce code duplication in BookmarkFragmentInteractor
This commit is contained in:
parent
5fe05e919a
commit
f323105163
|
@ -52,17 +52,7 @@ class BookmarkFragmentInteractor(
|
|||
|
||||
override fun open(item: BookmarkNode) {
|
||||
when (item.type) {
|
||||
BookmarkNodeType.ITEM -> {
|
||||
item.url?.let { url ->
|
||||
activity!!
|
||||
.openToBrowserAndLoad(
|
||||
searchTermOrURL = url,
|
||||
newTab = true,
|
||||
from = BrowserDirection.FromBookmarks
|
||||
)
|
||||
}
|
||||
metrics.track(Event.OpenedBookmark)
|
||||
}
|
||||
BookmarkNodeType.ITEM -> openItem(item)
|
||||
BookmarkNodeType.FOLDER -> {
|
||||
navController.nav(
|
||||
R.id.bookmarkFragment,
|
||||
|
@ -123,28 +113,29 @@ class BookmarkFragmentInteractor(
|
|||
}
|
||||
|
||||
override fun openInNewTab(item: BookmarkNode) {
|
||||
require(item.type == BookmarkNodeType.ITEM)
|
||||
item.url?.let { url ->
|
||||
activity?.browsingModeManager?.mode = BrowsingMode.Normal
|
||||
activity?.openToBrowserAndLoad(
|
||||
searchTermOrURL = url,
|
||||
newTab = true,
|
||||
from = BrowserDirection.FromBookmarks
|
||||
)
|
||||
metrics.track(Event.OpenedBookmarkInNewTab)
|
||||
}
|
||||
openItem(item, BrowsingMode.Normal)
|
||||
}
|
||||
|
||||
override fun openInPrivateTab(item: BookmarkNode) {
|
||||
openItem(item, BrowsingMode.Private)
|
||||
}
|
||||
|
||||
private fun openItem(item: BookmarkNode, tabMode: BrowsingMode? = null) {
|
||||
require(item.type == BookmarkNodeType.ITEM)
|
||||
item.url?.let { url ->
|
||||
activity?.browsingModeManager?.mode = BrowsingMode.Private
|
||||
tabMode?.let { activity?.browsingModeManager?.mode = it }
|
||||
activity?.openToBrowserAndLoad(
|
||||
searchTermOrURL = url,
|
||||
newTab = true,
|
||||
from = BrowserDirection.FromBookmarks
|
||||
)
|
||||
metrics.track(Event.OpenedBookmarkInPrivateTab)
|
||||
metrics.track(
|
||||
when (tabMode) {
|
||||
BrowsingMode.Private -> Event.OpenedBookmarkInPrivateTab
|
||||
BrowsingMode.Normal -> Event.OpenedBookmarkInNewTab
|
||||
null -> Event.OpenedBookmark
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue