GLFW 3.1.2 is available for download. It adds fixes for a large number of bugs that together affect all supported platforms, as well as dynamic loading work that simplifies compilation and linking.
- Made all client API functions dynamically loaded
- Changed minimum required CMake version to 2.8.12
- Replaced GLU with linmath.h in example programs
- Merged all cursor test programs into the
cursorprogram - Removed all mention of GLU in examples, build files and package dependencies
- Bugfix: Initialization failed on headless systems
- Bugfix: The cached current context could get out of sync
- Bugfix:
glfwIconifyWindowdid not restore the original video mode for full screen windows created withGLFW_AUTO_ICONIFY - [Win32] Renamed hybrid GPU override compile-time option to
_GLFW_USE_HYBRID_HPGand added support for AMD PowerXpress systems - [Win32] Bugfix:
glfwGetVideoModesincluded unusable modes on some systems - [Win32] Bugfix:
glfwWaitEventswould return directly for focused windows in disabled cursor mode - [Cocoa] Bugfix: The cached
NSScreenfor a monitor could get out of sync - [Cocoa] Bugfix: The
GLFW_AUTO_ICONIFYwindow hint was ignored - [Cocoa] Bugfix: Resizing a window to its minimum size would segfault
- [Cocoa] Bugfix: Creating or showing a window would make its context current
- [Cocoa] Bugfix: Joysticks connected after
glfwInitwere not detected - [Cocoa] Bugfix: Cursor creation failed unless a window had been created.
- [Cocoa] Bugfix: Window refresh events were not generated by iconification or restoration
- [Cocoa] Bugfix: The primary monitor would get reported as disconnected when entering full screen on a dual-GPU machine with automatic graphics switching
- [Cocoa] Bugfix: The original video modes were not restored when the application was hidden
- [X11] Bugfix:
glfwInitwould segfault on systems without RandR - [X11] Bugfix: The response to
_NET_WM_PINGwas sent to the wrong window - [X11] Bugfix: Character input via XIM did not work in many cases
- [X11] Bugfix: No fallback existed for missing
_NET_ACTIVE_WINDOWsupport - [X11] Bugfix: Some significant window focus events were ignored
- [X11] Bugfix: The
GLFW_AUTO_ICONIFYwindow hint was ignored - [X11] Bugfix: The original video mode was not restored on iconification of full screen windows
- [X11] Bugfix:
GLFW_ARROW_CURSORselected the wrong cursor image - [X11] Bugfix: The
GLFW_DECORATEDhint was not ignored for full screen - [X11] Bugfix:
glfwWaitEventsdid not handleEINTRforselect - [X11] Bugfix:
glfwWaitEventscould return when no events were available - [X11] Bugfix:
XkbGetKeyboardfails on XWayland - [X11] Bugfix: Character input did not work correctly for non-UTF-8 locales
- [X11] Bugfix: Long input sequences generated by IMEs were discarded
- [WGL] Made all WGL functions dynamically loaded
- [WGL] Removed
GLFW_USE_DWM_SWAP_INTERVALcompile-time option - [WGL] Bugfix: Swap interval was ignored when DWM was enabled
- [WGL] Bugfix: Failure to find a pixel format was reported incorrectly
- [GLX] Added dependency on
libdlon systems where it providesdlopen - [GLX] Made all GLX functions dynamically loaded
- [GLX] Removed
_GLFW_HAS_GLXGETPROCADDRESS*and_GLFW_HAS_DLOPENcompile-time options - [GLX] Bugfix: Failure to find a
GLXFBConfigwas reported incorrectly - [EGL] Made all EGL functions dynamically loaded
- [EGL] Bugfix:
glfwGetProcAddressdid not return the addresses of core functions - [EGL] Bugfix: Failure to find an
EGLConfigwas reported incorrectly - [NSGL] Bugfix: Failure to find a pixel format was reported incorrectly