Implemented auto-iconification on X11.

Fixes #531.
This commit is contained in:
Camilla Berglund 2015-06-15 15:25:31 +02:00
parent e049190ff1
commit b15eaeda16
2 changed files with 10 additions and 0 deletions

View File

@ -77,6 +77,7 @@ GLFW bundles a number of dependencies in the `deps/` directory.
- [X11] Bugfix: Character input via XIM did not work in many cases - [X11] Bugfix: Character input via XIM did not work in many cases
- [X11] Bugfix: No fallback existed for missing `_NET_ACTIVE_WINDOW` support - [X11] Bugfix: No fallback existed for missing `_NET_ACTIVE_WINDOW` support
- [X11] Bugfix: Some significant window focus events were ignored - [X11] Bugfix: Some significant window focus events were ignored
- [X11] Bugfix: Auto-iconification of full screen windows was not implemented
- [WGL] Removed `GLFW_USE_DWM_SWAP_INTERVAL` compile-time option - [WGL] Removed `GLFW_USE_DWM_SWAP_INTERVAL` compile-time option
- [WGL] Bugfix: Swap interval was ignored when DWM was enabled - [WGL] Bugfix: Swap interval was ignored when DWM was enabled
- [GLX] Added dependency on `libdl` on systems where it provides `dlopen` - [GLX] Added dependency on `libdl` on systems where it provides `dlopen`

View File

@ -1234,6 +1234,9 @@ static void processEvent(XEvent *event)
if (window->cursorMode == GLFW_CURSOR_DISABLED) if (window->cursorMode == GLFW_CURSOR_DISABLED)
disableCursor(window); disableCursor(window);
if (window->monitor && window->autoIconify)
enterFullscreenMode(window);
_glfwInputWindowFocus(window, GL_TRUE); _glfwInputWindowFocus(window, GL_TRUE);
return; return;
} }
@ -1254,6 +1257,12 @@ static void processEvent(XEvent *event)
if (window->cursorMode == GLFW_CURSOR_DISABLED) if (window->cursorMode == GLFW_CURSOR_DISABLED)
restoreCursor(window); restoreCursor(window);
if (window->monitor && window->autoIconify)
{
_glfwPlatformIconifyWindow(window);
leaveFullscreenMode(window);
}
_glfwInputWindowFocus(window, GL_FALSE); _glfwInputWindowFocus(window, GL_FALSE);
return; return;
} }