diff --git a/src/openrct2-ui/UiContext.cpp b/src/openrct2-ui/UiContext.cpp index fe08540174..da0e0fd590 100644 --- a/src/openrct2-ui/UiContext.cpp +++ b/src/openrct2-ui/UiContext.cpp @@ -29,6 +29,8 @@ #include #include #include +#include +#include #include #include #include @@ -123,6 +125,8 @@ public: void Draw(rct_drawpixelinfo * dpi) override { + auto bgColour = theme_get_colour(WC_CHAT, 0); + chat_draw(dpi, bgColour); _inGameConsole.Draw(dpi); } diff --git a/src/openrct2-ui/WindowManager.cpp b/src/openrct2-ui/WindowManager.cpp index d869edffbd..1625f38692 100644 --- a/src/openrct2-ui/WindowManager.cpp +++ b/src/openrct2-ui/WindowManager.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -33,6 +34,7 @@ class WindowManager final : public IWindowManager public: void Init() override { + theme_manager_initialise(); window_guest_list_init_vars(); window_new_ride_init_vars(); } diff --git a/src/openrct2/Context.cpp b/src/openrct2/Context.cpp index 741ee0652d..6bdd7eb6d0 100644 --- a/src/openrct2/Context.cpp +++ b/src/openrct2/Context.cpp @@ -64,7 +64,6 @@ #include "Input.h" #include "interface/Chat.h" #include "interface/InteractiveConsole.h" -#include "interface/themes.h" #include "interface/Viewport.h" #include "Intro.h" #include "localisation/Date.h" @@ -424,7 +423,6 @@ namespace OpenRCT2 http_init(); network_set_env(_env); chat_init(); - theme_manager_initialise(); CopyOriginalUserFilesOver(); if (!gOpenRCT2NoGraphics) diff --git a/src/openrct2/interface/Chat.cpp b/src/openrct2/interface/Chat.cpp index 76b20693d4..f52178e60d 100644 --- a/src/openrct2/interface/Chat.cpp +++ b/src/openrct2/interface/Chat.cpp @@ -19,7 +19,6 @@ #include "../audio/AudioMixer.h" #include "../Context.h" #include "../drawing/Drawing.h" -#include "../interface/themes.h" #include "../localisation/Localisation.h" #include "../network/network.h" #include "../platform/platform.h" @@ -77,7 +76,7 @@ void chat_update() _chatCaretTicks = (_chatCaretTicks + 1) % 30; } -void chat_draw(rct_drawpixelinfo * dpi) +void chat_draw(rct_drawpixelinfo * dpi, uint8 chatBackgroundColor) { if (network_get_mode() == NETWORK_MODE_NONE || network_get_status() != NETWORK_STATUS_CONNECTED || network_get_authstatus() != NETWORK_AUTH_OK) { gChatOpen = false; @@ -94,7 +93,6 @@ void chat_draw(rct_drawpixelinfo * dpi) char* lineCh = lineBuffer; char* inputLine = _chatCurrentLine; sint32 inputLineHeight = 10; - uint8 chatBackgroundColor = theme_get_colour(WC_CHAT, 0); // Draw chat window if (gChatOpen) { diff --git a/src/openrct2/interface/Chat.h b/src/openrct2/interface/Chat.h index 695b2b06ed..4339b35f43 100644 --- a/src/openrct2/interface/Chat.h +++ b/src/openrct2/interface/Chat.h @@ -41,7 +41,7 @@ void chat_toggle(); void chat_init(); void chat_update(); -void chat_draw(rct_drawpixelinfo * dpi); +void chat_draw(rct_drawpixelinfo * dpi, uint8 chatBackgroundColour); void chat_history_add(const char *src); void chat_input(CHAT_INPUT input); diff --git a/src/openrct2/interface/InteractiveConsole.cpp b/src/openrct2/interface/InteractiveConsole.cpp index 74e3e6ba58..a1b06e8920 100644 --- a/src/openrct2/interface/InteractiveConsole.cpp +++ b/src/openrct2/interface/InteractiveConsole.cpp @@ -31,7 +31,6 @@ #include "../EditorObjectSelectionSession.h" #include "../Game.h" #include "../interface/Colour.h" -#include "../interface/themes.h" #include "../localisation/Localisation.h" #include "../localisation/User.h" #include "../management/Finance.h" diff --git a/src/openrct2/paint/Painter.cpp b/src/openrct2/paint/Painter.cpp index d4c48bc764..15443c1217 100644 --- a/src/openrct2/paint/Painter.cpp +++ b/src/openrct2/paint/Painter.cpp @@ -51,7 +51,6 @@ void Painter::Paint(IDrawingEngine& de) de.PaintWindows(); update_palette_effects(); - chat_draw(dpi); _uiContext->Draw(dpi); if ((gScreenFlags & SCREEN_FLAGS_TITLE_DEMO) && !title_should_hide_version_info())