home: add retry to error dialog

This commit is contained in:
Alexander Capehart 2025-01-08 12:34:24 -07:00
parent 6f2b7abbef
commit 3bd4027802
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47

View file

@ -24,9 +24,11 @@ import android.os.Build
import android.os.Bundle import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.viewModels
import androidx.navigation.fragment.navArgs import androidx.navigation.fragment.navArgs
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogErrorDetailsBinding import org.oxycblt.auxio.databinding.DialogErrorDetailsBinding
import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.getSystemServiceCompat import org.oxycblt.auxio.util.getSystemServiceCompat
import org.oxycblt.auxio.util.openInBrowser import org.oxycblt.auxio.util.openInBrowser
@ -42,10 +44,14 @@ import org.oxycblt.auxio.util.showToast
class ErrorDetailsDialog : ViewBindingMaterialDialogFragment<DialogErrorDetailsBinding>() { class ErrorDetailsDialog : ViewBindingMaterialDialogFragment<DialogErrorDetailsBinding>() {
private val args: ErrorDetailsDialogArgs by navArgs() private val args: ErrorDetailsDialogArgs by navArgs()
private var clipboardManager: ClipboardManager? = null private var clipboardManager: ClipboardManager? = null
private val musicModel: MusicViewModel by viewModels<>()
override fun onConfigDialog(builder: AlertDialog.Builder) { override fun onConfigDialog(builder: AlertDialog.Builder) {
builder builder
.setTitle(R.string.lbl_error_info) .setTitle(R.string.lbl_error_info)
.setNeutralButton(
R.string.lbl_retry
) { _, _ -> musicModel.refresh() }
.setPositiveButton(R.string.lbl_report) { _, _ -> .setPositiveButton(R.string.lbl_report) { _, _ ->
requireContext().openInBrowser(LINK_ISSUES) requireContext().openInBrowser(LINK_ISSUES)
} }