GLFW 3.2 is available for download. It adds support for Vulkan surface creation, window mode switching, window maximization, window input focus control, window size and aspect ratio limits, human-readable key names, window icons, joystick connection events, XInput and DirectInput joystick input, event waiting with timeout, 64-bit integer raw timer, context-less window creation, error-less contexts via GL_KHR_no_error
(where available), run-time context creation API selection, Windows 8.1 per-monitor DPI and the CMake config-file package system, adds simpler build-time configuration, improved documentation and fixes for a large number of bugs that together affect all supported platforms.
- Added
glfwVulkanSupported
,glfwGetRequiredInstanceExtensions
,glfwGetInstanceProcAddress
,glfwGetPhysicalDevicePresentationSupport
andglfwCreateWindowSurface
for platform independent Vulkan support - Added
glfwSetWindowMonitor
for switching between windowed and full screen modes and updating the monitor and desired video mode of full screen windows - Added
glfwMaximizeWindow
andGLFW_MAXIMIZED
for window maximization - Added
glfwFocusWindow
for giving windows input focus - Added
glfwSetWindowSizeLimits
andglfwSetWindowAspectRatio
for setting absolute and relative window size limits - Added
glfwGetKeyName
for querying the layout-specific name of printable keys - Added
glfwWaitEventsTimeout
for waiting for events for a set amount of time - Added
glfwSetWindowIcon
for setting the icon of a window - Added
glfwGetTimerValue
andglfwGetTimerFrequency
for raw timer access - Added
glfwSetJoystickCallback
andGLFWjoystickfun
for joystick connection and disconnection events - Added
GLFW_NO_API
for creating window without contexts - Added
GLFW_INCLUDE_VULKAN
for including the Vulkan header - Added
GLFW_CONTEXT_CREATION_API
,GLFW_NATIVE_CONTEXT_API
andGLFW_EGL_CONTEXT_API
for run-time context creation API selection - Added
GLFW_CONTEXT_NO_ERROR
context hint forGL_KHR_no_error
support - Added
GLFW_TRUE
andGLFW_FALSE
as client API independent boolean values - Added icons to examples on Windows and OS X
- Relaxed rules for native access header macros
- Removed dependency on external OpenGL or OpenGL ES headers
- Removed
_GLFW_USE_OPENGL
,_GLFW_USE_GLESV1
,_GLFW_USE_GLESV2
,_GLFW_WGL
,_GLFW_NSGL
,_GLFW_GLX
and_GLFW_EGL
configuration macros - [Win32] Added support for Windows 8.1 per-monitor DPI
- [Win32] Replaced winmm with XInput and DirectInput for joystick input
- [Win32] Bugfix: Window creation would segfault if video mode setting required the system to be restarted
- [Win32] Bugfix: MinGW import library lacked the
lib
prefix - [Win32] Bugfix: Monitor connection and disconnection events were not reported when no windows existed
- [Win32] Bugfix: Activating or deactivating displays in software did not trigger monitor callback
- [Win32] Bugfix: No monitors were listed on headless and VMware guest systems
- [Win32] Bugfix: Pressing Ctrl+Pause would report
GLFW_KEY_UNKNOWN
- [Win32] Bugfix: Window size events would be reported in wrong order when restoring a full screen window
- [Cocoa] Made joystick polling more efficient
- [Cocoa] Removed support for OS X 10.6
- [Cocoa] Bugfix: Full screen windows on secondary monitors were mispositioned
- [Cocoa] Bugfix: Connecting a joystick that reports no name would segfault
- [Cocoa] Bugfix: Modifier flags cache was not updated when window became key
- [Cocoa] Bugfix: Dead key character composition did not work
- [Cocoa] Bugfix: The CGL context was not released until the autorelease pool was drained by another function
- [X11] Bugfix: Monitor connection and disconnection events were not reported
- [X11] Bugfix: Decoding of UTF-8 text from XIM could continue past the end
- [X11] Bugfix: An XKB structure was leaked during
glfwInit
- [X11] Bugfix: XInput2
XI_Motion
events interfered with the Steam overlay - [POSIX] Bugfix: An unrelated TLS key could be deleted by
glfwTerminate
- [Linux] Made joystick polling more efficient
- [WGL] Changed extension loading to only be performed once
- [WGL] Removed dependency on external WGL headers
- [GLX] Added
glfwGetGLXWindow
to query theGLXWindow
of a window - [GLX] Replaced legacy drawable with
GLXWindow
- [GLX] Removed dependency on external GLX headers
- [GLX] Bugfix: NetBSD does not provide
libGL.so.1
- [EGL] Added
_GLFW_USE_EGLPLATFORM_H
configuration macro for controlling whether to use an existingEGL/eglplatform.h
header - [EGL] Added and documented test for if the context is current on the calling thread during buffer swap
- [EGL] Removed dependency on external EGL headers