From 7c88c927782ad052300d18250dff94dc4a249083 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Camilla=20L=C3=B6wy?= Date: Tue, 14 Mar 2017 21:21:29 +0100 Subject: [PATCH] Cocoa: Fix window rect on leaving video mode Fixes #748. --- README.md | 2 ++ src/cocoa_window.m | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/README.md b/README.md index eadb2736..5f78926a 100644 --- a/README.md +++ b/README.md @@ -183,6 +183,8 @@ information on what to include when reporting a bug. function on macOS 10.12+ - [Cocoa] Bugfix: Running in AppSandbox would emit warnings (#816,#882) - [Cocoa] Bugfix: Windows created after the first were not cascaded (#195) +- [Cocoa] Bugfix: Leaving video mode with `glfwSetWindowMonitor` would set + incorrect position and size (#748) - [X11] Moved to XI2 `XI_RawMotion` for disable cursor mode motion input (#125) - [EGL] Added support for `EGL_KHR_get_all_proc_addresses` (#871) - [EGL] Bugfix: The test for `EGL_RGB_BUFFER` was invalid diff --git a/src/cocoa_window.m b/src/cocoa_window.m index 657852ab..54333952 100644 --- a/src/cocoa_window.m +++ b/src/cocoa_window.m @@ -1310,6 +1310,10 @@ void _glfwPlatformSetWindowMonitor(_GLFWwindow* window, _glfwInputWindowMonitorChange(window, monitor); + // HACK: Allow the state cached in Cocoa to catch up to reality + // TODO: Solve this in a less terrible way + _glfwPlatformPollEvents(); + const NSUInteger styleMask = getStyleMask(window); [window->ns.object setStyleMask:styleMask]; [window->ns.object makeFirstResponder:window->ns.view];