|
|
|
@ -52,7 +52,9 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
|
|
|
|
|
|
|
|
|
|
private lateinit var bookmarkStore: BookmarkFragmentStore
|
|
|
|
|
private lateinit var bookmarkView: BookmarkView
|
|
|
|
|
private lateinit var bookmarkInteractor: BookmarkFragmentInteractor
|
|
|
|
|
private var _bookmarkInteractor: BookmarkFragmentInteractor? = null
|
|
|
|
|
protected val bookmarkInteractor: BookmarkFragmentInteractor
|
|
|
|
|
get() = _bookmarkInteractor!!
|
|
|
|
|
|
|
|
|
|
private val sharedViewModel: BookmarksSharedViewModel by activityViewModels {
|
|
|
|
|
ViewModelProvider.NewInstanceFactory() // this is a workaround for #4652
|
|
|
|
@ -75,7 +77,7 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
|
|
|
|
|
BookmarkFragmentStore(BookmarkFragmentState(null))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bookmarkInteractor = BookmarkFragmentInteractor(
|
|
|
|
|
_bookmarkInteractor = BookmarkFragmentInteractor(
|
|
|
|
|
bookmarkStore = bookmarkStore,
|
|
|
|
|
viewModel = sharedViewModel,
|
|
|
|
|
bookmarksController = DefaultBookmarkController(
|
|
|
|
@ -94,7 +96,7 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
|
|
|
|
|
|
|
|
|
|
bookmarkView = BookmarkView(view.bookmarkLayout, bookmarkInteractor)
|
|
|
|
|
|
|
|
|
|
lifecycle.addObserver(
|
|
|
|
|
viewLifecycleOwner.lifecycle.addObserver(
|
|
|
|
|
BookmarkDeselectNavigationListener(
|
|
|
|
|
findNavController(),
|
|
|
|
|
sharedViewModel,
|
|
|
|
@ -293,6 +295,11 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
override fun onDestroyView() {
|
|
|
|
|
super.onDestroyView()
|
|
|
|
|
_bookmarkInteractor = null
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private fun invokePendingDeletion() {
|
|
|
|
|
pendingBookmarkDeletionJob?.let {
|
|
|
|
|
viewLifecycleOwner.lifecycleScope.launch {
|
|
|
|
|