From 0572930c70dfe0858b491c11eece2e4fb77425d3 Mon Sep 17 00:00:00 2001 From: David Griswold Date: Mon, 2 Feb 2026 10:38:23 +0300 Subject: [PATCH] update odin 2 bugfix to handle other languages --- .../java/org/citra/citra_emu/display/SecondaryDisplay.kt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/android/app/src/main/java/org/citra/citra_emu/display/SecondaryDisplay.kt b/src/android/app/src/main/java/org/citra/citra_emu/display/SecondaryDisplay.kt index e5b0db0c5..07b1cb403 100644 --- a/src/android/app/src/main/java/org/citra/citra_emu/display/SecondaryDisplay.kt +++ b/src/android/app/src/main/java/org/citra/citra_emu/display/SecondaryDisplay.kt @@ -91,8 +91,12 @@ class SecondaryDisplay(val context: Context) : DisplayManager.DisplayListener { currentDisplayId = preferredDisplayId displays.first { it.displayId == preferredDisplayId } } else { - // prioritize a display without the word "Built" in name if it exists - currentDisplayId = displays.firstOrNull{!it.name.contains("Built",true)}?.displayId ?: displays[0].displayId + val dm = context.getSystemService(Context.DISPLAY_SERVICE) as DisplayManager + val default = dm.displays.first {it.displayId == Display.DEFAULT_DISPLAY} + // prioritize displays that have a different name from the default display, as + // some devices such as the Odin 2 create a permanent virtual display with the same + // name as the default display that should be skipped in most cases + currentDisplayId = displays.firstOrNull{it.name != default.name && !it.name.contains("Built",true)}?.displayId ?: displays[0].displayId displays.first{ it.displayId == currentDisplayId } }