From 76d17e6a8ee54f64b12b0f4f11be48ec172b00a7 Mon Sep 17 00:00:00 2001 From: thankyouverycool <66646555+thankyouverycool@users.noreply.github.com> Date: Sun, 16 Apr 2023 18:35:26 -0400 Subject: [PATCH] MasterWord: Rectify resizing game window Previously resizing the window did not take into account the height of the status bar. The board now fixes its size on reset and allows the Window to auto shrink to the perfect dimensions. --- Userland/Games/MasterWord/MasterWord.gml | 5 ++--- Userland/Games/MasterWord/WordGame.cpp | 1 + Userland/Games/MasterWord/main.cpp | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/Userland/Games/MasterWord/MasterWord.gml b/Userland/Games/MasterWord/MasterWord.gml index 4e2c44e37d..d6d496d5ec 100644 --- a/Userland/Games/MasterWord/MasterWord.gml +++ b/Userland/Games/MasterWord/MasterWord.gml @@ -1,7 +1,6 @@ @GUI::Widget { - layout: @GUI::VerticalBoxLayout { - spacing: 0 - } + fill_with_background_color: true + layout: @GUI::VerticalBoxLayout {} @MasterWord::WordGame { name: "word_game" diff --git a/Userland/Games/MasterWord/WordGame.cpp b/Userland/Games/MasterWord/WordGame.cpp index 99036158f2..3192faae80 100644 --- a/Userland/Games/MasterWord/WordGame.cpp +++ b/Userland/Games/MasterWord/WordGame.cpp @@ -48,6 +48,7 @@ void WordGame::reset() reset(); } } + set_fixed_size(game_size()); clear_message(); update(); } diff --git a/Userland/Games/MasterWord/main.cpp b/Userland/Games/MasterWord/main.cpp index 970a497c0b..c5c9dde320 100644 --- a/Userland/Games/MasterWord/main.cpp +++ b/Userland/Games/MasterWord/main.cpp @@ -45,6 +45,7 @@ ErrorOr serenity_main(Main::Arguments arguments) window->set_double_buffering_enabled(false); window->set_title("MasterWord"); window->set_resizable(false); + window->set_auto_shrink(true); auto main_widget = TRY(window->set_main_widget()); TRY(main_widget->load_from_gml(master_word_gml)); @@ -57,7 +58,6 @@ ErrorOr serenity_main(Main::Arguments arguments) auto shortest_word = game.shortest_word(); auto longest_word = game.longest_word(); - window->resize(game.game_size()); window->set_focused_widget(&game); auto game_menu = TRY(window->try_add_menu("&Game")); @@ -86,7 +86,6 @@ ErrorOr serenity_main(Main::Arguments arguments) word_length = maybe_word_length.value(); Config::write_i32("MasterWord"sv, ""sv, "word_length"sv, word_length); game.set_word_length(word_length); - window->resize(game.game_size()); } }))); TRY(settings_menu->try_add_action(GUI::Action::create("Set &Number Of Guesses", [&](auto&) { @@ -102,7 +101,6 @@ ErrorOr serenity_main(Main::Arguments arguments) max_guesses = maybe_max_guesses.value(); Config::write_i32("MasterWord"sv, ""sv, "max_guesses"sv, max_guesses); game.set_max_guesses(max_guesses); - window->resize(game.game_size()); } })));