From 0711e236c093dd6db0dc743233c9ee30ce7c65d3 Mon Sep 17 00:00:00 2001 From: Ivan Vojtko Date: Tue, 1 Sep 2026 08:22:42 +0200 Subject: [PATCH] Update UI helper to not fail on Meta Quest devices (#1516) --- .../java/com/limelight/utils/UiHelper.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/limelight/utils/UiHelper.java b/app/src/main/java/com/limelight/utils/UiHelper.java index f6da70aa2..2fb1ecbbd 100644 --- a/app/src/main/java/com/limelight/utils/UiHelper.java +++ b/app/src/main/java/com/limelight/utils/UiHelper.java @@ -31,13 +31,19 @@ public class UiHelper { private static void setGameModeStatus(Context context, boolean streaming, boolean interruptible) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - GameManager gameManager = context.getSystemService(GameManager.class); + try { + GameManager gameManager = context.getSystemService(GameManager.class); + if (gameManager == null) { + return; // Not supported on this device (e.g., Meta Quest) + } - if (streaming) { - gameManager.setGameState(new GameState(false, interruptible ? GameState.MODE_GAMEPLAY_INTERRUPTIBLE : GameState.MODE_GAMEPLAY_UNINTERRUPTIBLE)); - } - else { - gameManager.setGameState(new GameState(false, GameState.MODE_NONE)); + if (streaming) { + gameManager.setGameState(new GameState(false, interruptible ? GameState.MODE_GAMEPLAY_INTERRUPTIBLE : GameState.MODE_GAMEPLAY_UNINTERRUPTIBLE)); + } else { + gameManager.setGameState(new GameState(false, GameState.MODE_NONE)); + } + } catch (Throwable t) { + // Swallow any failure. Some OEM builds ship partial/incompatible GameManager impls. } } }