From 4ab1c16455efcce48ba7ff4c92dc1030c9700208 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Fri, 18 Apr 2025 21:30:37 +0200 Subject: Avoid to recall `newGameCallback()` if not in landing page --- pkg/ui/views/play_keymap.go | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/pkg/ui/views/play_keymap.go b/pkg/ui/views/play_keymap.go index 200f427..fa3caec 100644 --- a/pkg/ui/views/play_keymap.go +++ b/pkg/ui/views/play_keymap.go @@ -67,14 +67,20 @@ func (m PlayModel) handleKeyPress(msg tea.KeyMsg) (tea.Model, tea.Cmd) { switch { case key.Matches(msg, m.keys.EnterNewGame): - m.page = InsertCodePage - return m, cmd + if m.page == LandingPage { + m.page = InsertCodePage + return m, cmd + } case key.Matches(msg, m.keys.StartNewGame): - m.page = StartGamePage - if !m.isLoading { - m.isLoading = true - return m, m.newGameCallback() + if m.page == LandingPage { + m.page = StartGamePage + if !m.isLoading { + m.isLoading = true + return m, m.newGameCallback() + } + + return m, cmd } case key.Matches(msg, m.keys.RestoreGame): -- cgit v1.2.3-18-g5258