android: Use dialog fragment for the reset settings dialog
This commit is contained in:
		| @@ -19,6 +19,7 @@ import org.yuzu.yuzu_emu.features.settings.model.Settings | |||||||
| import org.yuzu.yuzu_emu.features.settings.model.StringSetting | import org.yuzu.yuzu_emu.features.settings.model.StringSetting | ||||||
| import org.yuzu.yuzu_emu.features.settings.model.view.* | import org.yuzu.yuzu_emu.features.settings.model.view.* | ||||||
| import org.yuzu.yuzu_emu.features.settings.utils.SettingsFile | import org.yuzu.yuzu_emu.features.settings.utils.SettingsFile | ||||||
|  | import org.yuzu.yuzu_emu.fragments.ResetSettingsDialogFragment | ||||||
| import org.yuzu.yuzu_emu.utils.ThemeHelper | import org.yuzu.yuzu_emu.utils.ThemeHelper | ||||||
|  |  | ||||||
| class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) { | class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) { | ||||||
| @@ -115,7 +116,12 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) | |||||||
|                 RunnableSetting( |                 RunnableSetting( | ||||||
|                     R.string.reset_to_default, |                     R.string.reset_to_default, | ||||||
|                     0 |                     0 | ||||||
|                 ) { resetSettings() } |                 ) { | ||||||
|  |                     ResetSettingsDialogFragment().show( | ||||||
|  |                         settingsActivity.supportFragmentManager, | ||||||
|  |                         ResetSettingsDialogFragment.TAG | ||||||
|  |                     ) | ||||||
|  |                 } | ||||||
|             ) |             ) | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| @@ -444,15 +450,4 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) | |||||||
|             ) |             ) | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     private fun resetSettings() { |  | ||||||
|         MaterialAlertDialogBuilder(settingsActivity) |  | ||||||
|             .setTitle(R.string.reset_all_settings) |  | ||||||
|             .setMessage(R.string.reset_all_settings_description) |  | ||||||
|             .setPositiveButton(android.R.string.ok) { _, _ -> |  | ||||||
|                 settingsActivity.onSettingsReset() |  | ||||||
|             } |  | ||||||
|             .setNegativeButton(android.R.string.cancel, null) |  | ||||||
|             .show() |  | ||||||
|     } |  | ||||||
| } | } | ||||||
|   | |||||||
| @@ -0,0 +1,30 @@ | |||||||
|  | // SPDX-FileCopyrightText: 2023 yuzu Emulator Project | ||||||
|  | // SPDX-License-Identifier: GPL-2.0-or-later | ||||||
|  |  | ||||||
|  | package org.yuzu.yuzu_emu.fragments | ||||||
|  |  | ||||||
|  | import android.app.Dialog | ||||||
|  | import android.os.Bundle | ||||||
|  | import androidx.fragment.app.DialogFragment | ||||||
|  | import com.google.android.material.dialog.MaterialAlertDialogBuilder | ||||||
|  | import org.yuzu.yuzu_emu.R | ||||||
|  | import org.yuzu.yuzu_emu.features.settings.ui.SettingsActivity | ||||||
|  |  | ||||||
|  | class ResetSettingsDialogFragment : DialogFragment() { | ||||||
|  |     override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { | ||||||
|  |         val settingsActivity = requireActivity() as SettingsActivity | ||||||
|  |  | ||||||
|  |         return MaterialAlertDialogBuilder(requireContext()) | ||||||
|  |             .setTitle(R.string.reset_all_settings) | ||||||
|  |             .setMessage(R.string.reset_all_settings_description) | ||||||
|  |             .setPositiveButton(android.R.string.ok) { _, _ -> | ||||||
|  |                 settingsActivity.onSettingsReset() | ||||||
|  |             } | ||||||
|  |             .setNegativeButton(android.R.string.cancel, null) | ||||||
|  |             .show() | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     companion object { | ||||||
|  |         const val TAG = "ResetSettingsDialogFragment" | ||||||
|  |     } | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user