diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingControlAdapter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingControlAdapter.kt index 1c82616726..963be36d48 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingControlAdapter.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingControlAdapter.kt @@ -4,12 +4,16 @@ package org.dolphinemu.dolphinemu.features.input.ui import android.view.LayoutInflater import android.view.ViewGroup +import androidx.lifecycle.Lifecycle import androidx.recyclerview.widget.RecyclerView import org.dolphinemu.dolphinemu.databinding.ListItemAdvancedMappingControlBinding import java.util.function.Consumer -class AdvancedMappingControlAdapter(private val onClickCallback: Consumer) : - RecyclerView.Adapter() { +class AdvancedMappingControlAdapter( + private val parentLifecycle: Lifecycle, + private val onClickCallback: Consumer +) : RecyclerView.Adapter() { + private var controls = emptyArray() override fun onCreateViewHolder( @@ -18,7 +22,7 @@ class AdvancedMappingControlAdapter(private val onClickCallback: Consumer -) : RecyclerView.ViewHolder(binding.root) { +) : LifecycleViewHolder(binding.root, parentLifecycle) { + private lateinit var name: String init { diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingDialog.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingDialog.kt index 7d1c83a217..e05de10105 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingDialog.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingDialog.kt @@ -38,8 +38,9 @@ class AdvancedMappingDialog( ArrayAdapter(context, android.R.layout.simple_spinner_dropdown_item, devices) binding.dropdownDevice.setAdapter(deviceAdapter) - controlAdapter = - AdvancedMappingControlAdapter { control: String -> onControlClicked(control) } + controlAdapter = AdvancedMappingControlAdapter(lifecycle) { + control: String -> onControlClicked(control) + } binding.listControl.adapter = controlAdapter binding.listControl.layoutManager = LinearLayoutManager(context)