diff options
Diffstat (limited to 'src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt')
-rw-r--r-- | src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt index bef5b9705..e2e07ee8b 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragment.kt @@ -14,9 +14,8 @@ import androidx.core.view.updatePadding import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentActivity import androidx.recyclerview.widget.LinearLayoutManager -import androidx.recyclerview.widget.RecyclerView import com.google.android.material.divider.MaterialDividerItemDecoration -import org.yuzu.yuzu_emu.R +import org.yuzu.yuzu_emu.databinding.FragmentSettingsBinding import org.yuzu.yuzu_emu.features.settings.model.Setting import org.yuzu.yuzu_emu.features.settings.model.Settings import org.yuzu.yuzu_emu.features.settings.model.view.SettingsItem @@ -26,9 +25,10 @@ class SettingsFragment : Fragment(), SettingsFragmentView { private val presenter = SettingsFragmentPresenter(this) private var activityView: SettingsActivityView? = null - private var adapter: SettingsAdapter? = null + private var settingsAdapter: SettingsAdapter? = null - private lateinit var recyclerView: RecyclerView + private var _binding: FragmentSettingsBinding? = null + private val binding get() = _binding!! override fun onAttach(context: Context) { super.onAttach(context) @@ -41,7 +41,6 @@ class SettingsFragment : Fragment(), SettingsFragmentView { super.onCreate(savedInstanceState) val menuTag = requireArguments().getString(ARGUMENT_MENU_TAG) val gameId = requireArguments().getString(ARGUMENT_GAME_ID) - adapter = SettingsAdapter(this, requireActivity()) presenter.onCreate(menuTag!!, gameId!!) } @@ -49,18 +48,20 @@ class SettingsFragment : Fragment(), SettingsFragmentView { inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? - ): View? { - return inflater.inflate(R.layout.fragment_settings, container, false) + ): View { + _binding = FragmentSettingsBinding.inflate(layoutInflater) + return binding.root } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - val manager = LinearLayoutManager(activity) - recyclerView = view.findViewById(R.id.list_settings) - recyclerView.adapter = adapter - recyclerView.layoutManager = manager + settingsAdapter = SettingsAdapter(this, requireActivity()) val dividerDecoration = MaterialDividerItemDecoration(requireContext(), LinearLayoutManager.VERTICAL) dividerDecoration.isLastItemDecorated = false - recyclerView.addItemDecoration(dividerDecoration) + binding.listSettings.apply { + adapter = settingsAdapter + layoutManager = LinearLayoutManager(activity) + addItemDecoration(dividerDecoration) + } val activity = activity as SettingsActivityView? presenter.onViewCreated(activity!!.settings) @@ -70,8 +71,8 @@ class SettingsFragment : Fragment(), SettingsFragmentView { override fun onDetach() { super.onDetach() activityView = null - if (adapter != null) { - adapter!!.closeDialog() + if (settingsAdapter != null) { + settingsAdapter!!.closeDialog() } } @@ -86,7 +87,7 @@ class SettingsFragment : Fragment(), SettingsFragmentView { } override fun showSettingsList(settingsList: ArrayList<SettingsItem>) { - adapter!!.setSettings(settingsList) + settingsAdapter!!.setSettings(settingsList) } override fun loadDefaultSettings() { @@ -114,7 +115,7 @@ class SettingsFragment : Fragment(), SettingsFragmentView { } private fun setInsets() { - ViewCompat.setOnApplyWindowInsetsListener(recyclerView) { view: View, windowInsets: WindowInsetsCompat -> + ViewCompat.setOnApplyWindowInsetsListener(binding.listSettings) { view: View, windowInsets: WindowInsetsCompat -> val insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()) view.updatePadding(bottom = insets.bottom) windowInsets |