This commit is contained in:
IntellectualKitty 2017-06-07 18:13:23 +00:00 committed by GitHub
commit 144b692330

View File

@ -1272,12 +1272,30 @@ void _glfwPlatformMaximizeWindow(_GLFWwindow* window)
void _glfwPlatformShowWindow(_GLFWwindow* window) void _glfwPlatformShowWindow(_GLFWwindow* window)
{ {
[window->ns.object orderFront:nil]; if (window->monitor)
{
[window->ns.object makeKeyAndOrderFront:window->ns.object];
NSApplicationPresentationOptions options =
NSApplicationPresentationHideDock +
NSApplicationPresentationHideMenuBar +
NSApplicationPresentationDisableProcessSwitching +
NSApplicationPresentationDisableHideApplication;
[NSApp setPresentationOptions:options];
}
else
{
[window->ns.object orderFront:window->ns.object];
NSApplicationPresentationOptions options =
NSApplicationPresentationDefault;
[NSApp setPresentationOptions:options];
}
} }
void _glfwPlatformHideWindow(_GLFWwindow* window) void _glfwPlatformHideWindow(_GLFWwindow* window)
{ {
[window->ns.object orderOut:nil]; [window->ns.object orderOut:window->ns.object];
} }
void _glfwPlatformRequestWindowAttention(_GLFWwindow* window) void _glfwPlatformRequestWindowAttention(_GLFWwindow* window)
@ -1293,7 +1311,23 @@ void _glfwPlatformFocusWindow(_GLFWwindow* window)
// should probably not be done every time any window is shown // should probably not be done every time any window is shown
[NSApp activateIgnoringOtherApps:YES]; [NSApp activateIgnoringOtherApps:YES];
[window->ns.object makeKeyAndOrderFront:nil]; [window->ns.object makeKeyAndOrderFront:window->ns.object];
if (window->monitor)
{
NSApplicationPresentationOptions options =
NSApplicationPresentationHideDock +
NSApplicationPresentationHideMenuBar +
NSApplicationPresentationDisableProcessSwitching +
NSApplicationPresentationDisableHideApplication;
[NSApp setPresentationOptions:options];
}
else
{
NSApplicationPresentationOptions options =
NSApplicationPresentationDefault;
[NSApp setPresentationOptions:options];
}
} }
void _glfwPlatformSetWindowMonitor(_GLFWwindow* window, void _glfwPlatformSetWindowMonitor(_GLFWwindow* window,
@ -1395,6 +1429,22 @@ void _glfwPlatformSetWindowMonitor(_GLFWwindow* window,
[window->ns.object setHasShadow:YES]; [window->ns.object setHasShadow:YES];
} }
if (window->monitor)
{
NSApplicationPresentationOptions options =
NSApplicationPresentationHideDock +
NSApplicationPresentationHideMenuBar +
NSApplicationPresentationDisableProcessSwitching +
NSApplicationPresentationDisableHideApplication;
[NSApp setPresentationOptions:options];
}
else
{
NSApplicationPresentationOptions options =
NSApplicationPresentationDefault;
[NSApp setPresentationOptions:options];
}
} }
int _glfwPlatformWindowFocused(_GLFWwindow* window) int _glfwPlatformWindowFocused(_GLFWwindow* window)