diff --git a/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt b/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt index 9b76c072f..b0bce78ee 100644 --- a/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt @@ -51,6 +51,7 @@ import org.mozilla.fenix.ext.nav import org.mozilla.fenix.ext.requireComponents import org.mozilla.fenix.ext.toShortUrl import org.mozilla.fenix.library.LibraryPageFragment +import org.mozilla.fenix.tabtray.TabTrayDialogFragment import org.mozilla.fenix.utils.allowUndo /** @@ -207,14 +208,14 @@ class BookmarkFragment : LibraryPageFragment(), UserInteractionHan R.id.open_bookmarks_in_new_tabs_multi_select -> { openItemsInNewTab { node -> node.url } - navigate(BookmarkFragmentDirections.actionGlobalTabTrayDialogFragment()) + showTabTray() metrics?.track(Event.OpenedBookmarksInNewTabs) true } R.id.open_bookmarks_in_private_tabs_multi_select -> { openItemsInNewTab(private = true) { node -> node.url } - navigate(BookmarkFragmentDirections.actionGlobalTabTrayDialogFragment()) + showTabTray() metrics?.track(Event.OpenedBookmarksInPrivateTabs) true } @@ -237,6 +238,11 @@ class BookmarkFragment : LibraryPageFragment(), UserInteractionHan } } + private fun showTabTray() { + invokePendingDeletion() + TabTrayDialogFragment.show(parentFragmentManager) + } + private fun navigate(directions: NavDirections) { invokePendingDeletion() findNavController().nav( diff --git a/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt b/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt index a228d12c7..8b8179fa0 100644 --- a/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt @@ -44,6 +44,7 @@ import org.mozilla.fenix.ext.requireComponents import org.mozilla.fenix.ext.showToolbar import org.mozilla.fenix.ext.toShortUrl import org.mozilla.fenix.library.LibraryPageFragment +import org.mozilla.fenix.tabtray.TabTrayDialogFragment import org.mozilla.fenix.utils.allowUndo @SuppressWarnings("TooManyFunctions", "LargeClass") @@ -184,9 +185,7 @@ class HistoryFragment : LibraryPageFragment(), UserInteractionHandl selectedItem.url } - navigate( - HistoryFragmentDirections.actionGlobalTabTrayDialogFragment() - ) + showTabTray() true } R.id.open_history_in_private_tabs_multi_select -> { @@ -199,14 +198,18 @@ class HistoryFragment : LibraryPageFragment(), UserInteractionHandl browsingModeManager.mode = BrowsingMode.Private supportActionBar?.hide() } - navigate( - HistoryFragmentDirections.actionGlobalTabTrayDialogFragment() - ) + + showTabTray() true } else -> super.onOptionsItemSelected(item) } + private fun showTabTray() { + invokePendingDeletion() + TabTrayDialogFragment.show(parentFragmentManager) + } + private fun getMultiSelectSnackBarMessage(historyItems: Set): String { return if (historyItems.size > 1) { getString(R.string.history_delete_multiple_items_snackbar)