Skip to content

Commit 4fd1835

Browse files
committed
fix: current playlist doesn't close after deletion
1 parent 3cca462 commit 4fd1835

3 files changed

Lines changed: 14 additions & 9 deletions

File tree

app/src/main/java/com/github/libretube/ui/dialogs/DeletePlaylistDialog.kt

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,14 @@ class DeletePlaylistDialog : DialogFragment() {
4141
context.toastFromMainDispatcher(
4242
if (success) R.string.success else R.string.fail
4343
)
44-
setFragmentResult(
45-
PlaylistOptionsBottomSheet.PLAYLIST_OPTIONS_REQUEST_KEY,
46-
bundleOf(IntentData.playlistTask to true)
47-
)
48-
withContext(Dispatchers.Main) { dismiss() }
44+
withContext(Dispatchers.Main) {
45+
dismiss()
46+
47+
setFragmentResult(
48+
PlaylistOptionsBottomSheet.PLAYLIST_OPTIONS_REQUEST_KEY,
49+
bundleOf(IntentData.playlistTask to true)
50+
)
51+
}
4952
}
5053
}
5154
}

app/src/main/java/com/github/libretube/ui/fragments/LibraryFragment.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -186,9 +186,10 @@ class LibraryFragment : DynamicLayoutManagerFragment(R.layout.fragment_library)
186186
val binding = _binding ?: return@repeatOnLifecycle
187187
binding.playlistRefresh.isRefreshing = false
188188

189-
if (playlists.isNotEmpty()) {
190-
showPlaylists(playlists)
191-
} else {
189+
// also update playlists recycler when the playlists are empty in order to remove
190+
// playlists that were removed by the user
191+
showPlaylists(playlists)
192+
if (playlists.isEmpty()) {
192193
binding.sortTV.isVisible = false
193194
binding.nothingHere.isVisible = true
194195
}

app/src/main/java/com/github/libretube/ui/fragments/PlaylistFragment.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import androidx.core.view.isVisible
1414
import androidx.core.view.updatePadding
1515
import androidx.fragment.app.activityViewModels
1616
import androidx.lifecycle.lifecycleScope
17+
import androidx.navigation.fragment.findNavController
1718
import androidx.navigation.fragment.navArgs
1819
import androidx.recyclerview.widget.GridLayoutManager
1920
import androidx.recyclerview.widget.RecyclerView
@@ -192,7 +193,7 @@ class PlaylistFragment : DynamicLayoutManagerFragment(R.layout.fragment_playlist
192193
}
193194

194195
if (isPlaylistToBeDeleted) {
195-
// TODO move back: navController().popBackStack() crashes
196+
findNavController().popBackStack()
196197
return@setFragmentResultListener
197198
}
198199
}

0 commit comments

Comments
 (0)