Cocoa: Fix compilation error on OS X 10.8

The occlusion state parts of NSWindow are OS X 10.9+ only but we still
(technically) support building for only 10.8.

Fixes #2161
This commit is contained in:
Camilla Löwy 2023-12-05 20:59:42 +01:00
parent 0ede5f58c6
commit 5e4496cb42
2 changed files with 11 additions and 4 deletions

View File

@ -273,6 +273,8 @@ information on what to include when reporting a bug.
application (#2110) application (#2110)
- [Cocoa] Bugfix: The Vulkan loader was not loaded from the `Frameworks` bundle - [Cocoa] Bugfix: The Vulkan loader was not loaded from the `Frameworks` bundle
subdirectory (#2113,#2120) subdirectory (#2113,#2120)
- [Cocoa] Bugfix: Compilation failed on OS X 10.8 due to unconditional use of 10.9+
symbols (#2161)
- [X11] Bugfix: The CMake files did not check for the XInput headers (#1480) - [X11] Bugfix: The CMake files did not check for the XInput headers (#1480)
- [X11] Bugfix: Key names were not updated when the keyboard layout changed - [X11] Bugfix: Key names were not updated when the keyboard layout changed
(#1462,#1528) (#1462,#1528)

View File

@ -311,10 +311,15 @@ static const NSRange kEmptyRange = { NSNotFound, 0 };
- (void)windowDidChangeOcclusionState:(NSNotification* )notification - (void)windowDidChangeOcclusionState:(NSNotification* )notification
{ {
if ([window->ns.object occlusionState] & NSWindowOcclusionStateVisible) #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1090
window->ns.occluded = GLFW_FALSE; if ([window->ns.object respondsToSelector:@selector(occlusionState)])
else {
window->ns.occluded = GLFW_TRUE; if ([window->ns.object occlusionState] & NSWindowOcclusionStateVisible)
window->ns.occluded = GLFW_FALSE;
else
window->ns.occluded = GLFW_TRUE;
}
#endif
} }
@end @end