Fix fullscreen borderless window on macOS

This commit is contained in:
Wojtek Figat
2025-07-19 16:46:10 +02:00
parent 90551b32bc
commit 892e2e0d1e
4 changed files with 5 additions and 8 deletions

View File

@@ -16,8 +16,6 @@
void LinuxGame::InitMainWindowSettings(CreateWindowSettings& settings)
{
// TODO: restore window size and fullscreen mode from the cached local settings saved after previous session
const auto platformSettings = LinuxPlatformSettings::Get();
auto windowMode = platformSettings->WindowMode;
@@ -50,7 +48,6 @@ void LinuxGame::InitMainWindowSettings(CreateWindowSettings& settings)
settings.HasBorder = windowMode == GameWindowMode::Windowed || windowMode == GameWindowMode::Fullscreen;
settings.AllowMaximize = true;
settings.AllowMinimize = platformSettings->ResizableWindow;
}
bool LinuxGame::Init()

View File

@@ -9,8 +9,6 @@
void MacGame::InitMainWindowSettings(CreateWindowSettings& settings)
{
// TODO: restore window size and fullscreen mode from the cached local settings saved after previous session
const auto platformSettings = MacPlatformSettings::Get();
auto windowMode = platformSettings->WindowMode;
@@ -41,7 +39,6 @@ void MacGame::InitMainWindowSettings(CreateWindowSettings& settings)
settings.HasBorder = windowMode == GameWindowMode::Windowed || windowMode == GameWindowMode::Fullscreen;
settings.AllowMaximize = true;
settings.AllowMinimize = platformSettings->ResizableWindow;
}
#endif

View File

@@ -9,8 +9,6 @@
void WindowsGame::InitMainWindowSettings(CreateWindowSettings& settings)
{
// TODO: restore window size and fullscreen mode from the cached local settings saved after previous session
const auto platformSettings = WindowsPlatformSettings::Get();
auto windowMode = platformSettings->WindowMode;

View File

@@ -715,6 +715,11 @@ MacWindow::MacWindow(const CreateWindowSettings& settings)
styleMask |= NSWindowStyleMaskTitled;
styleMask &= ~NSWindowStyleMaskFullSizeContentView;
}
else
{
styleMask |= NSWindowStyleMaskBorderless;
styleMask &= ~NSWindowStyleMaskTitled;
}
const float screenScale = MacPlatform::ScreenScale;
frame.origin.x /= screenScale;