From 4816d5158eea13acc165dddbd8698c7ca8900a7d Mon Sep 17 00:00:00 2001 From: Charles Lombardo Date: Sun, 2 Apr 2023 18:58:57 -0400 Subject: [PATCH] android: Adjust game icon loading --- .../org/yuzu/yuzu_emu/adapters/GameAdapter.kt | 24 +++++++------------ 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/adapters/GameAdapter.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/adapters/GameAdapter.kt index d4613fa8c..7a0969a55 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/adapters/GameAdapter.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/adapters/GameAdapter.kt @@ -62,21 +62,6 @@ class GameAdapter(private val activity: AppCompatActivity) : RecyclerView.Adapte override fun onBindViewHolder(holder: GameViewHolder, position: Int) { if (isDatasetValid) { if (cursor!!.moveToPosition(position)) { - holder.binding.imageGameScreen.scaleType = ImageView.ScaleType.CENTER_CROP - activity.lifecycleScope.launch { - withContext(Dispatchers.IO) { - val uri = - Uri.parse(cursor!!.getString(GameDatabase.GAME_COLUMN_PATH)).toString() - val bitmap = decodeGameIcon(uri) - withContext(Dispatchers.Main) { - holder.binding.imageGameScreen.load(bitmap) { - error(R.drawable.no_icon) - crossfade(true) - } - } - } - } - // TODO These shouldn't be necessary once the move to a DB-based model is complete. val game = Game( cursor!!.getString(GameDatabase.GAME_COLUMN_TITLE), @@ -88,6 +73,15 @@ class GameAdapter(private val activity: AppCompatActivity) : RecyclerView.Adapte ) holder.game = game + holder.binding.imageGameScreen.scaleType = ImageView.ScaleType.CENTER_CROP + activity.lifecycleScope.launch { + val bitmap = decodeGameIcon(game.path) + holder.binding.imageGameScreen.load(bitmap) { + error(R.drawable.no_icon) + crossfade(true) + } + } + holder.binding.textGameTitle.text = game.title.replace("[\\t\\n\\r]+".toRegex(), " ") holder.binding.textGameCaption.text = game.company