diff --git a/Source/Engine/Engine/Screen.cpp b/Source/Engine/Engine/Screen.cpp index 48593b3fa..71f144214 100644 --- a/Source/Engine/Engine/Screen.cpp +++ b/Source/Engine/Engine/Screen.cpp @@ -271,7 +271,11 @@ void ScreenService::Draw() auto win = Engine::MainWindow; if (win) { - win->SetClientSize(Size.GetValue()); + Float2 sizeDelta = Size.GetValue() - win->GetClientSize(); + Rectangle newBiunds(win->GetClientPosition(), Size.GetValue()); + if (!win->IsMaximized()) + newBiunds -= sizeDelta * 0.5f; + win->SetClientBounds(newBiunds); } Size.Reset();