diff --git a/app/src/main/java/space/hackenslacker/kanbn4droid/app/settings/SettingsDialogFragment.kt b/app/src/main/java/space/hackenslacker/kanbn4droid/app/settings/SettingsDialogFragment.kt index d4026e5..7fef9e1 100644 --- a/app/src/main/java/space/hackenslacker/kanbn4droid/app/settings/SettingsDialogFragment.kt +++ b/app/src/main/java/space/hackenslacker/kanbn4droid/app/settings/SettingsDialogFragment.kt @@ -47,14 +47,6 @@ class SettingsDialogFragment : DialogFragment() { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { val dialogView = LayoutInflater.from(requireContext()).inflate(R.layout.dialog_settings, null) - childFragmentManager.commitNow { - replace( - R.id.settingsFragmentContainer, - SettingsPreferencesFragment(), - SETTINGS_PREFS_TAG, - ) - } - progress = dialogView.findViewById(R.id.settingsApplyProgress) errorText = dialogView.findViewById(R.id.settingsErrorText) saveButton = dialogView.findViewById(R.id.settingsSaveAndCloseButton) @@ -69,6 +61,15 @@ class SettingsDialogFragment : DialogFragment() { dialog.setCanceledOnTouchOutside(false) dialog.setOnShowListener { + if (findPreferencesFragment() == null) { + childFragmentManager.commitNow { + replace( + R.id.settingsFragmentContainer, + SettingsPreferencesFragment(), + SETTINGS_PREFS_TAG, + ) + } + } saveButton?.setOnClickListener { onSaveClicked() }