diff --git a/holder/src/main/java/nl/rijksoverheid/ctr/holder/BaseFragment.kt b/holder/src/main/java/nl/rijksoverheid/ctr/holder/BaseFragment.kt index 40e387338..9e73e30c0 100644 --- a/holder/src/main/java/nl/rijksoverheid/ctr/holder/BaseFragment.kt +++ b/holder/src/main/java/nl/rijksoverheid/ctr/holder/BaseFragment.kt @@ -26,6 +26,12 @@ abstract class BaseFragment(contentLayoutId: Int) : Fragment(contentLayoutId) { */ abstract fun onButtonClickWithRetryAction() + /** + * Function that is also called when a network requests fails and a user presses the "close" button + */ + open fun onButtonClickClose() { + } + open fun onButtonClickWithRetryTitle(): Int { return R.string.dialog_retry } @@ -46,7 +52,8 @@ abstract class BaseFragment(contentLayoutId: Int) : Fragment(contentLayoutId) { positiveButtonCallback = { onButtonClickWithRetryAction() }, - negativeButtonText = R.string.dialog_close + negativeButtonText = R.string.dialog_close, + negativeButtonCallback = this::onButtonClickClose ) } is NetworkRequestResult.Failed.ServerNetworkError -> { diff --git a/holder/src/main/java/nl/rijksoverheid/ctr/holder/fuzzy_matching/FuzzyMatchingSyncFragment.kt b/holder/src/main/java/nl/rijksoverheid/ctr/holder/fuzzy_matching/FuzzyMatchingSyncFragment.kt index 447ecc1f5..ce80ea1c9 100644 --- a/holder/src/main/java/nl/rijksoverheid/ctr/holder/fuzzy_matching/FuzzyMatchingSyncFragment.kt +++ b/holder/src/main/java/nl/rijksoverheid/ctr/holder/fuzzy_matching/FuzzyMatchingSyncFragment.kt @@ -35,8 +35,12 @@ class FuzzyMatchingSyncFragment : BaseFragment(R.layout.fragment_saved_events_sy private val fuzzyMatchingSyncFragmentArgs: FuzzyMatchingSyncFragmentArgs by navArgs() + override fun onButtonClickClose() { + findNavControllerSafety()?.popBackStack() + } + override fun onButtonClickWithRetryAction() { - // This screen does not have a retry button + syncGreenCardsViewModel.refresh() } override fun getFlow(): Flow {