From 63c81f98c256ae4014e104bbf9ae888c5d37d2e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20Th=E1=BA=BF=20H=C6=B0ng?= Date: Wed, 1 Oct 2025 10:15:07 +0700 Subject: [PATCH] feat(game): keyboard input handling --- app/src/main/java/org/vibecoders/moongazer/Game.java | 5 ----- .../java/org/vibecoders/moongazer/scenes/Transition.java | 4 ++++ 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/vibecoders/moongazer/Game.java b/app/src/main/java/org/vibecoders/moongazer/Game.java index eb0a46d..ab72311 100644 --- a/app/src/main/java/org/vibecoders/moongazer/Game.java +++ b/app/src/main/java/org/vibecoders/moongazer/Game.java @@ -83,11 +83,6 @@ public class Game extends ApplicationAdapter { scene.root.setVisible(false); } } - - if (!currentScene.root.isVisible()) { - log.trace("Showing current scene: {}", currentScene.getClass().getSimpleName()); - currentScene.root.setVisible(true); - } batch.begin(); currentScene.render(batch); diff --git a/app/src/main/java/org/vibecoders/moongazer/scenes/Transition.java b/app/src/main/java/org/vibecoders/moongazer/scenes/Transition.java index 252c538..c490921 100644 --- a/app/src/main/java/org/vibecoders/moongazer/scenes/Transition.java +++ b/app/src/main/java/org/vibecoders/moongazer/scenes/Transition.java @@ -44,6 +44,10 @@ public class Transition extends Scene { log.trace("Transition complete to state: {}", targetState); game.state = targetState; game.transition = null; + // Set keyboard focus to the new scene's root + from.root.setVisible(false); + to.root.setVisible(true); + game.stage.setKeyboardFocus(to.root); return; } var fromOpacity = 1 - toOpacity;