1717package com.ichi2.anki.dialogs
1818
1919import android.app.Dialog
20- import android.content.DialogInterface
2120import android.os.Bundle
2221import androidx.appcompat.app.AppCompatDialogFragment
2322import androidx.core.os.bundleOf
@@ -29,6 +28,9 @@ import com.ichi2.anki.browser.BrowserColumnSelectionFragment
2928import com.ichi2.anki.browser.CardBrowserViewModel
3029import com.ichi2.anki.databinding.BrowserOptionsDialogBinding
3130import com.ichi2.anki.model.CardsOrNotes
31+ import com.ichi2.utils.create
32+ import com.ichi2.utils.negativeButton
33+ import com.ichi2.utils.positiveButton
3234import timber.log.Timber
3335
3436class BrowserOptionsDialog : AppCompatDialogFragment (R .layout.browser_options_dialog) {
@@ -45,7 +47,8 @@ class BrowserOptionsDialog : AppCompatDialogFragment(R.layout.browser_options_di
4547 }
4648 }
4749
48- private val positiveButtonClick = { _: DialogInterface , _: Int ->
50+ /* * Persists updated options to the ViewModel */
51+ fun saveChanges () {
4952 if (cardsOrNotes != dialogCardsOrNotes) {
5053 viewModel.setCardsOrNotes(dialogCardsOrNotes)
5154 }
@@ -109,14 +112,11 @@ class BrowserOptionsDialog : AppCompatDialogFragment(R.layout.browser_options_di
109112
110113 binding.browsingTextView.text = TR .preferencesBrowsing()
111114
112- return MaterialAlertDialogBuilder (requireContext()).run {
113- this .setView(binding.root)
114- this .setTitle(getString(R .string.browser_options_dialog_heading))
115- this .setNegativeButton(getString(R .string.dialog_cancel)) { _: DialogInterface , _: Int ->
116- dismiss()
117- }
118- this .setPositiveButton(getString(R .string.dialog_ok), DialogInterface .OnClickListener (function = positiveButtonClick))
119- this .create()
115+ return MaterialAlertDialogBuilder (requireContext()).create {
116+ setView(binding.root)
117+ setTitle(getString(R .string.browser_options_dialog_heading))
118+ positiveButton(R .string.dialog_ok) { saveChanges() }
119+ negativeButton(R .string.dialog_cancel)
120120 }
121121 }
122122
0 commit comments