summaryrefslogtreecommitdiff
path: root/Source/Android/app/src
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2025-05-17 09:33:57 +0200
committerJosJuice <josjuice@gmail.com>2025-06-07 10:20:19 +0200
commit0dd601577d20140b78fe2fddf0382d91ec97eeff (patch)
tree1ab488b13760033be7953738f9032ae3e71262d5 /Source/Android/app/src
parentcf7b141eb9d2651b20515f3d0ef5280ee1e97b6c (diff)
Android: Set parent when inflating RecyclerView.ViewHolders
This makes sure view holders get proper widths when they use layout_width="match_parent". This becomes quite noticeable for AdvancedMappingControlAdapter in the next commit, but I'm also making the change for other adapters while I'm at it.
Diffstat (limited to 'Source/Android/app/src')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.kt3
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/ui/CheatsAdapter.kt6
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/AdvancedMappingControlAdapter.kt2
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/riivolution/ui/RiivolutionAdapter.kt2
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsAdapter.kt41
5 files changed, 23 insertions, 31 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.kt
index c1ef9c2b8f..dbcfdd42e2 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.kt
@@ -37,7 +37,8 @@ class GameAdapter : RecyclerView.Adapter<GameViewHolder>(),
* @return The created ViewHolder with references to all the child view's members.
*/
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): GameViewHolder {
- val binding = CardGameBinding.inflate(LayoutInflater.from(parent.context))
+ val inflater = LayoutInflater.from(parent.context)
+ val binding = CardGameBinding.inflate(inflater, parent, false)
binding.root.apply {
setOnClickListener(this@GameAdapter)
setOnLongClickListener(this@GameAdapter)
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/ui/CheatsAdapter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/ui/CheatsAdapter.kt
index c75330375d..732555ea32 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/ui/CheatsAdapter.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/ui/CheatsAdapter.kt
@@ -43,17 +43,17 @@ class CheatsAdapter(
val inflater = LayoutInflater.from(parent.context)
return when (viewType) {
CheatItem.TYPE_CHEAT -> {
- val listItemCheatBinding = ListItemCheatBinding.inflate(inflater)
+ val listItemCheatBinding = ListItemCheatBinding.inflate(inflater, parent, false)
addViewListeners(listItemCheatBinding.getRoot())
CheatViewHolder(listItemCheatBinding)
}
CheatItem.TYPE_HEADER -> {
- val listItemHeaderBinding = ListItemHeaderBinding.inflate(inflater)
+ val listItemHeaderBinding = ListItemHeaderBinding.inflate(inflater, parent, false)
addViewListeners(listItemHeaderBinding.root)
HeaderViewHolder(listItemHeaderBinding)
}
CheatItem.TYPE_ACTION -> {
- val listItemSubmenuBinding = ListItemSubmenuBinding.inflate(inflater)
+ val listItemSubmenuBinding = ListItemSubmenuBinding.inflate(inflater, parent, false)
addViewListeners(listItemSubmenuBinding.root)
ActionViewHolder(listItemSubmenuBinding)
}
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 8919f22658..cb20809266 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
@@ -23,7 +23,7 @@ class AdvancedMappingControlAdapter(
viewType: Int
): AdvancedMappingControlViewHolder {
val inflater = LayoutInflater.from(parent.context)
- val binding = ListItemAdvancedMappingControlBinding.inflate(inflater)
+ val binding = ListItemAdvancedMappingControlBinding.inflate(inflater, parent, false)
return AdvancedMappingControlViewHolder(binding, parentLifecycle, isInput, onClickCallback)
}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/riivolution/ui/RiivolutionAdapter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/riivolution/ui/RiivolutionAdapter.kt
index 9cae2f0bae..d64e10a111 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/riivolution/ui/RiivolutionAdapter.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/riivolution/ui/RiivolutionAdapter.kt
@@ -32,7 +32,7 @@ class RiivolutionAdapter(private val context: Context, private val patches: Riiv
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RiivolutionViewHolder {
val inflater = LayoutInflater.from(parent.context)
- val binding = ListItemRiivolutionBinding.inflate(inflater)
+ val binding = ListItemRiivolutionBinding.inflate(inflater, parent, false)
return RiivolutionViewHolder(binding.root, binding)
}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsAdapter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsAdapter.kt
index 1c230f4447..3ce937e6ab 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsAdapter.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsAdapter.kt
@@ -68,57 +68,48 @@ class SettingsAdapter(
val inflater = LayoutInflater.from(parent.context)
return when (viewType) {
SettingsItem.TYPE_HEADER -> HeaderViewHolder(
- ListItemHeaderBinding.inflate(inflater),
+ ListItemHeaderBinding.inflate(inflater, parent, false),
this
)
SettingsItem.TYPE_SWITCH -> SwitchSettingViewHolder(
- ListItemSettingSwitchBinding.inflate(inflater),
+ ListItemSettingSwitchBinding.inflate(inflater, parent, false),
this
)
SettingsItem.TYPE_STRING_SINGLE_CHOICE,
SettingsItem.TYPE_SINGLE_CHOICE_DYNAMIC_DESCRIPTIONS,
SettingsItem.TYPE_SINGLE_CHOICE -> SingleChoiceViewHolder(
- ListItemSettingBinding.inflate(inflater),
+ ListItemSettingBinding.inflate(inflater, parent, false),
this
)
SettingsItem.TYPE_SLIDER -> SliderViewHolder(
- ListItemSettingBinding.inflate(
- inflater
- ), this, context
+ ListItemSettingBinding.inflate(inflater, parent, false),
+ this,
+ context
)
SettingsItem.TYPE_SUBMENU -> SubmenuViewHolder(
- ListItemSubmenuBinding.inflate(
- inflater
- ), this
+ ListItemSubmenuBinding.inflate(inflater, parent, false),
+ this
)
SettingsItem.TYPE_INPUT_MAPPING_CONTROL -> InputMappingControlSettingViewHolder(
- ListItemMappingBinding.inflate(inflater),
+ ListItemMappingBinding.inflate(inflater, parent, false),
this
)
SettingsItem.TYPE_FILE_PICKER -> FilePickerViewHolder(
- ListItemSettingBinding.inflate(
- inflater
- ), this
+ ListItemSettingBinding.inflate(inflater, parent, false),
+ this
)
SettingsItem.TYPE_RUN_RUNNABLE -> RunRunnableViewHolder(
- ListItemSettingBinding.inflate(
- inflater
- ), this, context
+ ListItemSettingBinding.inflate(inflater, parent, false),
+ this, context
)
SettingsItem.TYPE_STRING -> InputStringSettingViewHolder(
- ListItemSettingBinding.inflate(
- inflater
- ), this
+ ListItemSettingBinding.inflate(inflater, parent, false), this
)
SettingsItem.TYPE_HYPERLINK_HEADER -> HeaderHyperLinkViewHolder(
- ListItemHeaderBinding.inflate(
- inflater
- ), this
+ ListItemHeaderBinding.inflate(inflater, parent, false), this
)
SettingsItem.TYPE_DATETIME_CHOICE -> DateTimeSettingViewHolder(
- ListItemSettingBinding.inflate(
- inflater
- ), this
+ ListItemSettingBinding.inflate(inflater, parent, false), this
)
else -> throw IllegalArgumentException("Invalid view type: $viewType")
}