|
|
@ -52,17 +52,7 @@ class BookmarkFragmentInteractor(
|
|
|
|
|
|
|
|
|
|
|
|
override fun open(item: BookmarkNode) {
|
|
|
|
override fun open(item: BookmarkNode) {
|
|
|
|
when (item.type) {
|
|
|
|
when (item.type) {
|
|
|
|
BookmarkNodeType.ITEM -> {
|
|
|
|
BookmarkNodeType.ITEM -> openItem(item)
|
|
|
|
item.url?.let { url ->
|
|
|
|
|
|
|
|
activity!!
|
|
|
|
|
|
|
|
.openToBrowserAndLoad(
|
|
|
|
|
|
|
|
searchTermOrURL = url,
|
|
|
|
|
|
|
|
newTab = true,
|
|
|
|
|
|
|
|
from = BrowserDirection.FromBookmarks
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
metrics.track(Event.OpenedBookmark)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
BookmarkNodeType.FOLDER -> {
|
|
|
|
BookmarkNodeType.FOLDER -> {
|
|
|
|
navController.nav(
|
|
|
|
navController.nav(
|
|
|
|
R.id.bookmarkFragment,
|
|
|
|
R.id.bookmarkFragment,
|
|
|
@ -123,28 +113,29 @@ class BookmarkFragmentInteractor(
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
override fun openInNewTab(item: BookmarkNode) {
|
|
|
|
override fun openInNewTab(item: BookmarkNode) {
|
|
|
|
require(item.type == BookmarkNodeType.ITEM)
|
|
|
|
openItem(item, BrowsingMode.Normal)
|
|
|
|
item.url?.let { url ->
|
|
|
|
|
|
|
|
activity?.browsingModeManager?.mode = BrowsingMode.Normal
|
|
|
|
|
|
|
|
activity?.openToBrowserAndLoad(
|
|
|
|
|
|
|
|
searchTermOrURL = url,
|
|
|
|
|
|
|
|
newTab = true,
|
|
|
|
|
|
|
|
from = BrowserDirection.FromBookmarks
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
metrics.track(Event.OpenedBookmarkInNewTab)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
override fun openInPrivateTab(item: BookmarkNode) {
|
|
|
|
override fun openInPrivateTab(item: BookmarkNode) {
|
|
|
|
|
|
|
|
openItem(item, BrowsingMode.Private)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun openItem(item: BookmarkNode, tabMode: BrowsingMode? = null) {
|
|
|
|
require(item.type == BookmarkNodeType.ITEM)
|
|
|
|
require(item.type == BookmarkNodeType.ITEM)
|
|
|
|
item.url?.let { url ->
|
|
|
|
item.url?.let { url ->
|
|
|
|
activity?.browsingModeManager?.mode = BrowsingMode.Private
|
|
|
|
tabMode?.let { activity?.browsingModeManager?.mode = it }
|
|
|
|
activity?.openToBrowserAndLoad(
|
|
|
|
activity?.openToBrowserAndLoad(
|
|
|
|
searchTermOrURL = url,
|
|
|
|
searchTermOrURL = url,
|
|
|
|
newTab = true,
|
|
|
|
newTab = true,
|
|
|
|
from = BrowserDirection.FromBookmarks
|
|
|
|
from = BrowserDirection.FromBookmarks
|
|
|
|
)
|
|
|
|
)
|
|
|
|
metrics.track(Event.OpenedBookmarkInPrivateTab)
|
|
|
|
metrics.track(
|
|
|
|
|
|
|
|
when (tabMode) {
|
|
|
|
|
|
|
|
BrowsingMode.Private -> Event.OpenedBookmarkInPrivateTab
|
|
|
|
|
|
|
|
BrowsingMode.Normal -> Event.OpenedBookmarkInNewTab
|
|
|
|
|
|
|
|
null -> Event.OpenedBookmark
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|