mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-04 00:49:02 -06:00 
			
		
		
		
	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.view.*
 | 
			
		||||
import org.yuzu.yuzu_emu.features.settings.utils.SettingsFile
 | 
			
		||||
import org.yuzu.yuzu_emu.fragments.ResetSettingsDialogFragment
 | 
			
		||||
import org.yuzu.yuzu_emu.utils.ThemeHelper
 | 
			
		||||
 | 
			
		||||
class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) {
 | 
			
		||||
@@ -115,7 +116,12 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView)
 | 
			
		||||
                RunnableSetting(
 | 
			
		||||
                    R.string.reset_to_default,
 | 
			
		||||
                    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