From b1fd7d6d9befbdf628c9160c9f841c386a83e3ee Mon Sep 17 00:00:00 2001 From: Shawn M Date: Wed, 28 Aug 2019 04:36:56 -0400 Subject: [PATCH 1/3] Update glfw to GLFW 3.3 --- examples/libs/glfw/include/GLFW/glfw3.h | 2156 ++++++++++++++--- examples/libs/glfw/include/GLFW/glfw3native.h | 149 +- examples/libs/glfw/lib-vc2010-32/glfw3.lib | Bin 187376 -> 504168 bytes examples/libs/glfw/lib-vc2010-64/glfw3.lib | Bin 291120 -> 643992 bytes 4 files changed, 1892 insertions(+), 413 deletions(-) diff --git a/examples/libs/glfw/include/GLFW/glfw3.h b/examples/libs/glfw/include/GLFW/glfw3.h index f8ca3d61a286..0521d1980123 100644 --- a/examples/libs/glfw/include/GLFW/glfw3.h +++ b/examples/libs/glfw/include/GLFW/glfw3.h @@ -1,9 +1,9 @@ /************************************************************************* - * GLFW 3.2 - www.glfw.org + * GLFW 3.3 - www.glfw.org * A library for OpenGL, window and input *------------------------------------------------------------------------ * Copyright (c) 2002-2006 Marcus Geelnard - * Copyright (c) 2006-2010 Camilla Berglund + * Copyright (c) 2006-2019 Camilla Löwy * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages @@ -47,32 +47,38 @@ extern "C" { * For more information about how to use this file, see @ref build_include. */ /*! @defgroup context Context reference + * @brief Functions and types related to OpenGL and OpenGL ES contexts. * * This is the reference documentation for OpenGL and OpenGL ES context related * functions. For more task-oriented information, see the @ref context_guide. */ /*! @defgroup vulkan Vulkan reference + * @brief Functions and types related to Vulkan. * * This is the reference documentation for Vulkan related functions and types. * For more task-oriented information, see the @ref vulkan_guide. */ /*! @defgroup init Initialization, version and error reference + * @brief Functions and types related to initialization and error handling. * * This is the reference documentation for initialization and termination of * the library, version management and error handling. For more task-oriented * information, see the @ref intro_guide. */ /*! @defgroup input Input reference + * @brief Functions and types related to input handling. * * This is the reference documentation for input related functions and types. * For more task-oriented information, see the @ref input_guide. */ /*! @defgroup monitor Monitor reference + * @brief Functions and types related to monitors. * * This is the reference documentation for monitor related functions and types. * For more task-oriented information, see the @ref monitor_guide. */ /*! @defgroup window Window reference + * @brief Functions and types related to windows. * * This is the reference documentation for window related functions and types, * including creation, deletion and event polling. For more task-oriented @@ -99,6 +105,7 @@ extern "C" { #else #define APIENTRY #endif + #define GLFW_APIENTRY_DEFINED #endif /* APIENTRY */ /* Some Windows OpenGL headers need this. @@ -115,65 +122,98 @@ extern "C" { #define GLFW_CALLBACK_DEFINED #endif /* CALLBACK */ -/* Most Windows GLU headers need wchar_t. - * The OS X OpenGL header blocks the definition of ptrdiff_t by glext.h. +/* Include because most Windows GLU headers need wchar_t and + * the macOS OpenGL header blocks the definition of ptrdiff_t by glext.h. * Include it unconditionally to avoid surprising side-effects. */ #include + +/* Include because it is needed by Vulkan and related functions. + * Include it unconditionally to avoid surprising side-effects. + */ #include -/* Include the chosen client API headers. +/* Include the chosen OpenGL or OpenGL ES headers. */ -#if defined(__APPLE__) - #if defined(GLFW_INCLUDE_GLCOREARB) +#if defined(GLFW_INCLUDE_ES1) + + #include + #if defined(GLFW_INCLUDE_GLEXT) + #include + #endif + +#elif defined(GLFW_INCLUDE_ES2) + + #include + #if defined(GLFW_INCLUDE_GLEXT) + #include + #endif + +#elif defined(GLFW_INCLUDE_ES3) + + #include + #if defined(GLFW_INCLUDE_GLEXT) + #include + #endif + +#elif defined(GLFW_INCLUDE_ES31) + + #include + #if defined(GLFW_INCLUDE_GLEXT) + #include + #endif + +#elif defined(GLFW_INCLUDE_ES32) + + #include + #if defined(GLFW_INCLUDE_GLEXT) + #include + #endif + +#elif defined(GLFW_INCLUDE_GLCOREARB) + + #if defined(__APPLE__) + #include #if defined(GLFW_INCLUDE_GLEXT) #include - #endif - #elif !defined(GLFW_INCLUDE_NONE) + #endif /*GLFW_INCLUDE_GLEXT*/ + + #else /*__APPLE__*/ + + #include + + #endif /*__APPLE__*/ + +#elif !defined(GLFW_INCLUDE_NONE) + + #if defined(__APPLE__) + #if !defined(GLFW_INCLUDE_GLEXT) #define GL_GLEXT_LEGACY #endif #include - #endif - #if defined(GLFW_INCLUDE_GLU) - #include - #endif -#else - #if defined(GLFW_INCLUDE_GLCOREARB) - #include - #elif defined(GLFW_INCLUDE_ES1) - #include - #if defined(GLFW_INCLUDE_GLEXT) - #include - #endif - #elif defined(GLFW_INCLUDE_ES2) - #include - #if defined(GLFW_INCLUDE_GLEXT) - #include - #endif - #elif defined(GLFW_INCLUDE_ES3) - #include - #if defined(GLFW_INCLUDE_GLEXT) - #include - #endif - #elif defined(GLFW_INCLUDE_ES31) - #include - #if defined(GLFW_INCLUDE_GLEXT) - #include + #if defined(GLFW_INCLUDE_GLU) + #include #endif - #elif defined(GLFW_INCLUDE_VULKAN) - #include - #elif !defined(GLFW_INCLUDE_NONE) + + #else /*__APPLE__*/ + #include #if defined(GLFW_INCLUDE_GLEXT) #include #endif - #endif - #if defined(GLFW_INCLUDE_GLU) - #include - #endif -#endif + #if defined(GLFW_INCLUDE_GLU) + #include + #endif + + #endif /*__APPLE__*/ + +#endif /* OpenGL and OpenGL ES headers */ + +#if defined(GLFW_INCLUDE_VULKAN) + #include +#endif /* Vulkan header */ #if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL) /* GLFW_DLL must be defined by applications that are linking against the DLL @@ -219,7 +259,7 @@ extern "C" { * backward-compatible. * @ingroup init */ -#define GLFW_VERSION_MINOR 2 +#define GLFW_VERSION_MINOR 3 /*! @brief The revision number of the GLFW library. * * This is incremented when a bug fix release is made that does not contain any @@ -229,23 +269,24 @@ extern "C" { #define GLFW_VERSION_REVISION 0 /*! @} */ -/*! @name Boolean values - * @{ */ /*! @brief One. * - * One. Seriously. You don't _need_ to use this symbol in your code. It's - * just semantic sugar for the number 1. You can use `1` or `true` or `_True` - * or `GL_TRUE` or whatever you want. + * This is only semantic sugar for the number 1. You can instead use `1` or + * `true` or `_True` or `GL_TRUE` or `VK_TRUE` or anything else that is equal + * to one. + * + * @ingroup init */ #define GLFW_TRUE 1 /*! @brief Zero. * - * Zero. Seriously. You don't _need_ to use this symbol in your code. It's - * just just semantic sugar for the number 0. You can use `0` or `false` or - * `_False` or `GL_FALSE` or whatever you want. + * This is only semantic sugar for the number 0. You can instead use `0` or + * `false` or `_False` or `GL_FALSE` or `VK_FALSE` or anything else that is + * equal to zero. + * + * @ingroup init */ #define GLFW_FALSE 0 -/*! @} */ /*! @name Key and button actions * @{ */ @@ -272,7 +313,26 @@ extern "C" { #define GLFW_REPEAT 2 /*! @} */ +/*! @defgroup hat_state Joystick hat states + * @brief Joystick hat states. + * + * See [joystick hat input](@ref joystick_hat) for how these are used. + * + * @ingroup input + * @{ */ +#define GLFW_HAT_CENTERED 0 +#define GLFW_HAT_UP 1 +#define GLFW_HAT_RIGHT 2 +#define GLFW_HAT_DOWN 4 +#define GLFW_HAT_LEFT 8 +#define GLFW_HAT_RIGHT_UP (GLFW_HAT_RIGHT | GLFW_HAT_UP) +#define GLFW_HAT_RIGHT_DOWN (GLFW_HAT_RIGHT | GLFW_HAT_DOWN) +#define GLFW_HAT_LEFT_UP (GLFW_HAT_LEFT | GLFW_HAT_UP) +#define GLFW_HAT_LEFT_DOWN (GLFW_HAT_LEFT | GLFW_HAT_DOWN) +/*! @} */ + /*! @defgroup keys Keyboard keys + * @brief Keyboard key IDs. * * See [key input](@ref input_key) for how these are used. * @@ -427,6 +487,7 @@ extern "C" { /*! @} */ /*! @defgroup mods Modifier key flags + * @brief Modifier key flags. * * See [key input](@ref input_key) for how these are used. * @@ -434,21 +495,42 @@ extern "C" { * @{ */ /*! @brief If this bit is set one or more Shift keys were held down. + * + * If this bit is set one or more Shift keys were held down. */ #define GLFW_MOD_SHIFT 0x0001 /*! @brief If this bit is set one or more Control keys were held down. + * + * If this bit is set one or more Control keys were held down. */ #define GLFW_MOD_CONTROL 0x0002 /*! @brief If this bit is set one or more Alt keys were held down. + * + * If this bit is set one or more Alt keys were held down. */ #define GLFW_MOD_ALT 0x0004 /*! @brief If this bit is set one or more Super keys were held down. + * + * If this bit is set one or more Super keys were held down. */ #define GLFW_MOD_SUPER 0x0008 +/*! @brief If this bit is set the Caps Lock key is enabled. + * + * If this bit is set the Caps Lock key is enabled and the @ref + * GLFW_LOCK_KEY_MODS input mode is set. + */ +#define GLFW_MOD_CAPS_LOCK 0x0010 +/*! @brief If this bit is set the Num Lock key is enabled. + * + * If this bit is set the Num Lock key is enabled and the @ref + * GLFW_LOCK_KEY_MODS input mode is set. + */ +#define GLFW_MOD_NUM_LOCK 0x0020 /*! @} */ /*! @defgroup buttons Mouse buttons + * @brief Mouse button IDs. * * See [mouse button input](@ref input_mouse_button) for how these are used. * @@ -469,6 +551,7 @@ extern "C" { /*! @} */ /*! @defgroup joysticks Joysticks + * @brief Joystick IDs. * * See [joystick input](@ref joystick) for how these are used. * @@ -493,12 +576,66 @@ extern "C" { #define GLFW_JOYSTICK_LAST GLFW_JOYSTICK_16 /*! @} */ +/*! @defgroup gamepad_buttons Gamepad buttons + * @brief Gamepad buttons. + * + * See @ref gamepad for how these are used. + * + * @ingroup input + * @{ */ +#define GLFW_GAMEPAD_BUTTON_A 0 +#define GLFW_GAMEPAD_BUTTON_B 1 +#define GLFW_GAMEPAD_BUTTON_X 2 +#define GLFW_GAMEPAD_BUTTON_Y 3 +#define GLFW_GAMEPAD_BUTTON_LEFT_BUMPER 4 +#define GLFW_GAMEPAD_BUTTON_RIGHT_BUMPER 5 +#define GLFW_GAMEPAD_BUTTON_BACK 6 +#define GLFW_GAMEPAD_BUTTON_START 7 +#define GLFW_GAMEPAD_BUTTON_GUIDE 8 +#define GLFW_GAMEPAD_BUTTON_LEFT_THUMB 9 +#define GLFW_GAMEPAD_BUTTON_RIGHT_THUMB 10 +#define GLFW_GAMEPAD_BUTTON_DPAD_UP 11 +#define GLFW_GAMEPAD_BUTTON_DPAD_RIGHT 12 +#define GLFW_GAMEPAD_BUTTON_DPAD_DOWN 13 +#define GLFW_GAMEPAD_BUTTON_DPAD_LEFT 14 +#define GLFW_GAMEPAD_BUTTON_LAST GLFW_GAMEPAD_BUTTON_DPAD_LEFT + +#define GLFW_GAMEPAD_BUTTON_CROSS GLFW_GAMEPAD_BUTTON_A +#define GLFW_GAMEPAD_BUTTON_CIRCLE GLFW_GAMEPAD_BUTTON_B +#define GLFW_GAMEPAD_BUTTON_SQUARE GLFW_GAMEPAD_BUTTON_X +#define GLFW_GAMEPAD_BUTTON_TRIANGLE GLFW_GAMEPAD_BUTTON_Y +/*! @} */ + +/*! @defgroup gamepad_axes Gamepad axes + * @brief Gamepad axes. + * + * See @ref gamepad for how these are used. + * + * @ingroup input + * @{ */ +#define GLFW_GAMEPAD_AXIS_LEFT_X 0 +#define GLFW_GAMEPAD_AXIS_LEFT_Y 1 +#define GLFW_GAMEPAD_AXIS_RIGHT_X 2 +#define GLFW_GAMEPAD_AXIS_RIGHT_Y 3 +#define GLFW_GAMEPAD_AXIS_LEFT_TRIGGER 4 +#define GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER 5 +#define GLFW_GAMEPAD_AXIS_LAST GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER +/*! @} */ + /*! @defgroup errors Error codes + * @brief Error codes. * * See [error handling](@ref error_handling) for how these are used. * * @ingroup init * @{ */ +/*! @brief No error has occurred. + * + * No error has occurred. + * + * @analysis Yay. + */ +#define GLFW_NO_ERROR 0 /*! @brief GLFW has not been initialized. * * This occurs if a GLFW function was called that must not be called unless the @@ -521,8 +658,7 @@ extern "C" { /*! @brief One of the arguments to the function was an invalid enum value. * * One of the arguments to the function was an invalid enum value, for example - * requesting [GLFW_RED_BITS](@ref window_hints_fb) with @ref - * glfwGetWindowAttrib. + * requesting @ref GLFW_RED_BITS with @ref glfwGetWindowAttrib. * * @analysis Application programmer error. Fix the offending call. */ @@ -557,7 +693,7 @@ extern "C" { * @par * Some pre-installed Windows graphics drivers do not support OpenGL. AMD only * supports OpenGL ES via EGL, while Nvidia and Intel only support it via - * a WGL or GLX extension. OS X does not provide OpenGL ES at all. The Mesa + * a WGL or GLX extension. macOS does not provide OpenGL ES at all. The Mesa * EGL, OpenGL and OpenGL ES libraries do not interface with the Nvidia binary * driver. Older graphics drivers do not support Vulkan. */ @@ -619,42 +755,251 @@ extern "C" { #define GLFW_NO_WINDOW_CONTEXT 0x0001000A /*! @} */ +/*! @addtogroup window + * @{ */ +/*! @brief Input focus window hint and attribute + * + * Input focus [window hint](@ref GLFW_FOCUSED_hint) or + * [window attribute](@ref GLFW_FOCUSED_attrib). + */ #define GLFW_FOCUSED 0x00020001 +/*! @brief Window iconification window attribute + * + * Window iconification [window attribute](@ref GLFW_ICONIFIED_attrib). + */ #define GLFW_ICONIFIED 0x00020002 +/*! @brief Window resize-ability window hint and attribute + * + * Window resize-ability [window hint](@ref GLFW_RESIZABLE_hint) and + * [window attribute](@ref GLFW_RESIZABLE_attrib). + */ #define GLFW_RESIZABLE 0x00020003 +/*! @brief Window visibility window hint and attribute + * + * Window visibility [window hint](@ref GLFW_VISIBLE_hint) and + * [window attribute](@ref GLFW_VISIBLE_attrib). + */ #define GLFW_VISIBLE 0x00020004 +/*! @brief Window decoration window hint and attribute + * + * Window decoration [window hint](@ref GLFW_DECORATED_hint) and + * [window attribute](@ref GLFW_DECORATED_attrib). + */ #define GLFW_DECORATED 0x00020005 +/*! @brief Window auto-iconification window hint and attribute + * + * Window auto-iconification [window hint](@ref GLFW_AUTO_ICONIFY_hint) and + * [window attribute](@ref GLFW_AUTO_ICONIFY_attrib). + */ #define GLFW_AUTO_ICONIFY 0x00020006 +/*! @brief Window decoration window hint and attribute + * + * Window decoration [window hint](@ref GLFW_FLOATING_hint) and + * [window attribute](@ref GLFW_FLOATING_attrib). + */ #define GLFW_FLOATING 0x00020007 +/*! @brief Window maximization window hint and attribute + * + * Window maximization [window hint](@ref GLFW_MAXIMIZED_hint) and + * [window attribute](@ref GLFW_MAXIMIZED_attrib). + */ #define GLFW_MAXIMIZED 0x00020008 +/*! @brief Cursor centering window hint + * + * Cursor centering [window hint](@ref GLFW_CENTER_CURSOR_hint). + */ +#define GLFW_CENTER_CURSOR 0x00020009 +/*! @brief Window framebuffer transparency hint and attribute + * + * Window framebuffer transparency + * [window hint](@ref GLFW_TRANSPARENT_FRAMEBUFFER_hint) and + * [window attribute](@ref GLFW_TRANSPARENT_FRAMEBUFFER_attrib). + */ +#define GLFW_TRANSPARENT_FRAMEBUFFER 0x0002000A +/*! @brief Mouse cursor hover window attribute. + * + * Mouse cursor hover [window attribute](@ref GLFW_HOVERED_attrib). + */ +#define GLFW_HOVERED 0x0002000B +/*! @brief Input focus on calling show window hint and attribute + * + * Input focus [window hint](@ref GLFW_FOCUS_ON_SHOW_hint) or + * [window attribute](@ref GLFW_FOCUS_ON_SHOW_attrib). + */ +#define GLFW_FOCUS_ON_SHOW 0x0002000C +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_RED_BITS). + */ #define GLFW_RED_BITS 0x00021001 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_GREEN_BITS). + */ #define GLFW_GREEN_BITS 0x00021002 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_BLUE_BITS). + */ #define GLFW_BLUE_BITS 0x00021003 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_ALPHA_BITS). + */ #define GLFW_ALPHA_BITS 0x00021004 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_DEPTH_BITS). + */ #define GLFW_DEPTH_BITS 0x00021005 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_STENCIL_BITS). + */ #define GLFW_STENCIL_BITS 0x00021006 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_ACCUM_RED_BITS). + */ #define GLFW_ACCUM_RED_BITS 0x00021007 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_ACCUM_GREEN_BITS). + */ #define GLFW_ACCUM_GREEN_BITS 0x00021008 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_ACCUM_BLUE_BITS). + */ #define GLFW_ACCUM_BLUE_BITS 0x00021009 +/*! @brief Framebuffer bit depth hint. + * + * Framebuffer bit depth [hint](@ref GLFW_ACCUM_ALPHA_BITS). + */ #define GLFW_ACCUM_ALPHA_BITS 0x0002100A +/*! @brief Framebuffer auxiliary buffer hint. + * + * Framebuffer auxiliary buffer [hint](@ref GLFW_AUX_BUFFERS). + */ #define GLFW_AUX_BUFFERS 0x0002100B +/*! @brief OpenGL stereoscopic rendering hint. + * + * OpenGL stereoscopic rendering [hint](@ref GLFW_STEREO). + */ #define GLFW_STEREO 0x0002100C +/*! @brief Framebuffer MSAA samples hint. + * + * Framebuffer MSAA samples [hint](@ref GLFW_SAMPLES). + */ #define GLFW_SAMPLES 0x0002100D +/*! @brief Framebuffer sRGB hint. + * + * Framebuffer sRGB [hint](@ref GLFW_SRGB_CAPABLE). + */ #define GLFW_SRGB_CAPABLE 0x0002100E +/*! @brief Monitor refresh rate hint. + * + * Monitor refresh rate [hint](@ref GLFW_REFRESH_RATE). + */ #define GLFW_REFRESH_RATE 0x0002100F +/*! @brief Framebuffer double buffering hint. + * + * Framebuffer double buffering [hint](@ref GLFW_DOUBLEBUFFER). + */ #define GLFW_DOUBLEBUFFER 0x00021010 +/*! @brief Context client API hint and attribute. + * + * Context client API [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CLIENT_API 0x00022001 +/*! @brief Context client API major version hint and attribute. + * + * Context client API major version [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_VERSION_MAJOR 0x00022002 +/*! @brief Context client API minor version hint and attribute. + * + * Context client API minor version [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_VERSION_MINOR 0x00022003 +/*! @brief Context client API revision number hint and attribute. + * + * Context client API revision number [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_REVISION 0x00022004 +/*! @brief Context robustness hint and attribute. + * + * Context client API revision number [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_ROBUSTNESS 0x00022005 +/*! @brief OpenGL forward-compatibility hint and attribute. + * + * OpenGL forward-compatibility [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_OPENGL_FORWARD_COMPAT 0x00022006 +/*! @brief OpenGL debug context hint and attribute. + * + * OpenGL debug context [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_OPENGL_DEBUG_CONTEXT 0x00022007 +/*! @brief OpenGL profile hint and attribute. + * + * OpenGL profile [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_OPENGL_PROFILE 0x00022008 +/*! @brief Context flush-on-release hint and attribute. + * + * Context flush-on-release [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009 +/*! @brief Context error suppression hint and attribute. + * + * Context error suppression [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ #define GLFW_CONTEXT_NO_ERROR 0x0002200A +/*! @brief Context creation API hint and attribute. + * + * Context creation API [hint](@ref GLFW_CLIENT_API_hint) and + * [attribute](@ref GLFW_CLIENT_API_attrib). + */ +#define GLFW_CONTEXT_CREATION_API 0x0002200B +/*! @brief Window content area scaling window + * [window hint](@ref GLFW_SCALE_TO_MONITOR). + */ +#define GLFW_SCALE_TO_MONITOR 0x0002200C +/*! @brief macOS specific + * [window hint](@ref GLFW_COCOA_RETINA_FRAMEBUFFER_hint). + */ +#define GLFW_COCOA_RETINA_FRAMEBUFFER 0x00023001 +/*! @brief macOS specific + * [window hint](@ref GLFW_COCOA_FRAME_NAME_hint). + */ +#define GLFW_COCOA_FRAME_NAME 0x00023002 +/*! @brief macOS specific + * [window hint](@ref GLFW_COCOA_GRAPHICS_SWITCHING_hint). + */ +#define GLFW_COCOA_GRAPHICS_SWITCHING 0x00023003 +/*! @brief X11 specific + * [window hint](@ref GLFW_X11_CLASS_NAME_hint). + */ +#define GLFW_X11_CLASS_NAME 0x00024001 +/*! @brief X11 specific + * [window hint](@ref GLFW_X11_CLASS_NAME_hint). + */ +#define GLFW_X11_INSTANCE_NAME 0x00024002 +/*! @} */ #define GLFW_NO_API 0 #define GLFW_OPENGL_API 0x00030001 @@ -671,6 +1016,8 @@ extern "C" { #define GLFW_CURSOR 0x00033001 #define GLFW_STICKY_KEYS 0x00033002 #define GLFW_STICKY_MOUSE_BUTTONS 0x00033003 +#define GLFW_LOCK_KEY_MODS 0x00033004 +#define GLFW_RAW_MOUSE_MOTION 0x00033005 #define GLFW_CURSOR_NORMAL 0x00034001 #define GLFW_CURSOR_HIDDEN 0x00034002 @@ -680,7 +1027,12 @@ extern "C" { #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001 #define GLFW_RELEASE_BEHAVIOR_NONE 0x00035002 +#define GLFW_NATIVE_CONTEXT_API 0x00036001 +#define GLFW_EGL_CONTEXT_API 0x00036002 +#define GLFW_OSMESA_CONTEXT_API 0x00036003 + /*! @defgroup shapes Standard cursor shapes + * @brief Standard system cursor shapes. * * See [standard cursor creation](@ref cursor_standard) for how these are used. * @@ -722,6 +1074,25 @@ extern "C" { #define GLFW_CONNECTED 0x00040001 #define GLFW_DISCONNECTED 0x00040002 +/*! @addtogroup init + * @{ */ +/*! @brief Joystick hat buttons init hint. + * + * Joystick hat buttons [init hint](@ref GLFW_JOYSTICK_HAT_BUTTONS). + */ +#define GLFW_JOYSTICK_HAT_BUTTONS 0x00050001 +/*! @brief macOS specific init hint. + * + * macOS specific [init hint](@ref GLFW_COCOA_CHDIR_RESOURCES_hint). + */ +#define GLFW_COCOA_CHDIR_RESOURCES 0x00051001 +/*! @brief macOS specific init hint. + * + * macOS specific [init hint](@ref GLFW_COCOA_MENUBAR_hint). + */ +#define GLFW_COCOA_MENUBAR 0x00051002 +/*! @} */ + #define GLFW_DONT_CARE -1 @@ -735,10 +1106,10 @@ extern "C" { * without forcing a cast from a regular pointer. * * @sa @ref context_glext - * @sa glfwGetProcAddress + * @sa @ref glfwGetProcAddress * * @since Added in version 3.0. - + * * @ingroup context */ typedef void (*GLFWglproc)(void); @@ -749,7 +1120,7 @@ typedef void (*GLFWglproc)(void); * without forcing a cast from a regular pointer. * * @sa @ref vulkan_proc - * @sa glfwGetInstanceProcAddress + * @sa @ref glfwGetInstanceProcAddress * * @since Added in version 3.2. * @@ -789,7 +1160,7 @@ typedef struct GLFWwindow GLFWwindow; * * @since Added in version 3.1. * - * @ingroup cursor + * @ingroup input */ typedef struct GLFWcursor GLFWcursor; @@ -801,7 +1172,7 @@ typedef struct GLFWcursor GLFWcursor; * @param[in] description A UTF-8 encoded string describing the error. * * @sa @ref error_handling - * @sa glfwSetErrorCallback + * @sa @ref glfwSetErrorCallback * * @since Added in version 3.0. * @@ -815,12 +1186,12 @@ typedef void (* GLFWerrorfun)(int,const char*); * * @param[in] window The window that was moved. * @param[in] xpos The new x-coordinate, in screen coordinates, of the - * upper-left corner of the client area of the window. + * upper-left corner of the content area of the window. * @param[in] ypos The new y-coordinate, in screen coordinates, of the - * upper-left corner of the client area of the window. + * upper-left corner of the content area of the window. * * @sa @ref window_pos - * @sa glfwSetWindowPosCallback + * @sa @ref glfwSetWindowPosCallback * * @since Added in version 3.0. * @@ -837,7 +1208,7 @@ typedef void (* GLFWwindowposfun)(GLFWwindow*,int,int); * @param[in] height The new height, in screen coordinates, of the window. * * @sa @ref window_size - * @sa glfwSetWindowSizeCallback + * @sa @ref glfwSetWindowSizeCallback * * @since Added in version 1.0. * @glfw3 Added window handle parameter. @@ -853,7 +1224,7 @@ typedef void (* GLFWwindowsizefun)(GLFWwindow*,int,int); * @param[in] window The window that the user attempted to close. * * @sa @ref window_close - * @sa glfwSetWindowCloseCallback + * @sa @ref glfwSetWindowCloseCallback * * @since Added in version 2.5. * @glfw3 Added window handle parameter. @@ -869,7 +1240,7 @@ typedef void (* GLFWwindowclosefun)(GLFWwindow*); * @param[in] window The window whose content needs to be refreshed. * * @sa @ref window_refresh - * @sa glfwSetWindowRefreshCallback + * @sa @ref glfwSetWindowRefreshCallback * * @since Added in version 2.5. * @glfw3 Added window handle parameter. @@ -887,7 +1258,7 @@ typedef void (* GLFWwindowrefreshfun)(GLFWwindow*); * `GLFW_FALSE` if it lost it. * * @sa @ref window_focus - * @sa glfwSetWindowFocusCallback + * @sa @ref glfwSetWindowFocusCallback * * @since Added in version 3.0. * @@ -905,7 +1276,7 @@ typedef void (* GLFWwindowfocusfun)(GLFWwindow*,int); * `GLFW_FALSE` if it was restored. * * @sa @ref window_iconify - * @sa glfwSetWindowIconifyCallback + * @sa @ref glfwSetWindowIconifyCallback * * @since Added in version 3.0. * @@ -913,6 +1284,24 @@ typedef void (* GLFWwindowfocusfun)(GLFWwindow*,int); */ typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int); +/*! @brief The function signature for window maximize/restore callbacks. + * + * This is the function signature for window maximize/restore callback + * functions. + * + * @param[in] window The window that was maximized or restored. + * @param[in] iconified `GLFW_TRUE` if the window was maximized, or + * `GLFW_FALSE` if it was restored. + * + * @sa @ref window_maximize + * @sa glfwSetWindowMaximizeCallback + * + * @since Added in version 3.3. + * + * @ingroup window + */ +typedef void (* GLFWwindowmaximizefun)(GLFWwindow*,int); + /*! @brief The function signature for framebuffer resize callbacks. * * This is the function signature for framebuffer resize callback @@ -923,7 +1312,7 @@ typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int); * @param[in] height The new height, in pixels, of the framebuffer. * * @sa @ref window_fbsize - * @sa glfwSetFramebufferSizeCallback + * @sa @ref glfwSetFramebufferSizeCallback * * @since Added in version 3.0. * @@ -931,6 +1320,24 @@ typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int); */ typedef void (* GLFWframebuffersizefun)(GLFWwindow*,int,int); +/*! @brief The function signature for window content scale callbacks. + * + * This is the function signature for window content scale callback + * functions. + * + * @param[in] window The window whose content scale changed. + * @param[in] xscale The new x-axis content scale of the window. + * @param[in] yscale The new y-axis content scale of the window. + * + * @sa @ref window_scale + * @sa @ref glfwSetWindowContentScaleCallback + * + * @since Added in version 3.3. + * + * @ingroup window + */ +typedef void (* GLFWwindowcontentscalefun)(GLFWwindow*,float,float); + /*! @brief The function signature for mouse button callbacks. * * This is the function signature for mouse button callback functions. @@ -943,7 +1350,7 @@ typedef void (* GLFWframebuffersizefun)(GLFWwindow*,int,int); * held down. * * @sa @ref input_mouse_button - * @sa glfwSetMouseButtonCallback + * @sa @ref glfwSetMouseButtonCallback * * @since Added in version 1.0. * @glfw3 Added window handle and modifier mask parameters. @@ -958,12 +1365,12 @@ typedef void (* GLFWmousebuttonfun)(GLFWwindow*,int,int,int); * * @param[in] window The window that received the event. * @param[in] xpos The new cursor x-coordinate, relative to the left edge of - * the client area. + * the content area. * @param[in] ypos The new cursor y-coordinate, relative to the top edge of the - * client area. + * content area. * * @sa @ref cursor_pos - * @sa glfwSetCursorPosCallback + * @sa @ref glfwSetCursorPosCallback * * @since Added in version 3.0. Replaces `GLFWmouseposfun`. * @@ -976,11 +1383,11 @@ typedef void (* GLFWcursorposfun)(GLFWwindow*,double,double); * This is the function signature for cursor enter/leave callback functions. * * @param[in] window The window that received the event. - * @param[in] entered `GLFW_TRUE` if the cursor entered the window's client + * @param[in] entered `GLFW_TRUE` if the cursor entered the window's content * area, or `GLFW_FALSE` if it left it. * * @sa @ref cursor_enter - * @sa glfwSetCursorEnterCallback + * @sa @ref glfwSetCursorEnterCallback * * @since Added in version 3.0. * @@ -997,7 +1404,7 @@ typedef void (* GLFWcursorenterfun)(GLFWwindow*,int); * @param[in] yoffset The scroll offset along the y-axis. * * @sa @ref scrolling - * @sa glfwSetScrollCallback + * @sa @ref glfwSetScrollCallback * * @since Added in version 3.0. Replaces `GLFWmousewheelfun`. * @@ -1017,7 +1424,7 @@ typedef void (* GLFWscrollfun)(GLFWwindow*,double,double); * held down. * * @sa @ref input_key - * @sa glfwSetKeyCallback + * @sa @ref glfwSetKeyCallback * * @since Added in version 1.0. * @glfw3 Added window handle, scancode and modifier mask parameters. @@ -1034,7 +1441,7 @@ typedef void (* GLFWkeyfun)(GLFWwindow*,int,int,int,int); * @param[in] codepoint The Unicode code point of the character. * * @sa @ref input_char - * @sa glfwSetCharCallback + * @sa @ref glfwSetCharCallback * * @since Added in version 2.4. * @glfw3 Added window handle parameter. @@ -1056,7 +1463,9 @@ typedef void (* GLFWcharfun)(GLFWwindow*,unsigned int); * held down. * * @sa @ref input_char - * @sa glfwSetCharModsCallback + * @sa @ref glfwSetCharModsCallback + * + * @deprecated Scheduled for removal in version 4.0. * * @since Added in version 3.1. * @@ -1073,7 +1482,7 @@ typedef void (* GLFWcharmodsfun)(GLFWwindow*,unsigned int,int); * @param[in] paths The UTF-8 encoded file and/or directory path names. * * @sa @ref path_drop - * @sa glfwSetDropCallback + * @sa @ref glfwSetDropCallback * * @since Added in version 3.1. * @@ -1086,10 +1495,11 @@ typedef void (* GLFWdropfun)(GLFWwindow*,int,const char**); * This is the function signature for monitor configuration callback functions. * * @param[in] monitor The monitor that was connected or disconnected. - * @param[in] event One of `GLFW_CONNECTED` or `GLFW_DISCONNECTED`. + * @param[in] event One of `GLFW_CONNECTED` or `GLFW_DISCONNECTED`. Remaining + * values reserved for future use. * * @sa @ref monitor_event - * @sa glfwSetMonitorCallback + * @sa @ref glfwSetMonitorCallback * * @since Added in version 3.0. * @@ -1102,11 +1512,12 @@ typedef void (* GLFWmonitorfun)(GLFWmonitor*,int); * This is the function signature for joystick configuration callback * functions. * - * @param[in] joy The joystick that was connected or disconnected. - * @param[in] event One of `GLFW_CONNECTED` or `GLFW_DISCONNECTED`. + * @param[in] jid The joystick that was connected or disconnected. + * @param[in] event One of `GLFW_CONNECTED` or `GLFW_DISCONNECTED`. Remaining + * values reserved for future use. * * @sa @ref joystick_event - * @sa glfwSetJoystickCallback + * @sa @ref glfwSetJoystickCallback * * @since Added in version 3.2. * @@ -1119,7 +1530,8 @@ typedef void (* GLFWjoystickfun)(int,int); * This describes a single video mode. * * @sa @ref monitor_modes - * @sa glfwGetVideoMode glfwGetVideoModes + * @sa @ref glfwGetVideoMode + * @sa @ref glfwGetVideoModes * * @since Added in version 1.0. * @glfw3 Added refresh rate member. @@ -1153,7 +1565,8 @@ typedef struct GLFWvidmode * This describes the gamma ramp for a monitor. * * @sa @ref monitor_gamma - * @sa glfwGetGammaRamp glfwSetGammaRamp + * @sa @ref glfwGetGammaRamp + * @sa @ref glfwSetGammaRamp * * @since Added in version 3.0. * @@ -1176,11 +1589,17 @@ typedef struct GLFWgammaramp } GLFWgammaramp; /*! @brief Image data. + * + * This describes a single 2D image. See the documentation for each related + * function what the expected pixel format is. * * @sa @ref cursor_custom + * @sa @ref window_icon * * @since Added in version 2.1. * @glfw3 Removed format and bytes-per-pixel members. + * + * @ingroup window */ typedef struct GLFWimage { @@ -1195,6 +1614,29 @@ typedef struct GLFWimage unsigned char* pixels; } GLFWimage; +/*! @brief Gamepad input state + * + * This describes the input state of a gamepad. + * + * @sa @ref gamepad + * @sa @ref glfwGetGamepadState + * + * @since Added in version 3.3. + * + * @ingroup input + */ +typedef struct GLFWgamepadstate +{ + /*! The states of each [gamepad button](@ref gamepad_buttons), `GLFW_PRESS` + * or `GLFW_RELEASE`. + */ + unsigned char buttons[15]; + /*! The states of each [gamepad axis](@ref gamepad_axes), in the range -1.0 + * to 1.0 inclusive. + */ + float axes[6]; +} GLFWgamepadstate; + /************************************************************************* * GLFW API functions @@ -1218,15 +1660,15 @@ typedef struct GLFWimage * * @errors Possible errors include @ref GLFW_PLATFORM_ERROR. * - * @remark @osx This function will change the current directory of the + * @remark @macos This function will change the current directory of the * application to the `Contents/Resources` subdirectory of the application's - * bundle, if present. This can be disabled with a - * [compile-time option](@ref compile_options_osx). + * bundle, if present. This can be disabled with the @ref + * GLFW_COCOA_CHDIR_RESOURCES init hint. * * @thread_safety This function must only be called from the main thread. * * @sa @ref intro_init - * @sa glfwTerminate + * @sa @ref glfwTerminate * * @since Added in version 1.0. * @@ -1258,7 +1700,7 @@ GLFWAPI int glfwInit(void); * @thread_safety This function must only be called from the main thread. * * @sa @ref intro_init - * @sa glfwInit + * @sa @ref glfwInit * * @since Added in version 1.0. * @@ -1266,6 +1708,38 @@ GLFWAPI int glfwInit(void); */ GLFWAPI void glfwTerminate(void); +/*! @brief Sets the specified init hint to the desired value. + * + * This function sets hints for the next initialization of GLFW. + * + * The values you set hints to are never reset by GLFW, but they only take + * effect during initialization. Once GLFW has been initialized, any values + * you set will be ignored until the library is terminated and initialized + * again. + * + * Some hints are platform specific. These may be set on any platform but they + * will only affect their specific platform. Other platforms will ignore them. + * Setting these hints requires no platform specific headers or functions. + * + * @param[in] hint The [init hint](@ref init_hints) to set. + * @param[in] value The new value of the init hint. + * + * @errors Possible errors include @ref GLFW_INVALID_ENUM and @ref + * GLFW_INVALID_VALUE. + * + * @remarks This function may be called before @ref glfwInit. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa init_hints + * @sa glfwInit + * + * @since Added in version 3.3. + * + * @ingroup init + */ +GLFWAPI void glfwInitHint(int hint, int value); + /*! @brief Retrieves the version of the GLFW library. * * This function retrieves the major, minor and revision numbers of the GLFW @@ -1285,7 +1759,7 @@ GLFWAPI void glfwTerminate(void); * @thread_safety This function may be called from any thread. * * @sa @ref intro_version - * @sa glfwGetVersionString + * @sa @ref glfwGetVersionString * * @since Added in version 1.0. * @@ -1316,7 +1790,7 @@ GLFWAPI void glfwGetVersion(int* major, int* minor, int* rev); * @thread_safety This function may be called from any thread. * * @sa @ref intro_version - * @sa glfwGetVersion + * @sa @ref glfwGetVersion * * @since Added in version 3.0. * @@ -1324,11 +1798,46 @@ GLFWAPI void glfwGetVersion(int* major, int* minor, int* rev); */ GLFWAPI const char* glfwGetVersionString(void); +/*! @brief Returns and clears the last error for the calling thread. + * + * This function returns and clears the [error code](@ref errors) of the last + * error that occurred on the calling thread, and optionally a UTF-8 encoded + * human-readable description of it. If no error has occurred since the last + * call, it returns @ref GLFW_NO_ERROR (zero) and the description pointer is + * set to `NULL`. + * + * @param[in] description Where to store the error description pointer, or `NULL`. + * @return The last error code for the calling thread, or @ref GLFW_NO_ERROR + * (zero). + * + * @errors None. + * + * @pointer_lifetime The returned string is allocated and freed by GLFW. You + * should not free it yourself. It is guaranteed to be valid only until the + * next error occurs or the library is terminated. + * + * @remark This function may be called before @ref glfwInit. + * + * @thread_safety This function may be called from any thread. + * + * @sa @ref error_handling + * @sa @ref glfwSetErrorCallback + * + * @since Added in version 3.3. + * + * @ingroup init + */ +GLFWAPI int glfwGetError(const char** description); + /*! @brief Sets the error callback. * * This function sets the error callback, which is called with an error code * and a human-readable description each time a GLFW error occurs. * + * The error code is set before the callback is called. Calling @ref + * glfwGetError from the error callback will return the same value as the error + * code argument. + * * The error callback is called on the thread where the error occurred. If you * are using GLFW from multiple threads, your error callback needs to be * written accordingly. @@ -1351,6 +1860,7 @@ GLFWAPI const char* glfwGetVersionString(void); * @thread_safety This function must only be called from the main thread. * * @sa @ref error_handling + * @sa @ref glfwGetError * * @since Added in version 3.0. * @@ -1379,7 +1889,7 @@ GLFWAPI GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun); * * @sa @ref monitor_monitors * @sa @ref monitor_event - * @sa glfwGetPrimaryMonitor + * @sa @ref glfwGetPrimaryMonitor * * @since Added in version 3.0. * @@ -1403,7 +1913,7 @@ GLFWAPI GLFWmonitor** glfwGetMonitors(int* count); * glfwGetMonitors. * * @sa @ref monitor_monitors - * @sa glfwGetMonitors + * @sa @ref glfwGetMonitors * * @since Added in version 3.0. * @@ -1436,6 +1946,37 @@ GLFWAPI GLFWmonitor* glfwGetPrimaryMonitor(void); */ GLFWAPI void glfwGetMonitorPos(GLFWmonitor* monitor, int* xpos, int* ypos); +/*! @brief Retrives the work area of the monitor. + * + * This function returns the position, in screen coordinates, of the upper-left + * corner of the work area of the specified monitor along with the work area + * size in screen coordinates. The work area is defined as the area of the + * monitor not occluded by the operating system task bar where present. If no + * task bar exists then the work area is the monitor resolution in screen + * coordinates. + * + * Any or all of the position and size arguments may be `NULL`. If an error + * occurs, all non-`NULL` position and size arguments will be set to zero. + * + * @param[in] monitor The monitor to query. + * @param[out] xpos Where to store the monitor x-coordinate, or `NULL`. + * @param[out] ypos Where to store the monitor y-coordinate, or `NULL`. + * @param[out] width Where to store the monitor width, or `NULL`. + * @param[out] height Where to store the monitor height, or `NULL`. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref monitor_workarea + * + * @since Added in version 3.3. + * + * @ingroup monitor + */ +GLFWAPI void glfwGetMonitorWorkarea(GLFWmonitor* monitor, int* xpos, int* ypos, int* width, int* height); + /*! @brief Returns the physical size of the monitor. * * This function returns the size, in millimetres, of the display area of the @@ -1470,6 +2011,38 @@ GLFWAPI void glfwGetMonitorPos(GLFWmonitor* monitor, int* xpos, int* ypos); */ GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor* monitor, int* widthMM, int* heightMM); +/*! @brief Retrieves the content scale for the specified monitor. + * + * This function retrieves the content scale for the specified monitor. The + * content scale is the ratio between the current DPI and the platform's + * default DPI. This is especially important for text and any UI elements. If + * the pixel dimensions of your UI scaled by this look appropriate on your + * machine then it should appear at a reasonable size on other machines + * regardless of their DPI and scaling settings. This relies on the system DPI + * and scaling settings being somewhat correct. + * + * The content scale may depend on both the monitor resolution and pixel + * density and on user settings. It may be very different from the raw DPI + * calculated from the physical size and current resolution. + * + * @param[in] monitor The monitor to query. + * @param[out] xscale Where to store the x-axis content scale, or `NULL`. + * @param[out] yscale Where to store the y-axis content scale, or `NULL`. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref monitor_scale + * @sa @ref glfwGetWindowContentScale + * + * @since Added in version 3.3. + * + * @ingroup monitor + */ +GLFWAPI void glfwGetMonitorContentScale(GLFWmonitor* monitor, float* xscale, float* yscale); + /*! @brief Returns the name of the specified monitor. * * This function returns a human-readable name, encoded as UTF-8, of the @@ -1496,6 +2069,56 @@ GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor* monitor, int* widthMM, int* */ GLFWAPI const char* glfwGetMonitorName(GLFWmonitor* monitor); +/*! @brief Sets the user pointer of the specified monitor. + * + * This function sets the user-defined pointer of the specified monitor. The + * current value is retained until the monitor is disconnected. The initial + * value is `NULL`. + * + * This function may be called from the monitor callback, even for a monitor + * that is being disconnected. + * + * @param[in] monitor The monitor whose pointer to set. + * @param[in] pointer The new value. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function may be called from any thread. Access is not + * synchronized. + * + * @sa @ref monitor_userptr + * @sa @ref glfwGetMonitorUserPointer + * + * @since Added in version 3.3. + * + * @ingroup monitor + */ +GLFWAPI void glfwSetMonitorUserPointer(GLFWmonitor* monitor, void* pointer); + +/*! @brief Returns the user pointer of the specified monitor. + * + * This function returns the current value of the user-defined pointer of the + * specified monitor. The initial value is `NULL`. + * + * This function may be called from the monitor callback, even for a monitor + * that is being disconnected. + * + * @param[in] monitor The monitor whose pointer to return. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function may be called from any thread. Access is not + * synchronized. + * + * @sa @ref monitor_userptr + * @sa @ref glfwSetMonitorUserPointer + * + * @since Added in version 3.3. + * + * @ingroup monitor + */ +GLFWAPI void* glfwGetMonitorUserPointer(GLFWmonitor* monitor); + /*! @brief Sets the monitor configuration callback. * * This function sets the monitor configuration callback, or removes the @@ -1543,7 +2166,7 @@ GLFWAPI GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun); * @thread_safety This function must only be called from the main thread. * * @sa @ref monitor_modes - * @sa glfwGetVideoMode + * @sa @ref glfwGetVideoMode * * @since Added in version 1.0. * @glfw3 Changed to return an array of modes for a specific monitor. @@ -1572,7 +2195,7 @@ GLFWAPI const GLFWvidmode* glfwGetVideoModes(GLFWmonitor* monitor, int* count); * @thread_safety This function must only be called from the main thread. * * @sa @ref monitor_modes - * @sa glfwGetVideoModes + * @sa @ref glfwGetVideoModes * * @since Added in version 3.0. Replaces `glfwGetDesktopMode`. * @@ -1582,9 +2205,17 @@ GLFWAPI const GLFWvidmode* glfwGetVideoMode(GLFWmonitor* monitor); /*! @brief Generates a gamma ramp and sets it for the specified monitor. * - * This function generates a 256-element gamma ramp from the specified exponent - * and then calls @ref glfwSetGammaRamp with it. The value must be a finite - * number greater than zero. + * This function generates an appropriately sized gamma ramp from the specified + * exponent and then calls @ref glfwSetGammaRamp with it. The value must be + * a finite number greater than zero. + * + * The software controlled gamma ramp is applied _in addition_ to the hardware + * gamma correction, which today is usually an approximation of sRGB gamma. + * This means that setting a perfectly linear ramp, or gamma 1.0, will produce + * the default (usually sRGB-like) behavior. + * + * For gamma correct rendering with OpenGL or OpenGL ES, see the @ref + * GLFW_SRGB_CAPABLE hint. * * @param[in] monitor The monitor whose gamma ramp to set. * @param[in] gamma The desired exponent. @@ -1592,6 +2223,9 @@ GLFWAPI const GLFWvidmode* glfwGetVideoMode(GLFWmonitor* monitor); * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_VALUE and @ref GLFW_PLATFORM_ERROR. * + * @remark @wayland Gamma handling is a priviledged protocol, this function + * will thus never be implemented and emits @ref GLFW_PLATFORM_ERROR. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref monitor_gamma @@ -1613,6 +2247,10 @@ GLFWAPI void glfwSetGamma(GLFWmonitor* monitor, float gamma); * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland Gamma handling is a priviledged protocol, this function + * will thus never be implemented and emits @ref GLFW_PLATFORM_ERROR while + * returning `NULL`. + * * @pointer_lifetime The returned structure and its arrays are allocated and * freed by GLFW. You should not free them yourself. They are valid until the * specified monitor is disconnected, this function is called again for that @@ -1634,17 +2272,28 @@ GLFWAPI const GLFWgammaramp* glfwGetGammaRamp(GLFWmonitor* monitor); * original gamma ramp for that monitor is saved by GLFW the first time this * function is called and is restored by @ref glfwTerminate. * + * The software controlled gamma ramp is applied _in addition_ to the hardware + * gamma correction, which today is usually an approximation of sRGB gamma. + * This means that setting a perfectly linear ramp, or gamma 1.0, will produce + * the default (usually sRGB-like) behavior. + * + * For gamma correct rendering with OpenGL or OpenGL ES, see the @ref + * GLFW_SRGB_CAPABLE hint. + * * @param[in] monitor The monitor whose gamma ramp to set. * @param[in] ramp The gamma ramp to use. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * - * @remark Gamma ramp sizes other than 256 are not supported by all platforms - * or graphics hardware. + * @remark The size of the specified gamma ramp should match the size of the + * current ramp for that monitor. * * @remark @win32 The gamma ramp size must be 256. * + * @remark @wayland Gamma handling is a priviledged protocol, this function + * will thus never be implemented and emits @ref GLFW_PLATFORM_ERROR. + * * @pointer_lifetime The specified gamma ramp is copied before this function * returns. * @@ -1668,7 +2317,8 @@ GLFWAPI void glfwSetGammaRamp(GLFWmonitor* monitor, const GLFWgammaramp* ramp); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_hints - * @sa glfwWindowHint + * @sa @ref glfwWindowHint + * @sa @ref glfwWindowHintString * * @since Added in version 3.0. * @@ -1679,14 +2329,20 @@ GLFWAPI void glfwDefaultWindowHints(void); /*! @brief Sets the specified window hint to the desired value. * * This function sets hints for the next call to @ref glfwCreateWindow. The - * hints, once set, retain their values until changed by a call to @ref - * glfwWindowHint or @ref glfwDefaultWindowHints, or until the library is - * terminated. + * hints, once set, retain their values until changed by a call to this + * function or @ref glfwDefaultWindowHints, or until the library is terminated. + * + * Only integer value hints can be set with this function. String value hints + * are set with @ref glfwWindowHintString. * * This function does not check whether the specified hint values are valid. * If you set hints to invalid values this will instead be reported by the next * call to @ref glfwCreateWindow. * + * Some hints are platform specific. These may be set on any platform but they + * will only affect their specific platform. Other platforms will ignore them. + * Setting these hints requires no platform specific headers or functions. + * * @param[in] hint The [window hint](@ref window_hints) to set. * @param[in] value The new value of the window hint. * @@ -1696,7 +2352,8 @@ GLFWAPI void glfwDefaultWindowHints(void); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_hints - * @sa glfwDefaultWindowHints + * @sa @ref glfwWindowHintString + * @sa @ref glfwDefaultWindowHints * * @since Added in version 3.0. Replaces `glfwOpenWindowHint`. * @@ -1704,6 +2361,44 @@ GLFWAPI void glfwDefaultWindowHints(void); */ GLFWAPI void glfwWindowHint(int hint, int value); +/*! @brief Sets the specified window hint to the desired value. + * + * This function sets hints for the next call to @ref glfwCreateWindow. The + * hints, once set, retain their values until changed by a call to this + * function or @ref glfwDefaultWindowHints, or until the library is terminated. + * + * Only string type hints can be set with this function. Integer value hints + * are set with @ref glfwWindowHint. + * + * This function does not check whether the specified hint values are valid. + * If you set hints to invalid values this will instead be reported by the next + * call to @ref glfwCreateWindow. + * + * Some hints are platform specific. These may be set on any platform but they + * will only affect their specific platform. Other platforms will ignore them. + * Setting these hints requires no platform specific headers or functions. + * + * @param[in] hint The [window hint](@ref window_hints) to set. + * @param[in] value The new value of the window hint. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_INVALID_ENUM. + * + * @pointer_lifetime The specified string is copied before this function + * returns. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_hints + * @sa @ref glfwWindowHint + * @sa @ref glfwDefaultWindowHints + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI void glfwWindowHintString(int hint, const char* value); + /*! @brief Creates a window and its associated context. * * This function creates a window and its associated OpenGL or OpenGL ES @@ -1735,9 +2430,13 @@ GLFWAPI void glfwWindowHint(int hint, int value); * screen windows, including the creation of so called _windowed full screen_ * or _borderless full screen_ windows, see @ref window_windowed_full_screen. * + * Once you have created the window, you can switch it between windowed and + * full screen mode with @ref glfwSetWindowMonitor. This will not affect its + * OpenGL or OpenGL ES context. + * * By default, newly created windows use the placement recommended by the * window system. To create the window at a specific position, make it - * initially invisible using the [GLFW_VISIBLE](@ref window_hints_wnd) window + * initially invisible using the [GLFW_VISIBLE](@ref GLFW_VISIBLE_hint) window * hint, set its [position](@ref window_pos) and then [show](@ref window_hide) * it. * @@ -1771,35 +2470,47 @@ GLFWAPI void glfwWindowHint(int hint, int value); * @remark @win32 Window creation will fail if the Microsoft GDI software * OpenGL implementation is the only one available. * - * @remark @win32 If the executable has an icon resource named `GLFW_ICON,` - * it will be set as the icon for the window. If no such icon is present, the - * `IDI_WINLOGO` icon will be used instead. + * @remark @win32 If the executable has an icon resource named `GLFW_ICON,` it + * will be set as the initial icon for the window. If no such icon is present, + * the `IDI_APPLICATION` icon will be used instead. To set a different icon, + * see @ref glfwSetWindowIcon. * * @remark @win32 The context to share resources with must not be current on * any other thread. * - * @remark @osx The GLFW window has no icon, as it is not a document + * @remark @macos The OS only supports forward-compatible core profile contexts + * for OpenGL versions 3.2 and later. Before creating an OpenGL context of + * version 3.2 or later you must set the + * [GLFW_OPENGL_FORWARD_COMPAT](@ref GLFW_OPENGL_FORWARD_COMPAT_hint) and + * [GLFW_OPENGL_PROFILE](@ref GLFW_OPENGL_PROFILE_hint) hints accordingly. + * OpenGL 3.0 and 3.1 contexts are not supported at all on macOS. + * + * @remark @macos The GLFW window has no icon, as it is not a document * window, but the dock icon will be the same as the application bundle's icon. * For more information on bundles, see the * [Bundle Programming Guide](https://developer.apple.com/library/mac/documentation/CoreFoundation/Conceptual/CFBundles/) * in the Mac Developer Library. * - * @remark @osx The first time a window is created the menu bar is populated - * with common commands like Hide, Quit and About. The About entry opens - * a minimal about dialog with information from the application's bundle. The - * menu bar can be disabled with a - * [compile-time option](@ref compile_options_osx). - * - * @remark @osx On OS X 10.10 and later the window frame will not be rendered - * at full resolution on Retina displays unless the `NSHighResolutionCapable` - * key is enabled in the application bundle's `Info.plist`. For more - * information, see + * @remark @macos The first time a window is created the menu bar is created. + * If GLFW finds a `MainMenu.nib` it is loaded and assumed to contain a menu + * bar. Otherwise a minimal menu bar is created manually with common commands + * like Hide, Quit and About. The About entry opens a minimal about dialog + * with information from the application's bundle. Menu bar creation can be + * disabled entirely with the @ref GLFW_COCOA_MENUBAR init hint. + * + * @remark @macos On OS X 10.10 and later the window frame will not be rendered + * at full resolution on Retina displays unless the + * [GLFW_COCOA_RETINA_FRAMEBUFFER](@ref GLFW_COCOA_RETINA_FRAMEBUFFER_hint) + * hint is `GLFW_TRUE` and the `NSHighResolutionCapable` key is enabled in the + * application bundle's `Info.plist`. For more information, see * [High Resolution Guidelines for OS X](https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Explained/Explained.html) * in the Mac Developer Library. The GLFW test and example programs use * a custom `Info.plist` template for this, which can be found as * `CMake/MacOSXBundleInfo.plist.in` in the source tree. * - * @remark @x11 There is no mechanism for setting the window icon yet. + * @remark @macos When activating frame autosaving with + * [GLFW_COCOA_FRAME_NAME](@ref GLFW_COCOA_FRAME_NAME_hint), the specified + * window size and position may be overriden by previously saved values. * * @remark @x11 Some window managers will not respect the placement of * initially hidden windows. @@ -1809,12 +2520,32 @@ GLFWAPI void glfwWindowHint(int hint, int value); * query the final size, position or other attributes directly after window * creation. * - * @reentrancy This function must not be called from a callback. + * @remark @x11 The class part of the `WM_CLASS` window property will by + * default be set to the window title passed to this function. The instance + * part will use the contents of the `RESOURCE_NAME` environment variable, if + * present and not empty, or fall back to the window title. Set the + * [GLFW_X11_CLASS_NAME](@ref GLFW_X11_CLASS_NAME_hint) and + * [GLFW_X11_INSTANCE_NAME](@ref GLFW_X11_INSTANCE_NAME_hint) window hints to + * override this. + * + * @remark @wayland Compositors should implement the xdg-decoration protocol + * for GLFW to decorate the window properly. If this protocol isn't + * supported, or if the compositor prefers client-side decorations, a very + * simple fallback frame will be drawn using the wp_viewporter protocol. A + * compositor can still emit close, maximize or fullscreen events, using for + * instance a keybind mechanism. If neither of these protocols is supported, + * the window won't be decorated. + * + * @remark @wayland A full screen window will not attempt to change the mode, + * no matter what the requested size or refresh rate. + * + * @remark @wayland Screensaver inhibition requires the idle-inhibit protocol + * to be implemented in the user's compositor. * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_creation - * @sa glfwDestroyWindow + * @sa @ref glfwDestroyWindow * * @since Added in version 3.0. Replaces `glfwOpenWindow`. * @@ -1843,7 +2574,7 @@ GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title, G * @thread_safety This function must only be called from the main thread. * * @sa @ref window_creation - * @sa glfwCreateWindow + * @sa @ref glfwCreateWindow * * @since Added in version 3.0. Replaces `glfwCloseWindow`. * @@ -1904,7 +2635,7 @@ GLFWAPI void glfwSetWindowShouldClose(GLFWwindow* window, int value); * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * - * @remark @osx The window title will not be updated until the next time you + * @remark @macos The window title will not be updated until the next time you * process events. * * @thread_safety This function must only be called from the main thread. @@ -1925,6 +2656,10 @@ GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title); * selected. If no images are specified, the window reverts to its default * icon. * + * The pixels are 32-bit, little-endian, non-premultiplied RGBA, i.e. eight + * bits per channel with the red channel first. They are arranged canonically + * as packed sequential rows, starting from the top-left corner. + * * The desired image sizes varies depending on platform and system settings. * The selected images will be rescaled as needed. Good sizes include 16x16, * 32x32 and 48x48. @@ -1941,12 +2676,16 @@ GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title); * @pointer_lifetime The specified image data is copied before this function * returns. * - * @remark @osx The GLFW window has no icon, as it is not a document - * window, but the dock icon will be the same as the application bundle's icon. - * For more information on bundles, see the + * @remark @macos The GLFW window has no icon, as it is not a document + * window, so this function does nothing. The dock icon will be the same as + * the application bundle's icon. For more information on bundles, see the * [Bundle Programming Guide](https://developer.apple.com/library/mac/documentation/CoreFoundation/Conceptual/CFBundles/) * in the Mac Developer Library. * + * @remark @wayland There is no existing protocol to change an icon, the + * window will thus inherit the one defined in the application's desktop file. + * This function always emits @ref GLFW_PLATFORM_ERROR. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_icon @@ -1957,27 +2696,31 @@ GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title); */ GLFWAPI void glfwSetWindowIcon(GLFWwindow* window, int count, const GLFWimage* images); -/*! @brief Retrieves the position of the client area of the specified window. +/*! @brief Retrieves the position of the content area of the specified window. * * This function retrieves the position, in screen coordinates, of the - * upper-left corner of the client area of the specified window. + * upper-left corner of the content area of the specified window. * * Any or all of the position arguments may be `NULL`. If an error occurs, all * non-`NULL` position arguments will be set to zero. * * @param[in] window The window to query. * @param[out] xpos Where to store the x-coordinate of the upper-left corner of - * the client area, or `NULL`. + * the content area, or `NULL`. * @param[out] ypos Where to store the y-coordinate of the upper-left corner of - * the client area, or `NULL`. + * the content area, or `NULL`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland There is no way for an application to retrieve the global + * position of its windows, this function will always emit @ref + * GLFW_PLATFORM_ERROR. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_pos - * @sa glfwSetWindowPos + * @sa @ref glfwSetWindowPos * * @since Added in version 3.0. * @@ -1985,10 +2728,10 @@ GLFWAPI void glfwSetWindowIcon(GLFWwindow* window, int count, const GLFWimage* i */ GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos); -/*! @brief Sets the position of the client area of the specified window. +/*! @brief Sets the position of the content area of the specified window. * * This function sets the position, in screen coordinates, of the upper-left - * corner of the client area of the specified windowed mode window. If the + * corner of the content area of the specified windowed mode window. If the * window is a full screen window, this function does nothing. * * __Do not use this function__ to move an already visible window unless you @@ -1998,16 +2741,20 @@ GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos); * cannot and should not override these limits. * * @param[in] window The window to query. - * @param[in] xpos The x-coordinate of the upper-left corner of the client area. - * @param[in] ypos The y-coordinate of the upper-left corner of the client area. + * @param[in] xpos The x-coordinate of the upper-left corner of the content area. + * @param[in] ypos The y-coordinate of the upper-left corner of the content area. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland There is no way for an application to set the global + * position of its windows, this function will always emit @ref + * GLFW_PLATFORM_ERROR. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_pos - * @sa glfwGetWindowPos + * @sa @ref glfwGetWindowPos * * @since Added in version 1.0. * @glfw3 Added window handle parameter. @@ -2016,9 +2763,9 @@ GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos); */ GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos); -/*! @brief Retrieves the size of the client area of the specified window. +/*! @brief Retrieves the size of the content area of the specified window. * - * This function retrieves the size, in screen coordinates, of the client area + * This function retrieves the size, in screen coordinates, of the content area * of the specified window. If you wish to retrieve the size of the * framebuffer of the window in pixels, see @ref glfwGetFramebufferSize. * @@ -2027,9 +2774,9 @@ GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos); * * @param[in] window The window whose size to retrieve. * @param[out] width Where to store the width, in screen coordinates, of the - * client area, or `NULL`. + * content area, or `NULL`. * @param[out] height Where to store the height, in screen coordinates, of the - * client area, or `NULL`. + * content area, or `NULL`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. @@ -2037,7 +2784,7 @@ GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_size - * @sa glfwSetWindowSize + * @sa @ref glfwSetWindowSize * * @since Added in version 1.0. * @glfw3 Added window handle parameter. @@ -2048,34 +2795,40 @@ GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height); /*! @brief Sets the size limits of the specified window. * - * This function sets the size limits of the client area of the specified - * window. If the window is full screen, the size limits only take effect if + * This function sets the size limits of the content area of the specified + * window. If the window is full screen, the size limits only take effect * once it is made windowed. If the window is not resizable, this function * does nothing. * * The size limits are applied immediately to a windowed mode window and may * cause it to be resized. * + * The maximum dimensions must be greater than or equal to the minimum + * dimensions and all must be greater than or equal to zero. + * * @param[in] window The window to set limits for. - * @param[in] minwidth The minimum width, in screen coordinates, of the client + * @param[in] minwidth The minimum width, in screen coordinates, of the content * area, or `GLFW_DONT_CARE`. * @param[in] minheight The minimum height, in screen coordinates, of the - * client area, or `GLFW_DONT_CARE`. - * @param[in] maxwidth The maximum width, in screen coordinates, of the client + * content area, or `GLFW_DONT_CARE`. + * @param[in] maxwidth The maximum width, in screen coordinates, of the content * area, or `GLFW_DONT_CARE`. * @param[in] maxheight The maximum height, in screen coordinates, of the - * client area, or `GLFW_DONT_CARE`. + * content area, or `GLFW_DONT_CARE`. * - * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref - * GLFW_PLATFORM_ERROR. + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_VALUE and @ref GLFW_PLATFORM_ERROR. * * @remark If you set size limits and an aspect ratio that conflict, the * results are undefined. * + * @remark @wayland The size limits will not be applied until the window is + * actually resized, either by the user or by the compositor. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_sizelimits - * @sa glfwSetWindowAspectRatio + * @sa @ref glfwSetWindowAspectRatio * * @since Added in version 3.2. * @@ -2085,7 +2838,7 @@ GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow* window, int minwidth, int minhe /*! @brief Sets the aspect ratio of the specified window. * - * This function sets the required aspect ratio of the client area of the + * This function sets the required aspect ratio of the content area of the * specified window. If the window is full screen, the aspect ratio only takes * effect once it is made windowed. If the window is not resizable, this * function does nothing. @@ -2112,10 +2865,13 @@ GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow* window, int minwidth, int minhe * @remark If you set size limits and an aspect ratio that conflict, the * results are undefined. * + * @remark @wayland The aspect ratio will not be applied until the window is + * actually resized, either by the user or by the compositor. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_sizelimits - * @sa glfwSetWindowSizeLimits + * @sa @ref glfwSetWindowSizeLimits * * @since Added in version 3.2. * @@ -2123,9 +2879,9 @@ GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow* window, int minwidth, int minhe */ GLFWAPI void glfwSetWindowAspectRatio(GLFWwindow* window, int numer, int denom); -/*! @brief Sets the size of the client area of the specified window. +/*! @brief Sets the size of the content area of the specified window. * - * This function sets the size, in screen coordinates, of the client area of + * This function sets the size, in screen coordinates, of the content area of * the specified window. * * For full screen windows, this function updates the resolution of its desired @@ -2141,18 +2897,21 @@ GLFWAPI void glfwSetWindowAspectRatio(GLFWwindow* window, int numer, int denom); * * @param[in] window The window to resize. * @param[in] width The desired width, in screen coordinates, of the window - * client area. + * content area. * @param[in] height The desired height, in screen coordinates, of the window - * client area. + * content area. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland A full screen window will not attempt to change the mode, + * no matter what the requested size. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_size - * @sa glfwGetWindowSize - * @sa glfwSetWindowMonitor + * @sa @ref glfwGetWindowSize + * @sa @ref glfwSetWindowMonitor * * @since Added in version 1.0. * @glfw3 Added window handle parameter. @@ -2182,7 +2941,7 @@ GLFWAPI void glfwSetWindowSize(GLFWwindow* window, int width, int height); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_fbsize - * @sa glfwSetFramebufferSizeCallback + * @sa @ref glfwSetFramebufferSizeCallback * * @since Added in version 3.0. * @@ -2227,6 +2986,95 @@ GLFWAPI void glfwGetFramebufferSize(GLFWwindow* window, int* width, int* height) */ GLFWAPI void glfwGetWindowFrameSize(GLFWwindow* window, int* left, int* top, int* right, int* bottom); +/*! @brief Retrieves the content scale for the specified window. + * + * This function retrieves the content scale for the specified window. The + * content scale is the ratio between the current DPI and the platform's + * default DPI. This is especially important for text and any UI elements. If + * the pixel dimensions of your UI scaled by this look appropriate on your + * machine then it should appear at a reasonable size on other machines + * regardless of their DPI and scaling settings. This relies on the system DPI + * and scaling settings being somewhat correct. + * + * On systems where each monitors can have its own content scale, the window + * content scale will depend on which monitor the system considers the window + * to be on. + * + * @param[in] window The window to query. + * @param[out] xscale Where to store the x-axis content scale, or `NULL`. + * @param[out] yscale Where to store the y-axis content scale, or `NULL`. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_scale + * @sa @ref glfwSetWindowContentScaleCallback + * @sa @ref glfwGetMonitorContentScale + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI void glfwGetWindowContentScale(GLFWwindow* window, float* xscale, float* yscale); + +/*! @brief Returns the opacity of the whole window. + * + * This function returns the opacity of the window, including any decorations. + * + * The opacity (or alpha) value is a positive finite number between zero and + * one, where zero is fully transparent and one is fully opaque. If the system + * does not support whole window transparency, this function always returns one. + * + * The initial opacity value for newly created windows is one. + * + * @param[in] window The window to query. + * @return The opacity value of the specified window. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_transparency + * @sa @ref glfwSetWindowOpacity + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI float glfwGetWindowOpacity(GLFWwindow* window); + +/*! @brief Sets the opacity of the whole window. + * + * This function sets the opacity of the window, including any decorations. + * + * The opacity (or alpha) value is a positive finite number between zero and + * one, where zero is fully transparent and one is fully opaque. + * + * The initial opacity value for newly created windows is one. + * + * A window created with framebuffer transparency may not use whole window + * transparency. The results of doing this are undefined. + * + * @param[in] window The window to set the opacity for. + * @param[in] opacity The desired opacity of the specified window. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_transparency + * @sa @ref glfwGetWindowOpacity + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI void glfwSetWindowOpacity(GLFWwindow* window, float opacity); + /*! @brief Iconifies the specified window. * * This function iconifies (minimizes) the specified window if it was @@ -2241,11 +3089,15 @@ GLFWAPI void glfwGetWindowFrameSize(GLFWwindow* window, int* left, int* top, int * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland There is no concept of iconification in wl_shell, this + * function will emit @ref GLFW_PLATFORM_ERROR when using this deprecated + * protocol. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_iconify - * @sa glfwRestoreWindow - * @sa glfwMaximizeWindow + * @sa @ref glfwRestoreWindow + * @sa @ref glfwMaximizeWindow * * @since Added in version 2.1. * @glfw3 Added window handle parameter. @@ -2271,8 +3123,8 @@ GLFWAPI void glfwIconifyWindow(GLFWwindow* window); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_iconify - * @sa glfwIconifyWindow - * @sa glfwMaximizeWindow + * @sa @ref glfwIconifyWindow + * @sa @ref glfwMaximizeWindow * * @since Added in version 2.1. * @glfw3 Added window handle parameter. @@ -2290,12 +3142,15 @@ GLFWAPI void glfwRestoreWindow(GLFWwindow* window); * * @param[in] window The window to maximize. * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * * @par Thread Safety * This function may only be called from the main thread. * * @sa @ref window_iconify - * @sa glfwIconifyWindow - * @sa glfwRestoreWindow + * @sa @ref glfwIconifyWindow + * @sa @ref glfwRestoreWindow * * @since Added in GLFW 3.2. * @@ -2309,6 +3164,11 @@ GLFWAPI void glfwMaximizeWindow(GLFWwindow* window); * hidden. If the window is already visible or is in full screen mode, this * function does nothing. * + * By default, windowed mode windows are focused when shown + * Set the [GLFW_FOCUS_ON_SHOW](@ref GLFW_FOCUS_ON_SHOW_hint) window hint + * to change this behavior for all newly created windows, or change the + * behavior for an existing window with @ref glfwSetWindowAttrib. + * * @param[in] window The window to make visible. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref @@ -2317,7 +3177,7 @@ GLFWAPI void glfwMaximizeWindow(GLFWwindow* window); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_hide - * @sa glfwHideWindow + * @sa @ref glfwHideWindow * * @since Added in version 3.0. * @@ -2339,7 +3199,7 @@ GLFWAPI void glfwShowWindow(GLFWwindow* window); * @thread_safety This function must only be called from the main thread. * * @sa @ref window_hide - * @sa glfwShowWindow + * @sa @ref glfwShowWindow * * @since Added in version 3.0. * @@ -2353,21 +3213,32 @@ GLFWAPI void glfwHideWindow(GLFWwindow* window); * The window should already be visible and not iconified. * * By default, both windowed and full screen mode windows are focused when - * initially created. Set the [GLFW_FOCUSED](@ref window_hints_wnd) to disable - * this behavior. + * initially created. Set the [GLFW_FOCUSED](@ref GLFW_FOCUSED_hint) to + * disable this behavior. + * + * Also by default, windowed mode windows are focused when shown + * with @ref glfwShowWindow. Set the + * [GLFW_FOCUS_ON_SHOW](@ref GLFW_FOCUS_ON_SHOW_hint) to disable this behavior. * * __Do not use this function__ to steal focus from other applications unless * you are certain that is what the user wants. Focus stealing can be * extremely disruptive. * + * For a less disruptive way of getting the user's attention, see + * [attention requests](@ref window_attention). + * * @param[in] window The window to give input focus. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark @wayland It is not possible for an application to bring its windows + * to front, this function will always emit @ref GLFW_PLATFORM_ERROR. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_focus + * @sa @ref window_attention * * @since Added in version 3.2. * @@ -2375,21 +3246,48 @@ GLFWAPI void glfwHideWindow(GLFWwindow* window); */ GLFWAPI void glfwFocusWindow(GLFWwindow* window); +/*! @brief Requests user attention to the specified window. + * + * This function requests user attention to the specified window. On + * platforms where this is not supported, attention is requested to the + * application as a whole. + * + * Once the user has given attention, usually by focusing the window or + * application, the system will end the request automatically. + * + * @param[in] window The window to request attention to. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @remark @macos Attention is requested to the application as a whole, not the + * specific window. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_attention + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI void glfwRequestWindowAttention(GLFWwindow* window); + /*! @brief Returns the monitor that the window uses for full screen mode. * * This function returns the handle of the monitor that the specified window is * in full screen on. * * @param[in] window The window to query. - * @return The monitor, or `NULL` if the window is in windowed mode or an error - * occurred. + * @return The monitor, or `NULL` if the window is in windowed mode or an + * [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_monitor - * @sa glfwSetWindowMonitor + * @sa @ref glfwSetWindowMonitor * * @since Added in version 3.0. * @@ -2407,7 +3305,7 @@ GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window); * The window position is ignored when setting a monitor. * * When the monitor is `NULL`, the position, width and height are used to - * place the window client area. The refresh rate is ignored when no monitor + * place the window content area. The refresh rate is ignored when no monitor * is specified. * * If you only wish to update the resolution of a full screen window or the @@ -2415,29 +3313,40 @@ GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window); * * When a window transitions from full screen to windowed mode, this function * restores any previous window settings such as whether it is decorated, - * floating, resizable, has size or aspect ratio limits, etc.. + * floating, resizable, has size or aspect ratio limits, etc. * * @param[in] window The window whose monitor, size or video mode to set. * @param[in] monitor The desired monitor, or `NULL` to set windowed mode. * @param[in] xpos The desired x-coordinate of the upper-left corner of the - * client area. + * content area. * @param[in] ypos The desired y-coordinate of the upper-left corner of the - * client area. - * @param[in] width The desired with, in screen coordinates, of the client area - * or video mode. - * @param[in] height The desired height, in screen coordinates, of the client + * content area. + * @param[in] width The desired with, in screen coordinates, of the content * area or video mode. - * @param[in] refreshRate The desired refresh rate, in Hz, of the video mode. + * @param[in] height The desired height, in screen coordinates, of the content + * area or video mode. + * @param[in] refreshRate The desired refresh rate, in Hz, of the video mode, + * or `GLFW_DONT_CARE`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * + * @remark The OpenGL or OpenGL ES context will not be destroyed or otherwise + * affected by any resizing or mode switching, although you may need to update + * your viewport if the framebuffer size has changed. + * + * @remark @wayland The desired window position is ignored, as there is no way + * for an application to set this property. + * + * @remark @wayland Setting the window to full screen will not attempt to + * change the mode, no matter what the requested size or refresh rate. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_monitor * @sa @ref window_full_screen - * @sa glfwGetWindowMonitor - * @sa glfwSetWindowSize + * @sa @ref glfwGetWindowMonitor + * @sa @ref glfwSetWindowSize * * @since Added in version 3.2. * @@ -2450,33 +3359,71 @@ GLFWAPI void glfwSetWindowMonitor(GLFWwindow* window, GLFWmonitor* monitor, int * This function returns the value of an attribute of the specified window or * its OpenGL or OpenGL ES context. * - * @param[in] window The window to query. - * @param[in] attrib The [window attribute](@ref window_attribs) whose value to - * return. - * @return The value of the attribute, or zero if an - * [error](@ref error_handling) occurred. + * @param[in] window The window to query. + * @param[in] attrib The [window attribute](@ref window_attribs) whose value to + * return. + * @return The value of the attribute, or zero if an + * [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. + * + * @remark Framebuffer related hints are not window attributes. See @ref + * window_attribs_fb for more information. + * + * @remark Zero is a valid value for many window and context related + * attributes so you cannot use a return value of zero as an indication of + * errors. However, this function should not fail as long as it is passed + * valid arguments and the library has been [initialized](@ref intro_init). + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_attribs + * @sa @ref glfwSetWindowAttrib + * + * @since Added in version 3.0. Replaces `glfwGetWindowParam` and + * `glfwGetGLVersion`. + * + * @ingroup window + */ +GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib); + +/*! @brief Sets an attribute of the specified window. + * + * This function sets the value of an attribute of the specified window. + * + * The supported attributes are [GLFW_DECORATED](@ref GLFW_DECORATED_attrib), + * [GLFW_RESIZABLE](@ref GLFW_RESIZABLE_attrib), + * [GLFW_FLOATING](@ref GLFW_FLOATING_attrib), + * [GLFW_AUTO_ICONIFY](@ref GLFW_AUTO_ICONIFY_attrib) and + * [GLFW_FOCUS_ON_SHOW](@ref GLFW_FOCUS_ON_SHOW_attrib). + * + * Some of these attributes are ignored for full screen windows. The new + * value will take effect if the window is later made windowed. + * + * Some of these attributes are ignored for windowed mode windows. The new + * value will take effect if the window is later made full screen. + * + * @param[in] window The window to set the attribute for. + * @param[in] attrib A supported window attribute. + * @param[in] value `GLFW_TRUE` or `GLFW_FALSE`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref - * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. - * - * @remark Framebuffer related hints are not window attributes. See @ref - * window_attribs_fb for more information. + * GLFW_INVALID_ENUM, @ref GLFW_INVALID_VALUE and @ref GLFW_PLATFORM_ERROR. * - * @remark Zero is a valid value for many window and context related - * attributes so you cannot use a return value of zero as an indication of - * errors. However, this function should not fail as long as it is passed - * valid arguments and the library has been [initialized](@ref intro_init). + * @remark Calling @ref glfwGetWindowAttrib will always return the latest + * value, even if that value is ignored by the current mode of the window. * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_attribs + * @sa @ref glfwGetWindowAttrib * - * @since Added in version 3.0. Replaces `glfwGetWindowParam` and - * `glfwGetGLVersion`. + * @since Added in version 3.3. * * @ingroup window */ -GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib); +GLFWAPI void glfwSetWindowAttrib(GLFWwindow* window, int attrib, int value); /*! @brief Sets the user pointer of the specified window. * @@ -2493,7 +3440,7 @@ GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib); * synchronized. * * @sa @ref window_userptr - * @sa glfwGetWindowUserPointer + * @sa @ref glfwGetWindowUserPointer * * @since Added in version 3.0. * @@ -2514,7 +3461,7 @@ GLFWAPI void glfwSetWindowUserPointer(GLFWwindow* window, void* pointer); * synchronized. * * @sa @ref window_userptr - * @sa glfwSetWindowUserPointer + * @sa @ref glfwSetWindowUserPointer * * @since Added in version 3.0. * @@ -2525,8 +3472,9 @@ GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow* window); /*! @brief Sets the position callback for the specified window. * * This function sets the position callback of the specified window, which is - * called when the window is moved. The callback is provided with the screen - * position of the upper-left corner of the client area of the window. + * called when the window is moved. The callback is provided with the + * position, in screen coordinates, of the upper-left corner of the content + * area of the window. * * @param[in] window The window whose callback to set. * @param[in] cbfun The new callback, or `NULL` to remove the currently set @@ -2536,6 +3484,9 @@ GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow* window); * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * + * @remark @wayland This callback will never be called, as there is no way for + * an application to know its global position. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_pos @@ -2550,7 +3501,7 @@ GLFWAPI GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow* window, GLFWwindow * * This function sets the size callback of the specified window, which is * called when the window is resized. The callback is provided with the size, - * in screen coordinates, of the client area of the window. + * in screen coordinates, of the content area of the window. * * @param[in] window The window whose callback to set. * @param[in] cbfun The new callback, or `NULL` to remove the currently set @@ -2590,8 +3541,8 @@ GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow* window, GLFWwind * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * - * @remark @osx Selecting Quit from the application menu will trigger the close - * callback for all windows. + * @remark @macos Selecting Quit from the application menu will trigger the + * close callback for all windows. * * @thread_safety This function must only be called from the main thread. * @@ -2607,12 +3558,12 @@ GLFWAPI GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow* window, GLFWwi /*! @brief Sets the refresh callback for the specified window. * * This function sets the refresh callback of the specified window, which is - * called when the client area of the window needs to be redrawn, for example + * called when the content area of the window needs to be redrawn, for example * if the window has been exposed after having been covered by another window. * - * On compositing window systems such as Aero, Compiz or Aqua, where the window - * contents are saved off-screen, this callback may be called only very - * infrequently or never at all. + * On compositing window systems such as Aero, Compiz, Aqua or Wayland, where + * the window contents are saved off-screen, this callback may be called only + * very infrequently or never at all. * * @param[in] window The window whose callback to set. * @param[in] cbfun The new callback, or `NULL` to remove the currently set @@ -2674,6 +3625,9 @@ GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow* window, GLFWwi * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * + * @remark @wayland The wl_shell protocol has no concept of iconification, + * this callback will never be called when using this deprecated protocol. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref window_iconify @@ -2684,6 +3638,29 @@ GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow* window, GLFWwi */ GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow* window, GLFWwindowiconifyfun cbfun); +/*! @brief Sets the maximize callback for the specified window. + * + * This function sets the maximization callback of the specified window, which + * is called when the window is maximized or restored. + * + * @param[in] window The window whose callback to set. + * @param[in] cbfun The new callback, or `NULL` to remove the currently set + * callback. + * @return The previously set callback, or `NULL` if no callback was set or the + * library had not been [initialized](@ref intro_init). + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_maximize + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI GLFWwindowmaximizefun glfwSetWindowMaximizeCallback(GLFWwindow* window, GLFWwindowmaximizefun cbfun); + /*! @brief Sets the framebuffer resize callback for the specified window. * * This function sets the framebuffer resize callback of the specified window, @@ -2707,6 +3684,30 @@ GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow* window, GL */ GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window, GLFWframebuffersizefun cbfun); +/*! @brief Sets the window content scale callback for the specified window. + * + * This function sets the window content scale callback of the specified window, + * which is called when the content scale of the specified window changes. + * + * @param[in] window The window whose callback to set. + * @param[in] cbfun The new callback, or `NULL` to remove the currently set + * callback. + * @return The previously set callback, or `NULL` if no callback was set or the + * library had not been [initialized](@ref intro_init). + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref window_scale + * @sa @ref glfwGetWindowContentScale + * + * @since Added in version 3.3. + * + * @ingroup window + */ +GLFWAPI GLFWwindowcontentscalefun glfwSetWindowContentScaleCallback(GLFWwindow* window, GLFWwindowcontentscalefun cbfun); + /*! @brief Processes all pending events. * * This function processes only those events that are already in the event @@ -2719,9 +3720,12 @@ GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window * [window refresh callback](@ref window_refresh) to redraw the contents of * your window when necessary during such operations. * - * On some platforms, certain events are sent directly to the application - * without going through the event queue, causing callbacks to be called - * outside of a call to one of the event processing functions. + * Do not assume that callbacks you set will _only_ be called in response to + * event processing functions like this one. While it is necessary to poll for + * events, window systems that require GLFW to register callbacks of its own + * can pass events to GLFW in response to many window system function calls. + * GLFW will pass those events on to the application callbacks before + * returning. * * Event processing is not required for joystick input to work. * @@ -2733,8 +3737,8 @@ GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window * @thread_safety This function must only be called from the main thread. * * @sa @ref events - * @sa glfwWaitEvents - * @sa glfwWaitEventsTimeout + * @sa @ref glfwWaitEvents + * @sa @ref glfwWaitEventsTimeout * * @since Added in version 1.0. * @@ -2761,12 +3765,12 @@ GLFWAPI void glfwPollEvents(void); * [window refresh callback](@ref window_refresh) to redraw the contents of * your window when necessary during such operations. * - * On some platforms, certain callbacks may be called outside of a call to one - * of the event processing functions. - * - * If no windows exist, this function returns immediately. For synchronization - * of threads in applications that do not create windows, use your threading - * library of choice. + * Do not assume that callbacks you set will _only_ be called in response to + * event processing functions like this one. While it is necessary to poll for + * events, window systems that require GLFW to register callbacks of its own + * can pass events to GLFW in response to many window system function calls. + * GLFW will pass those events on to the application callbacks before + * returning. * * Event processing is not required for joystick input to work. * @@ -2778,8 +3782,8 @@ GLFWAPI void glfwPollEvents(void); * @thread_safety This function must only be called from the main thread. * * @sa @ref events - * @sa glfwPollEvents - * @sa glfwWaitEventsTimeout + * @sa @ref glfwPollEvents + * @sa @ref glfwWaitEventsTimeout * * @since Added in version 2.5. * @@ -2808,24 +3812,27 @@ GLFWAPI void glfwWaitEvents(void); * [window refresh callback](@ref window_refresh) to redraw the contents of * your window when necessary during such operations. * - * On some platforms, certain callbacks may be called outside of a call to one - * of the event processing functions. - * - * If no windows exist, this function returns immediately. For synchronization - * of threads in applications that do not create windows, use your threading - * library of choice. + * Do not assume that callbacks you set will _only_ be called in response to + * event processing functions like this one. While it is necessary to poll for + * events, window systems that require GLFW to register callbacks of its own + * can pass events to GLFW in response to many window system function calls. + * GLFW will pass those events on to the application callbacks before + * returning. * * Event processing is not required for joystick input to work. * * @param[in] timeout The maximum amount of time, in seconds, to wait. * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_VALUE and @ref GLFW_PLATFORM_ERROR. + * * @reentrancy This function must not be called from a callback. * * @thread_safety This function must only be called from the main thread. * * @sa @ref events - * @sa glfwPollEvents - * @sa glfwWaitEvents + * @sa @ref glfwPollEvents + * @sa @ref glfwWaitEvents * * @since Added in version 3.2. * @@ -2836,11 +3843,7 @@ GLFWAPI void glfwWaitEventsTimeout(double timeout); /*! @brief Posts an empty event to the event queue. * * This function posts an empty event from the current thread to the event - * queue, causing @ref glfwWaitEvents to return. - * - * If no windows exist, this function returns immediately. For synchronization - * of threads in applications that do not create windows, use your threading - * library of choice. + * queue, causing @ref glfwWaitEvents or @ref glfwWaitEventsTimeout to return. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. @@ -2848,7 +3851,8 @@ GLFWAPI void glfwWaitEventsTimeout(double timeout); * @thread_safety This function may be called from any thread. * * @sa @ref events - * @sa glfwWaitEvents + * @sa @ref glfwWaitEvents + * @sa @ref glfwWaitEventsTimeout * * @since Added in version 3.1. * @@ -2859,19 +3863,21 @@ GLFWAPI void glfwPostEmptyEvent(void); /*! @brief Returns the value of an input option for the specified window. * * This function returns the value of an input option for the specified window. - * The mode must be one of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * The mode must be one of @ref GLFW_CURSOR, @ref GLFW_STICKY_KEYS, + * @ref GLFW_STICKY_MOUSE_BUTTONS, @ref GLFW_LOCK_KEY_MODS or + * @ref GLFW_RAW_MOUSE_MOTION. * * @param[in] window The window to query. - * @param[in] mode One of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * @param[in] mode One of `GLFW_CURSOR`, `GLFW_STICKY_KEYS`, + * `GLFW_STICKY_MOUSE_BUTTONS`, `GLFW_LOCK_KEY_MODS` or + * `GLFW_RAW_MOUSE_MOTION`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_INVALID_ENUM. * * @thread_safety This function must only be called from the main thread. * - * @sa glfwSetInputMode + * @sa @ref glfwSetInputMode * * @since Added in version 3.0. * @@ -2882,14 +3888,15 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode); /*! @brief Sets an input option for the specified window. * * This function sets an input mode option for the specified window. The mode - * must be one of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * must be one of @ref GLFW_CURSOR, @ref GLFW_STICKY_KEYS, + * @ref GLFW_STICKY_MOUSE_BUTTONS, @ref GLFW_LOCK_KEY_MODS or + * @ref GLFW_RAW_MOUSE_MOTION. * * If the mode is `GLFW_CURSOR`, the value must be one of the following cursor * modes: * - `GLFW_CURSOR_NORMAL` makes the cursor visible and behaving normally. - * - `GLFW_CURSOR_HIDDEN` makes the cursor invisible when it is over the client - * area of the window but does not restrict the cursor from leaving. + * - `GLFW_CURSOR_HIDDEN` makes the cursor invisible when it is over the + * content area of the window but does not restrict the cursor from leaving. * - `GLFW_CURSOR_DISABLED` hides and grabs the cursor, providing virtual * and unlimited cursor movement. This is useful for implementing for * example 3D camera controls. @@ -2909,9 +3916,22 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode); * you are only interested in whether mouse buttons have been pressed but not * when or in which order. * + * If the mode is `GLFW_LOCK_KEY_MODS`, the value must be either `GLFW_TRUE` to + * enable lock key modifier bits, or `GLFW_FALSE` to disable them. If enabled, + * callbacks that receive modifier bits will also have the @ref + * GLFW_MOD_CAPS_LOCK bit set when the event was generated with Caps Lock on, + * and the @ref GLFW_MOD_NUM_LOCK bit when Num Lock was on. + * + * If the mode is `GLFW_RAW_MOUSE_MOTION`, the value must be either `GLFW_TRUE` + * to enable raw (unscaled and unaccelerated) mouse motion when the cursor is + * disabled, or `GLFW_FALSE` to disable it. If raw motion is not supported, + * attempting to set this will emit @ref GLFW_PLATFORM_ERROR. Call @ref + * glfwRawMouseMotionSupported to check for support. + * * @param[in] window The window whose input mode to set. - * @param[in] mode One of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * @param[in] mode One of `GLFW_CURSOR`, `GLFW_STICKY_KEYS`, + * `GLFW_STICKY_MOUSE_BUTTONS`, `GLFW_LOCK_KEY_MODS` or + * `GLFW_RAW_MOUSE_MOTION`. * @param[in] value The new value of the specified input mode. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref @@ -2919,7 +3939,7 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode); * * @thread_safety This function must only be called from the main thread. * - * @sa glfwGetInputMode + * @sa @ref glfwGetInputMode * * @since Added in version 3.0. Replaces `glfwEnable` and `glfwDisable`. * @@ -2927,17 +3947,51 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode); */ GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value); -/*! @brief Returns the localized name of the specified printable key. +/*! @brief Returns whether raw mouse motion is supported. + * + * This function returns whether raw mouse motion is supported on the current + * system. This status does not change after GLFW has been initialized so you + * only need to check this once. If you attempt to enable raw motion on + * a system that does not support it, @ref GLFW_PLATFORM_ERROR will be emitted. + * + * Raw mouse motion is closer to the actual motion of the mouse across + * a surface. It is not affected by the scaling and acceleration applied to + * the motion of the desktop cursor. That processing is suitable for a cursor + * while raw motion is better for controlling for example a 3D camera. Because + * of this, raw mouse motion is only provided when the cursor is disabled. + * + * @return `GLFW_TRUE` if raw mouse motion is supported on the current machine, + * or `GLFW_FALSE` otherwise. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref raw_mouse_motion + * @sa @ref glfwSetInputMode + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI int glfwRawMouseMotionSupported(void); + +/*! @brief Returns the layout-specific name of the specified printable key. + * + * This function returns the name of the specified printable key, encoded as + * UTF-8. This is typically the character that key would produce without any + * modifier keys, intended for displaying key bindings to the user. For dead + * keys, it is typically the diacritic it would add to a character. * - * This function returns the localized name of the specified printable key. - * This is intended for displaying key bindings to the user. + * __Do not use this function__ for [text input](@ref input_char). You will + * break text input for many languages even if it happens to work for yours. * - * If the key is `GLFW_KEY_UNKNOWN`, the scancode is used instead, otherwise - * the scancode is ignored. If a non-printable key or (if the key is - * `GLFW_KEY_UNKNOWN`) a scancode that maps to a non-printable key is - * specified, this function returns `NULL`. + * If the key is `GLFW_KEY_UNKNOWN`, the scancode is used to identify the key, + * otherwise the scancode is ignored. If you specify a non-printable key, or + * `GLFW_KEY_UNKNOWN` and a scancode that maps to a non-printable key, this + * function returns `NULL` but does not emit an error. * - * This behavior allows you to pass in the arguments passed to the + * This behavior allows you to always pass in the arguments in the * [key callback](@ref input_key) without modification. * * The printable keys are: @@ -2963,9 +4017,13 @@ GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value); * - `GLFW_KEY_KP_ADD` * - `GLFW_KEY_KP_EQUAL` * + * Names for printable keys depend on keyboard layout, while names for + * non-printable keys are the same across layouts but depend on the application + * language and should be localized along with other user interface text. + * * @param[in] key The key to query, or `GLFW_KEY_UNKNOWN`. * @param[in] scancode The scancode of the key to query. - * @return The localized name of the key, or `NULL`. + * @return The UTF-8 encoded, layout-specific name of the key, or `NULL`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. @@ -2984,6 +4042,30 @@ GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value); */ GLFWAPI const char* glfwGetKeyName(int key, int scancode); +/*! @brief Returns the platform-specific scancode of the specified key. + * + * This function returns the platform-specific scancode of the specified key. + * + * If the key is `GLFW_KEY_UNKNOWN` or does not exist on the keyboard this + * method will return `-1`. + * + * @param[in] key Any [named key](@ref keys). + * @return The platform-specific scancode for the key, or `-1` if an + * [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. + * + * @thread_safety This function may be called from any thread. + * + * @sa @ref input_key + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI int glfwGetKeyScancode(int key); + /*! @brief Returns the last reported state of a keyboard key for the specified * window. * @@ -2992,7 +4074,7 @@ GLFWAPI const char* glfwGetKeyName(int key, int scancode); * `GLFW_RELEASE`. The higher-level action `GLFW_REPEAT` is only reported to * the key callback. * - * If the `GLFW_STICKY_KEYS` input mode is enabled, this function returns + * If the @ref GLFW_STICKY_KEYS input mode is enabled, this function returns * `GLFW_PRESS` the first time you call it for a key that was pressed, even if * that key has already been released. * @@ -3031,9 +4113,9 @@ GLFWAPI int glfwGetKey(GLFWwindow* window, int key); * to the specified window. The returned state is one of `GLFW_PRESS` or * `GLFW_RELEASE`. * - * If the `GLFW_STICKY_MOUSE_BUTTONS` input mode is enabled, this function - * `GLFW_PRESS` the first time you call it for a mouse button that was pressed, - * even if that mouse button has already been released. + * If the @ref GLFW_STICKY_MOUSE_BUTTONS input mode is enabled, this function + * returns `GLFW_PRESS` the first time you call it for a mouse button that was + * pressed, even if that mouse button has already been released. * * @param[in] window The desired window. * @param[in] button The desired [mouse button](@ref buttons). @@ -3053,11 +4135,11 @@ GLFWAPI int glfwGetKey(GLFWwindow* window, int key); */ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button); -/*! @brief Retrieves the position of the cursor relative to the client area of +/*! @brief Retrieves the position of the cursor relative to the content area of * the window. * * This function returns the position of the cursor, in screen coordinates, - * relative to the upper-left corner of the client area of the specified + * relative to the upper-left corner of the content area of the specified * window. * * If the cursor is disabled (with `GLFW_CURSOR_DISABLED`) then the cursor @@ -3073,9 +4155,9 @@ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button); * * @param[in] window The desired window. * @param[out] xpos Where to store the cursor x-coordinate, relative to the - * left edge of the client area, or `NULL`. + * left edge of the content area, or `NULL`. * @param[out] ypos Where to store the cursor y-coordinate, relative to the to - * top edge of the client area, or `NULL`. + * top edge of the content area, or `NULL`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. @@ -3083,7 +4165,7 @@ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button); * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_pos - * @sa glfwSetCursorPos + * @sa @ref glfwSetCursorPos * * @since Added in version 3.0. Replaces `glfwGetMousePos`. * @@ -3091,11 +4173,11 @@ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button); */ GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos); -/*! @brief Sets the position of the cursor, relative to the client area of the +/*! @brief Sets the position of the cursor, relative to the content area of the * window. * * This function sets the position, in screen coordinates, of the cursor - * relative to the upper-left corner of the client area of the specified + * relative to the upper-left corner of the content area of the specified * window. The window must have input focus. If the window does not have * input focus when this function is called, it fails silently. * @@ -3110,21 +4192,20 @@ GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos); * * @param[in] window The desired window. * @param[in] xpos The desired x-coordinate, relative to the left edge of the - * client area. + * content area. * @param[in] ypos The desired y-coordinate, relative to the top edge of the - * client area. + * content area. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * - * @remark @x11 Due to the asynchronous nature of X11, it may take a moment for - * the window focus event to arrive. This means you may not be able to set the - * cursor position directly after window creation. + * @remark @wayland This function will only work when the cursor mode is + * `GLFW_CURSOR_DISABLED`, otherwise it will do nothing. * * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_pos - * @sa glfwGetCursorPos + * @sa @ref glfwGetCursorPos * * @since Added in version 3.0. Replaces `glfwSetMousePos`. * @@ -3139,8 +4220,8 @@ GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos); * Any remaining cursors are destroyed by @ref glfwTerminate. * * The pixels are 32-bit, little-endian, non-premultiplied RGBA, i.e. eight - * bits per channel. They are arranged canonically as packed sequential rows, - * starting from the top-left corner. + * bits per channel with the red channel first. They are arranged canonically + * as packed sequential rows, starting from the top-left corner. * * The cursor hotspot is specified in pixels, relative to the upper-left corner * of the cursor image. Like all other coordinate systems in GLFW, the X-axis @@ -3158,13 +4239,11 @@ GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos); * @pointer_lifetime The specified image data is copied before this function * returns. * - * @reentrancy This function must not be called from a callback. - * * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_object - * @sa glfwDestroyCursor - * @sa glfwCreateStandardCursor + * @sa @ref glfwDestroyCursor + * @sa @ref glfwCreateStandardCursor * * @since Added in version 3.1. * @@ -3184,12 +4263,10 @@ GLFWAPI GLFWcursor* glfwCreateCursor(const GLFWimage* image, int xhot, int yhot) * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. * - * @reentrancy This function must not be called from a callback. - * * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_object - * @sa glfwCreateCursor + * @sa @ref glfwCreateCursor * * @since Added in version 3.1. * @@ -3203,6 +4280,9 @@ GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape); * glfwCreateCursor. Any remaining cursors will be destroyed by @ref * glfwTerminate. * + * If the specified cursor is current for any window, that window will be + * reverted to the default cursor. This does not affect the cursor mode. + * * @param[in] cursor The cursor object to destroy. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref @@ -3213,7 +4293,7 @@ GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape); * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_object - * @sa glfwCreateCursor + * @sa @ref glfwCreateCursor * * @since Added in version 3.1. * @@ -3224,7 +4304,7 @@ GLFWAPI void glfwDestroyCursor(GLFWcursor* cursor); /*! @brief Sets the cursor for the window. * * This function sets the cursor image to be used when the cursor is over the - * client area of the specified window. The set cursor will only be visible + * content area of the specified window. The set cursor will only be visible * when the [cursor mode](@ref cursor_mode) of the window is * `GLFW_CURSOR_NORMAL`. * @@ -3305,10 +4385,8 @@ GLFWAPI GLFWkeyfun glfwSetKeyCallback(GLFWwindow* window, GLFWkeyfun cbfun); * * The character callback behaves as system text input normally does and will * not be called if modifier keys are held down that would prevent normal text - * input on that platform, for example a Super (Command) key on OS X or Alt key - * on Windows. There is a - * [character with modifiers callback](@ref glfwSetCharModsCallback) that - * receives these events. + * input on that platform, for example a Super (Command) key on macOS or Alt key + * on Windows. * * @param[in] window The window whose callback to set. * @param[in] cbfun The new callback, or `NULL` to remove the currently set @@ -3348,7 +4426,9 @@ GLFWAPI GLFWcharfun glfwSetCharCallback(GLFWwindow* window, GLFWcharfun cbfun); * @param[in] cbfun The new callback, or `NULL` to remove the currently set * callback. * @return The previously set callback, or `NULL` if no callback was set or an - * error occurred. + * [error](@ref error_handling) occurred. + * + * @deprecated Scheduled for removal in version 4.0. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * @@ -3397,7 +4477,7 @@ GLFWAPI GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow* window, GLFWmo * This function sets the cursor position callback of the specified window, * which is called when the cursor is moved. The callback is provided with the * position, in screen coordinates, relative to the upper-left corner of the - * client area of the window. + * content area of the window. * * @param[in] window The window whose callback to set. * @param[in] cbfun The new callback, or `NULL` to remove the currently set @@ -3420,7 +4500,7 @@ GLFWAPI GLFWcursorposfun glfwSetCursorPosCallback(GLFWwindow* window, GLFWcursor /*! @brief Sets the cursor enter/exit callback. * * This function sets the cursor boundary crossing callback of the specified - * window, which is called when the cursor enters or leaves the client area of + * window, which is called when the cursor enters or leaves the content area of * the window. * * @param[in] window The window whose callback to set. @@ -3486,6 +4566,8 @@ GLFWAPI GLFWscrollfun glfwSetScrollCallback(GLFWwindow* window, GLFWscrollfun cb * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * + * @remark @wayland File drop is currently unimplemented. + * * @thread_safety This function must only be called from the main thread. * * @sa @ref path_drop @@ -3500,7 +4582,11 @@ GLFWAPI GLFWdropfun glfwSetDropCallback(GLFWwindow* window, GLFWdropfun cbfun); * * This function returns whether the specified joystick is present. * - * @param[in] joy The [joystick](@ref joysticks) to query. + * There is no need to call this function before other functions that accept + * a joystick ID, as they all check for presence before performing any other + * work. + * + * @param[in] jid The [joystick](@ref joysticks) to query. * @return `GLFW_TRUE` if the joystick is present, or `GLFW_FALSE` otherwise. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref @@ -3514,29 +4600,30 @@ GLFWAPI GLFWdropfun glfwSetDropCallback(GLFWwindow* window, GLFWdropfun cbfun); * * @ingroup input */ -GLFWAPI int glfwJoystickPresent(int joy); +GLFWAPI int glfwJoystickPresent(int jid); /*! @brief Returns the values of all axes of the specified joystick. * * This function returns the values of all axes of the specified joystick. * Each element in the array is a value between -1.0 and 1.0. * - * Querying a joystick slot with no device present is not an error, but will - * cause this function to return `NULL`. Call @ref glfwJoystickPresent to - * check device presence. + * If the specified joystick is not present this function will return `NULL` + * but will not generate an error. This can be used instead of first calling + * @ref glfwJoystickPresent. * - * @param[in] joy The [joystick](@ref joysticks) to query. + * @param[in] jid The [joystick](@ref joysticks) to query. * @param[out] count Where to store the number of axis values in the returned - * array. This is set to zero if an error occurred. - * @return An array of axis values, or `NULL` if the joystick is not present. + * array. This is set to zero if the joystick is not present or an error + * occurred. + * @return An array of axis values, or `NULL` if the joystick is not present or + * an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. * * @pointer_lifetime The returned array is allocated and freed by GLFW. You * should not free it yourself. It is valid until the specified joystick is - * disconnected, this function is called again for that joystick or the library - * is terminated. + * disconnected or the library is terminated. * * @thread_safety This function must only be called from the main thread. * @@ -3546,29 +4633,37 @@ GLFWAPI int glfwJoystickPresent(int joy); * * @ingroup input */ -GLFWAPI const float* glfwGetJoystickAxes(int joy, int* count); +GLFWAPI const float* glfwGetJoystickAxes(int jid, int* count); /*! @brief Returns the state of all buttons of the specified joystick. * * This function returns the state of all buttons of the specified joystick. * Each element in the array is either `GLFW_PRESS` or `GLFW_RELEASE`. * - * Querying a joystick slot with no device present is not an error, but will - * cause this function to return `NULL`. Call @ref glfwJoystickPresent to - * check device presence. + * For backward compatibility with earlier versions that did not have @ref + * glfwGetJoystickHats, the button array also includes all hats, each + * represented as four buttons. The hats are in the same order as returned by + * __glfwGetJoystickHats__ and are in the order _up_, _right_, _down_ and + * _left_. To disable these extra buttons, set the @ref + * GLFW_JOYSTICK_HAT_BUTTONS init hint before initialization. * - * @param[in] joy The [joystick](@ref joysticks) to query. + * If the specified joystick is not present this function will return `NULL` + * but will not generate an error. This can be used instead of first calling + * @ref glfwJoystickPresent. + * + * @param[in] jid The [joystick](@ref joysticks) to query. * @param[out] count Where to store the number of button states in the returned - * array. This is set to zero if an error occurred. - * @return An array of button states, or `NULL` if the joystick is not present. + * array. This is set to zero if the joystick is not present or an error + * occurred. + * @return An array of button states, or `NULL` if the joystick is not present + * or an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. * * @pointer_lifetime The returned array is allocated and freed by GLFW. You * should not free it yourself. It is valid until the specified joystick is - * disconnected, this function is called again for that joystick or the library - * is terminated. + * disconnected or the library is terminated. * * @thread_safety This function must only be called from the main thread. * @@ -3579,7 +4674,64 @@ GLFWAPI const float* glfwGetJoystickAxes(int joy, int* count); * * @ingroup input */ -GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count); +GLFWAPI const unsigned char* glfwGetJoystickButtons(int jid, int* count); + +/*! @brief Returns the state of all hats of the specified joystick. + * + * This function returns the state of all hats of the specified joystick. + * Each element in the array is one of the following values: + * + * Name | Value + * ---- | ----- + * `GLFW_HAT_CENTERED` | 0 + * `GLFW_HAT_UP` | 1 + * `GLFW_HAT_RIGHT` | 2 + * `GLFW_HAT_DOWN` | 4 + * `GLFW_HAT_LEFT` | 8 + * `GLFW_HAT_RIGHT_UP` | `GLFW_HAT_RIGHT` \| `GLFW_HAT_UP` + * `GLFW_HAT_RIGHT_DOWN` | `GLFW_HAT_RIGHT` \| `GLFW_HAT_DOWN` + * `GLFW_HAT_LEFT_UP` | `GLFW_HAT_LEFT` \| `GLFW_HAT_UP` + * `GLFW_HAT_LEFT_DOWN` | `GLFW_HAT_LEFT` \| `GLFW_HAT_DOWN` + * + * The diagonal directions are bitwise combinations of the primary (up, right, + * down and left) directions and you can test for these individually by ANDing + * it with the corresponding direction. + * + * @code + * if (hats[2] & GLFW_HAT_RIGHT) + * { + * // State of hat 2 could be right-up, right or right-down + * } + * @endcode + * + * If the specified joystick is not present this function will return `NULL` + * but will not generate an error. This can be used instead of first calling + * @ref glfwJoystickPresent. + * + * @param[in] jid The [joystick](@ref joysticks) to query. + * @param[out] count Where to store the number of hat states in the returned + * array. This is set to zero if the joystick is not present or an error + * occurred. + * @return An array of hat states, or `NULL` if the joystick is not present + * or an [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. + * + * @pointer_lifetime The returned array is allocated and freed by GLFW. You + * should not free it yourself. It is valid until the specified joystick is + * disconnected, this function is called again for that joystick or the library + * is terminated. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref joystick_hat + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI const unsigned char* glfwGetJoystickHats(int jid, int* count); /*! @brief Returns the name of the specified joystick. * @@ -3587,21 +4739,20 @@ GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count); * The returned string is allocated and freed by GLFW. You should not free it * yourself. * - * Querying a joystick slot with no device present is not an error, but will - * cause this function to return `NULL`. Call @ref glfwJoystickPresent to - * check device presence. + * If the specified joystick is not present this function will return `NULL` + * but will not generate an error. This can be used instead of first calling + * @ref glfwJoystickPresent. * - * @param[in] joy The [joystick](@ref joysticks) to query. + * @param[in] jid The [joystick](@ref joysticks) to query. * @return The UTF-8 encoded name of the joystick, or `NULL` if the joystick - * is not present. + * is not present or an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. * * @pointer_lifetime The returned string is allocated and freed by GLFW. You * should not free it yourself. It is valid until the specified joystick is - * disconnected, this function is called again for that joystick or the library - * is terminated. + * disconnected or the library is terminated. * * @thread_safety This function must only be called from the main thread. * @@ -3611,7 +4762,126 @@ GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count); * * @ingroup input */ -GLFWAPI const char* glfwGetJoystickName(int joy); +GLFWAPI const char* glfwGetJoystickName(int jid); + +/*! @brief Returns the SDL comaptible GUID of the specified joystick. + * + * This function returns the SDL compatible GUID, as a UTF-8 encoded + * hexadecimal string, of the specified joystick. The returned string is + * allocated and freed by GLFW. You should not free it yourself. + * + * The GUID is what connects a joystick to a gamepad mapping. A connected + * joystick will always have a GUID even if there is no gamepad mapping + * assigned to it. + * + * If the specified joystick is not present this function will return `NULL` + * but will not generate an error. This can be used instead of first calling + * @ref glfwJoystickPresent. + * + * The GUID uses the format introduced in SDL 2.0.5. This GUID tries to + * uniquely identify the make and model of a joystick but does not identify + * a specific unit, e.g. all wired Xbox 360 controllers will have the same + * GUID on that platform. The GUID for a unit may vary between platforms + * depending on what hardware information the platform specific APIs provide. + * + * @param[in] jid The [joystick](@ref joysticks) to query. + * @return The UTF-8 encoded GUID of the joystick, or `NULL` if the joystick + * is not present or an [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. + * + * @pointer_lifetime The returned string is allocated and freed by GLFW. You + * should not free it yourself. It is valid until the specified joystick is + * disconnected or the library is terminated. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref gamepad + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI const char* glfwGetJoystickGUID(int jid); + +/*! @brief Sets the user pointer of the specified joystick. + * + * This function sets the user-defined pointer of the specified joystick. The + * current value is retained until the joystick is disconnected. The initial + * value is `NULL`. + * + * This function may be called from the joystick callback, even for a joystick + * that is being disconnected. + * + * @param[in] jid The joystick whose pointer to set. + * @param[in] pointer The new value. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function may be called from any thread. Access is not + * synchronized. + * + * @sa @ref joystick_userptr + * @sa @ref glfwGetJoystickUserPointer + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI void glfwSetJoystickUserPointer(int jid, void* pointer); + +/*! @brief Returns the user pointer of the specified joystick. + * + * This function returns the current value of the user-defined pointer of the + * specified joystick. The initial value is `NULL`. + * + * This function may be called from the joystick callback, even for a joystick + * that is being disconnected. + * + * @param[in] jid The joystick whose pointer to return. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. + * + * @thread_safety This function may be called from any thread. Access is not + * synchronized. + * + * @sa @ref joystick_userptr + * @sa @ref glfwSetJoystickUserPointer + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI void* glfwGetJoystickUserPointer(int jid); + +/*! @brief Returns whether the specified joystick has a gamepad mapping. + * + * This function returns whether the specified joystick is both present and has + * a gamepad mapping. + * + * If the specified joystick is present but does not have a gamepad mapping + * this function will return `GLFW_FALSE` but will not generate an error. Call + * @ref glfwJoystickPresent to check if a joystick is present regardless of + * whether it has a mapping. + * + * @param[in] jid The [joystick](@ref joysticks) to query. + * @return `GLFW_TRUE` if a joystick is both present and has a gamepad mapping, + * or `GLFW_FALSE` otherwise. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_INVALID_ENUM. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref gamepad + * @sa @ref glfwGetGamepadState + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI int glfwJoystickIsGamepad(int jid); /*! @brief Sets the joystick configuration callback. * @@ -3619,6 +4889,12 @@ GLFWAPI const char* glfwGetJoystickName(int joy); * currently set callback. This is called when a joystick is connected to or * disconnected from the system. * + * For joystick connection and disconnection events to be delivered on all + * platforms, you need to call one of the [event processing](@ref events) + * functions. Joystick disconnection may also be detected and the callback + * called by joystick functions. The function will then return whatever it + * returns if the joystick is not present. + * * @param[in] cbfun The new callback, or `NULL` to remove the currently set * callback. * @return The previously set callback, or `NULL` if no callback was set or the @@ -3636,12 +4912,114 @@ GLFWAPI const char* glfwGetJoystickName(int joy); */ GLFWAPI GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun cbfun); +/*! @brief Adds the specified SDL_GameControllerDB gamepad mappings. + * + * This function parses the specified ASCII encoded string and updates the + * internal list with any gamepad mappings it finds. This string may + * contain either a single gamepad mapping or many mappings separated by + * newlines. The parser supports the full format of the `gamecontrollerdb.txt` + * source file including empty lines and comments. + * + * See @ref gamepad_mapping for a description of the format. + * + * If there is already a gamepad mapping for a given GUID in the internal list, + * it will be replaced by the one passed to this function. If the library is + * terminated and re-initialized the internal list will revert to the built-in + * default. + * + * @param[in] string The string containing the gamepad mappings. + * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if an + * [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_INVALID_VALUE. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref gamepad + * @sa @ref glfwJoystickIsGamepad + * @sa @ref glfwGetGamepadName + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI int glfwUpdateGamepadMappings(const char* string); + +/*! @brief Returns the human-readable gamepad name for the specified joystick. + * + * This function returns the human-readable name of the gamepad from the + * gamepad mapping assigned to the specified joystick. + * + * If the specified joystick is not present or does not have a gamepad mapping + * this function will return `NULL` but will not generate an error. Call + * @ref glfwJoystickPresent to check whether it is present regardless of + * whether it has a mapping. + * + * @param[in] jid The [joystick](@ref joysticks) to query. + * @return The UTF-8 encoded name of the gamepad, or `NULL` if the + * joystick is not present, does not have a mapping or an + * [error](@ref error_handling) occurred. + * + * @pointer_lifetime The returned string is allocated and freed by GLFW. You + * should not free it yourself. It is valid until the specified joystick is + * disconnected, the gamepad mappings are updated or the library is terminated. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref gamepad + * @sa @ref glfwJoystickIsGamepad + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI const char* glfwGetGamepadName(int jid); + +/*! @brief Retrieves the state of the specified joystick remapped as a gamepad. + * + * This function retrives the state of the specified joystick remapped to + * an Xbox-like gamepad. + * + * If the specified joystick is not present or does not have a gamepad mapping + * this function will return `GLFW_FALSE` but will not generate an error. Call + * @ref glfwJoystickPresent to check whether it is present regardless of + * whether it has a mapping. + * + * The Guide button may not be available for input as it is often hooked by the + * system or the Steam client. + * + * Not all devices have all the buttons or axes provided by @ref + * GLFWgamepadstate. Unavailable buttons and axes will always report + * `GLFW_RELEASE` and 0.0 respectively. + * + * @param[in] jid The [joystick](@ref joysticks) to query. + * @param[out] state The gamepad input state of the joystick. + * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if no joystick is + * connected, it has no gamepad mapping or an [error](@ref error_handling) + * occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_INVALID_ENUM. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref gamepad + * @sa @ref glfwUpdateGamepadMappings + * @sa @ref glfwJoystickIsGamepad + * + * @since Added in version 3.3. + * + * @ingroup input + */ +GLFWAPI int glfwGetGamepadState(int jid, GLFWgamepadstate* state); + /*! @brief Sets the clipboard to the specified string. * * This function sets the system clipboard to the specified, UTF-8 encoded * string. * - * @param[in] window The window that will own the clipboard contents. + * @param[in] window Deprecated. Any valid window or `NULL`. * @param[in] string A UTF-8 encoded string. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref @@ -3653,7 +5031,7 @@ GLFWAPI GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun cbfun); * @thread_safety This function must only be called from the main thread. * * @sa @ref clipboard - * @sa glfwGetClipboardString + * @sa @ref glfwGetClipboardString * * @since Added in version 3.0. * @@ -3668,7 +5046,7 @@ GLFWAPI void glfwSetClipboardString(GLFWwindow* window, const char* string); * if its contents cannot be converted, `NULL` is returned and a @ref * GLFW_FORMAT_UNAVAILABLE error is generated. * - * @param[in] window The window that will request the clipboard contents. + * @param[in] window Deprecated. Any valid window or `NULL`. * @return The contents of the clipboard as a UTF-8 encoded string, or `NULL` * if an [error](@ref error_handling) occurred. * @@ -3683,7 +5061,7 @@ GLFWAPI void glfwSetClipboardString(GLFWwindow* window, const char* string); * @thread_safety This function must only be called from the main thread. * * @sa @ref clipboard - * @sa glfwSetClipboardString + * @sa @ref glfwSetClipboardString * * @since Added in version 3.0. * @@ -3706,8 +5084,9 @@ GLFWAPI const char* glfwGetClipboardString(GLFWwindow* window); * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * - * @thread_safety This function may be called from any thread. Reading of the - * internal timer offset is not atomic. + * @thread_safety This function may be called from any thread. Reading and + * writing of the internal timer offset is not atomic, so it needs to be + * externally synchronized with calls to @ref glfwSetTime. * * @sa @ref time * @@ -3732,8 +5111,9 @@ GLFWAPI double glfwGetTime(void); * floor((264 - 1) / 109) and is due to implementations * storing nanoseconds in 64 bits. The limit may be increased in the future. * - * @thread_safety This function may be called from any thread. Writing of the - * internal timer offset is not atomic. + * @thread_safety This function may be called from any thread. Reading and + * writing of the internal timer offset is not atomic, so it needs to be + * externally synchronized with calls to @ref glfwGetTime. * * @sa @ref time * @@ -3749,7 +5129,7 @@ GLFWAPI void glfwSetTime(double time); * 1 / frequency seconds. To get the frequency, call @ref * glfwGetTimerFrequency. * - * @return The value of the timer, or zero if an + * @return The value of the timer, or zero if an * [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. @@ -3757,7 +5137,7 @@ GLFWAPI void glfwSetTime(double time); * @thread_safety This function may be called from any thread. * * @sa @ref time - * @sa glfwGetTimerFrequency + * @sa @ref glfwGetTimerFrequency * * @since Added in version 3.2. * @@ -3777,7 +5157,7 @@ GLFWAPI uint64_t glfwGetTimerValue(void); * @thread_safety This function may be called from any thread. * * @sa @ref time - * @sa glfwGetTimerValue + * @sa @ref glfwGetTimerValue * * @since Added in version 3.2. * @@ -3789,14 +5169,18 @@ GLFWAPI uint64_t glfwGetTimerFrequency(void); * thread. * * This function makes the OpenGL or OpenGL ES context of the specified window - * current on the calling thread. A context can only be made current on + * current on the calling thread. A context must only be made current on * a single thread at a time and each thread can have only a single current * context at a time. * + * When moving a context between threads, you must make it non-current on the + * old thread before making it current on the new one. + * * By default, making a context non-current implicitly forces a pipeline flush. * On machines that support `GL_KHR_context_flush_control`, you can control * whether a context performs this flush by setting the - * [GLFW_CONTEXT_RELEASE_BEHAVIOR](@ref window_hints_ctx) window hint. + * [GLFW_CONTEXT_RELEASE_BEHAVIOR](@ref GLFW_CONTEXT_RELEASE_BEHAVIOR_hint) + * hint. * * The specified window must have an OpenGL or OpenGL ES context. Specifying * a window without a context will generate a @ref GLFW_NO_WINDOW_CONTEXT @@ -3811,7 +5195,7 @@ GLFWAPI uint64_t glfwGetTimerFrequency(void); * @thread_safety This function may be called from any thread. * * @sa @ref context_current - * @sa glfwGetCurrentContext + * @sa @ref glfwGetCurrentContext * * @since Added in version 3.0. * @@ -3832,7 +5216,7 @@ GLFWAPI void glfwMakeContextCurrent(GLFWwindow* window); * @thread_safety This function may be called from any thread. * * @sa @ref context_current - * @sa glfwMakeContextCurrent + * @sa @ref glfwMakeContextCurrent * * @since Added in version 3.0. * @@ -3865,7 +5249,7 @@ GLFWAPI GLFWwindow* glfwGetCurrentContext(void); * @thread_safety This function may be called from any thread. * * @sa @ref buffer_swap - * @sa glfwSwapInterval + * @sa @ref glfwSwapInterval * * @since Added in version 1.0. * @glfw3 Added window handle parameter. @@ -3882,12 +5266,11 @@ GLFWAPI void glfwSwapBuffers(GLFWwindow* window); * is sometimes called _vertical synchronization_, _vertical retrace * synchronization_ or just _vsync_. * - * Contexts that support either of the `WGL_EXT_swap_control_tear` and - * `GLX_EXT_swap_control_tear` extensions also accept negative swap intervals, - * which allow the driver to swap even if a frame arrives a little bit late. - * You can check for the presence of these extensions using @ref - * glfwExtensionSupported. For more information about swap tearing, see the - * extension specifications. + * A context that supports either of the `WGL_EXT_swap_control_tear` and + * `GLX_EXT_swap_control_tear` extensions also accepts _negative_ swap + * intervals, which allows the driver to swap immediately even if a frame + * arrives a little bit late. You can check for these extensions with @ref + * glfwExtensionSupported. * * A context must be current on the calling thread. Calling this function * without a current context will cause a @ref GLFW_NO_CURRENT_CONTEXT error. @@ -3913,7 +5296,7 @@ GLFWAPI void glfwSwapBuffers(GLFWwindow* window); * @thread_safety This function may be called from any thread. * * @sa @ref buffer_swap - * @sa glfwSwapBuffers + * @sa @ref glfwSwapBuffers * * @since Added in version 1.0. * @@ -3951,7 +5334,7 @@ GLFWAPI void glfwSwapInterval(int interval); * @thread_safety This function may be called from any thread. * * @sa @ref context_glext - * @sa glfwGetProcAddress + * @sa @ref glfwGetProcAddress * * @since Added in version 1.0. * @@ -3993,7 +5376,7 @@ GLFWAPI int glfwExtensionSupported(const char* extension); * @thread_safety This function may be called from any thread. * * @sa @ref context_glext - * @sa glfwExtensionSupported + * @sa @ref glfwExtensionSupported * * @since Added in version 1.0. * @@ -4001,19 +5384,21 @@ GLFWAPI int glfwExtensionSupported(const char* extension); */ GLFWAPI GLFWglproc glfwGetProcAddress(const char* procname); -/*! @brief Returns whether the Vulkan loader has been found. +/*! @brief Returns whether the Vulkan loader and an ICD have been found. * - * This function returns whether the Vulkan loader has been found. This check - * is performed by @ref glfwInit. + * This function returns whether the Vulkan loader and any minimally functional + * ICD have been found. * - * The availability of a Vulkan loader does not by itself guarantee that window - * surface creation or even device creation is possible. Call @ref - * glfwGetRequiredInstanceExtensions to check whether the extensions necessary - * for Vulkan surface creation are available and @ref - * glfwGetPhysicalDevicePresentationSupport to check whether a queue family of - * a physical device supports image presentation. + * The availability of a Vulkan loader and even an ICD does not by itself + * guarantee that surface creation or even instance creation is possible. + * For example, on Fermi systems Nvidia will install an ICD that provides no + * actual Vulkan support. Call @ref glfwGetRequiredInstanceExtensions to check + * whether the extensions necessary for Vulkan surface creation are available + * and @ref glfwGetPhysicalDevicePresentationSupport to check whether a queue + * family of a physical device supports image presentation. * - * @return `GLFW_TRUE` if Vulkan is available, or `GLFW_FALSE` otherwise. + * @return `GLFW_TRUE` if Vulkan is minimally available, or `GLFW_FALSE` + * otherwise. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * @@ -4037,7 +5422,7 @@ GLFWAPI int glfwVulkanSupported(void); * * If Vulkan is not available on the machine, this function returns `NULL` and * generates a @ref GLFW_API_UNAVAILABLE error. Call @ref glfwVulkanSupported - * to check whether Vulkan is available. + * to check whether Vulkan is at least minimally available. * * If Vulkan is available but no set of extensions allowing window surface * creation was found, this function returns `NULL`. You may still use Vulkan @@ -4051,11 +5436,14 @@ GLFWAPI int glfwVulkanSupported(void); * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_API_UNAVAILABLE. * - * @remarks Additional extensions may be required by future versions of GLFW. + * @remark Additional extensions may be required by future versions of GLFW. * You should check if any extensions you wish to enable are already in the * returned array, as it is an error to specify an extension more than once in * the `VkInstanceCreateInfo` struct. * + * @remark @macos This function currently only supports the + * `VK_MVK_macos_surface` extension from MoltenVK. + * * @pointer_lifetime The returned array is allocated and freed by GLFW. You * should not free it yourself. It is guaranteed to be valid only until the * library is terminated. @@ -4063,7 +5451,7 @@ GLFWAPI int glfwVulkanSupported(void); * @thread_safety This function may be called from any thread. * * @sa @ref vulkan_ext - * @sa glfwCreateWindowSurface + * @sa @ref glfwCreateWindowSurface * * @since Added in version 3.2. * @@ -4087,7 +5475,7 @@ GLFWAPI const char** glfwGetRequiredInstanceExtensions(uint32_t* count); * * If Vulkan is not available on the machine, this function returns `NULL` and * generates a @ref GLFW_API_UNAVAILABLE error. Call @ref glfwVulkanSupported - * to check whether Vulkan is available. + * to check whether Vulkan is at least minimally available. * * This function is equivalent to calling `vkGetInstanceProcAddr` with * a platform-specific query of the Vulkan loader as a fallback. @@ -4123,7 +5511,7 @@ GLFWAPI GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char* p * not available on the machine, or if the specified instance was not created * with the required extensions, this function returns `GLFW_FALSE` and * generates a @ref GLFW_API_UNAVAILABLE error. Call @ref glfwVulkanSupported - * to check whether Vulkan is available and @ref + * to check whether Vulkan is at least minimally available and @ref * glfwGetRequiredInstanceExtensions to check what instance extensions are * required. * @@ -4136,6 +5524,10 @@ GLFWAPI GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char* p * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_API_UNAVAILABLE and @ref GLFW_PLATFORM_ERROR. * + * @remark @macos This function currently always returns `GLFW_TRUE`, as the + * `VK_MVK_macos_surface` extension does not provide + * a `vkGetPhysicalDevice*PresentationSupport` type function. + * * @thread_safety This function may be called from any thread. For * synchronization details of Vulkan objects, see the Vulkan specification. * @@ -4151,10 +5543,10 @@ GLFWAPI int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhys * * This function creates a Vulkan surface for the specified window. * - * If the Vulkan loader was not found at initialization, this function returns - * `VK_ERROR_INITIALIZATION_FAILED` and generates a @ref GLFW_API_UNAVAILABLE - * error. Call @ref glfwVulkanSupported to check whether the Vulkan loader was - * found. + * If the Vulkan loader or at least one minimally functional ICD were not found, + * this function returns `VK_ERROR_INITIALIZATION_FAILED` and generates a @ref + * GLFW_API_UNAVAILABLE error. Call @ref glfwVulkanSupported to check whether + * Vulkan is at least minimally available. * * If the required window surface creation instance extensions are not * available or if the specified instance was not created with these extensions @@ -4163,6 +5555,11 @@ GLFWAPI int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhys * glfwGetRequiredInstanceExtensions to check what instance extensions are * required. * + * The window surface cannot be shared with another API so the window must + * have been created with the [client api hint](@ref GLFW_CLIENT_API_attrib) + * set to `GLFW_NO_API` otherwise it generates a @ref GLFW_INVALID_VALUE error + * and returns `VK_ERROR_NATIVE_WINDOW_IN_USE_KHR`. + * * The window surface must be destroyed before the specified Vulkan instance. * It is the responsibility of the caller to destroy the window surface. GLFW * does not destroy it for you. Call `vkDestroySurfaceKHR` to destroy the @@ -4178,18 +5575,24 @@ GLFWAPI int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhys * [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref - * GLFW_API_UNAVAILABLE and @ref GLFW_PLATFORM_ERROR. + * GLFW_API_UNAVAILABLE, @ref GLFW_PLATFORM_ERROR and @ref GLFW_INVALID_VALUE * - * @remarks If an error occurs before the creation call is made, GLFW returns + * @remark If an error occurs before the creation call is made, GLFW returns * the Vulkan error code most appropriate for the error. Appropriate use of * @ref glfwVulkanSupported and @ref glfwGetRequiredInstanceExtensions should * eliminate almost all occurrences of these errors. * + * @remark @macos This function currently only supports the + * `VK_MVK_macos_surface` extension from MoltenVK. + * + * @remark @macos This function creates and sets a `CAMetalLayer` instance for + * the window content view, which is required for MoltenVK to function. + * * @thread_safety This function may be called from any thread. For * synchronization details of Vulkan objects, see the Vulkan specification. * * @sa @ref vulkan_surface - * @sa glfwGetRequiredInstanceExtensions + * @sa @ref glfwGetRequiredInstanceExtensions * * @since Added in version 3.2. * @@ -4216,6 +5619,13 @@ GLFWAPI VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow* window #undef GLFW_CALLBACK_DEFINED #endif +/* Some OpenGL related headers need GLAPIENTRY, but it is unconditionally + * defined by some gl.h variants (OpenBSD) so define it after if needed. + */ +#ifndef GLAPIENTRY + #define GLAPIENTRY APIENTRY +#endif + /* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */ diff --git a/examples/libs/glfw/include/GLFW/glfw3native.h b/examples/libs/glfw/include/GLFW/glfw3native.h index 9fa955e942f8..267e75ca9e01 100644 --- a/examples/libs/glfw/include/GLFW/glfw3native.h +++ b/examples/libs/glfw/include/GLFW/glfw3native.h @@ -1,9 +1,9 @@ /************************************************************************* - * GLFW 3.2 - www.glfw.org + * GLFW 3.3 - www.glfw.org * A library for OpenGL, window and input *------------------------------------------------------------------------ * Copyright (c) 2002-2006 Marcus Geelnard - * Copyright (c) 2006-2010 Camilla Berglund + * Copyright (c) 2006-2018 Camilla Löwy * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages @@ -45,12 +45,13 @@ extern "C" { * more information. */ /*! @defgroup native Native access + * @brief Functions related to accessing native handles. * * **By using the native access functions you assert that you know what you're * doing and how to fix problems caused by using them. If you don't, you * shouldn't be using them.** * - * Before the inclusion of @ref glfw3native.h, you may define exactly one + * Before the inclusion of @ref glfw3native.h, you may define zero or more * window system API macro and zero or more context creation API macros. * * The chosen backends must match those the library was compiled for. Failure @@ -61,13 +62,13 @@ extern "C" { * * `GLFW_EXPOSE_NATIVE_COCOA` * * `GLFW_EXPOSE_NATIVE_X11` * * `GLFW_EXPOSE_NATIVE_WAYLAND` - * * `GLFW_EXPOSE_NATIVE_MIR` * * The available context API macros are: * * `GLFW_EXPOSE_NATIVE_WGL` * * `GLFW_EXPOSE_NATIVE_NSGL` * * `GLFW_EXPOSE_NATIVE_GLX` * * `GLFW_EXPOSE_NATIVE_EGL` + * * `GLFW_EXPOSE_NATIVE_OSMESA` * * These macros select which of the native access functions that are declared * and which platform-specific headers to include. It is then up your (by @@ -80,26 +81,27 @@ extern "C" { * System headers and types *************************************************************************/ -#if defined(GLFW_EXPOSE_NATIVE_WIN32) +#if defined(GLFW_EXPOSE_NATIVE_WIN32) || defined(GLFW_EXPOSE_NATIVE_WGL) // This is a workaround for the fact that glfw3.h needs to export APIENTRY (for // example to allow applications to correctly declare a GL_ARB_debug_output // callback) but windows.h assumes no one will define APIENTRY before it does - #undef APIENTRY + #if defined(GLFW_APIENTRY_DEFINED) + #undef APIENTRY + #undef GLFW_APIENTRY_DEFINED + #endif #include -#elif defined(GLFW_EXPOSE_NATIVE_COCOA) - #include +#elif defined(GLFW_EXPOSE_NATIVE_COCOA) || defined(GLFW_EXPOSE_NATIVE_NSGL) #if defined(__OBJC__) #import #else + #include typedef void* id; #endif -#elif defined(GLFW_EXPOSE_NATIVE_X11) +#elif defined(GLFW_EXPOSE_NATIVE_X11) || defined(GLFW_EXPOSE_NATIVE_GLX) #include #include #elif defined(GLFW_EXPOSE_NATIVE_WAYLAND) #include -#elif defined(GLFW_EXPOSE_NATIVE_MIR) - #include #endif #if defined(GLFW_EXPOSE_NATIVE_WGL) @@ -114,6 +116,9 @@ extern "C" { #if defined(GLFW_EXPOSE_NATIVE_EGL) #include #endif +#if defined(GLFW_EXPOSE_NATIVE_OSMESA) + #include +#endif /************************************************************************* @@ -284,6 +289,56 @@ GLFWAPI RROutput glfwGetX11Monitor(GLFWmonitor* monitor); * @ingroup native */ GLFWAPI Window glfwGetX11Window(GLFWwindow* window); + +/*! @brief Sets the current primary selection to the specified string. + * + * @param[in] string A UTF-8 encoded string. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @pointer_lifetime The specified string is copied before this function + * returns. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref clipboard + * @sa glfwGetX11SelectionString + * @sa glfwSetClipboardString + * + * @since Added in version 3.3. + * + * @ingroup native + */ +GLFWAPI void glfwSetX11SelectionString(const char* string); + +/*! @brief Returns the contents of the current primary selection as a string. + * + * If the selection is empty or if its contents cannot be converted, `NULL` + * is returned and a @ref GLFW_FORMAT_UNAVAILABLE error is generated. + * + * @return The contents of the selection as a UTF-8 encoded string, or `NULL` + * if an [error](@ref error_handling) occurred. + * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * + * @pointer_lifetime The returned string is allocated and freed by GLFW. You + * should not free it yourself. It is valid until the next call to @ref + * glfwGetX11SelectionString or @ref glfwSetX11SelectionString, or until the + * library is terminated. + * + * @thread_safety This function must only be called from the main thread. + * + * @sa @ref clipboard + * @sa glfwSetX11SelectionString + * @sa glfwGetClipboardString + * + * @since Added in version 3.3. + * + * @ingroup native + */ +GLFWAPI const char* glfwGetX11SelectionString(void); #endif #if defined(GLFW_EXPOSE_NATIVE_GLX) @@ -360,92 +415,106 @@ GLFWAPI struct wl_output* glfwGetWaylandMonitor(GLFWmonitor* monitor); GLFWAPI struct wl_surface* glfwGetWaylandWindow(GLFWwindow* window); #endif -#if defined(GLFW_EXPOSE_NATIVE_MIR) -/*! @brief Returns the `MirConnection*` used by GLFW. +#if defined(GLFW_EXPOSE_NATIVE_EGL) +/*! @brief Returns the `EGLDisplay` used by GLFW. * - * @return The `MirConnection*` used by GLFW, or `NULL` if an + * @return The `EGLDisplay` used by GLFW, or `EGL_NO_DISPLAY` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.2. + * @since Added in version 3.0. * * @ingroup native */ -GLFWAPI MirConnection* glfwGetMirDisplay(void); +GLFWAPI EGLDisplay glfwGetEGLDisplay(void); -/*! @brief Returns the Mir output ID of the specified monitor. +/*! @brief Returns the `EGLContext` of the specified window. * - * @return The Mir output ID of the specified monitor, or zero if an + * @return The `EGLContext` of the specified window, or `EGL_NO_CONTEXT` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.2. + * @since Added in version 3.0. * * @ingroup native */ -GLFWAPI int glfwGetMirMonitor(GLFWmonitor* monitor); +GLFWAPI EGLContext glfwGetEGLContext(GLFWwindow* window); -/*! @brief Returns the `MirSurface*` of the specified window. +/*! @brief Returns the `EGLSurface` of the specified window. * - * @return The `MirSurface*` of the specified window, or `NULL` if an + * @return The `EGLSurface` of the specified window, or `EGL_NO_SURFACE` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.2. + * @since Added in version 3.0. * * @ingroup native */ -GLFWAPI MirSurface* glfwGetMirWindow(GLFWwindow* window); +GLFWAPI EGLSurface glfwGetEGLSurface(GLFWwindow* window); #endif -#if defined(GLFW_EXPOSE_NATIVE_EGL) -/*! @brief Returns the `EGLDisplay` used by GLFW. - * - * @return The `EGLDisplay` used by GLFW, or `EGL_NO_DISPLAY` if an +#if defined(GLFW_EXPOSE_NATIVE_OSMESA) +/*! @brief Retrieves the color buffer associated with the specified window. + * + * @param[in] window The window whose color buffer to retrieve. + * @param[out] width Where to store the width of the color buffer, or `NULL`. + * @param[out] height Where to store the height of the color buffer, or `NULL`. + * @param[out] format Where to store the OSMesa pixel format of the color + * buffer, or `NULL`. + * @param[out] buffer Where to store the address of the color buffer, or + * `NULL`. + * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.0. + * @since Added in version 3.3. * * @ingroup native */ -GLFWAPI EGLDisplay glfwGetEGLDisplay(void); - -/*! @brief Returns the `EGLContext` of the specified window. - * - * @return The `EGLContext` of the specified window, or `EGL_NO_CONTEXT` if an +GLFWAPI int glfwGetOSMesaColorBuffer(GLFWwindow* window, int* width, int* height, int* format, void** buffer); + +/*! @brief Retrieves the depth buffer associated with the specified window. + * + * @param[in] window The window whose depth buffer to retrieve. + * @param[out] width Where to store the width of the depth buffer, or `NULL`. + * @param[out] height Where to store the height of the depth buffer, or `NULL`. + * @param[out] bytesPerValue Where to store the number of bytes per depth + * buffer element, or `NULL`. + * @param[out] buffer Where to store the address of the depth buffer, or + * `NULL`. + * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.0. + * @since Added in version 3.3. * * @ingroup native */ -GLFWAPI EGLContext glfwGetEGLContext(GLFWwindow* window); +GLFWAPI int glfwGetOSMesaDepthBuffer(GLFWwindow* window, int* width, int* height, int* bytesPerValue, void** buffer); -/*! @brief Returns the `EGLSurface` of the specified window. +/*! @brief Returns the `OSMesaContext` of the specified window. * - * @return The `EGLSurface` of the specified window, or `EGL_NO_SURFACE` if an + * @return The `OSMesaContext` of the specified window, or `NULL` if an * [error](@ref error_handling) occurred. * * @thread_safety This function may be called from any thread. Access is not * synchronized. * - * @since Added in version 3.0. + * @since Added in version 3.3. * * @ingroup native */ -GLFWAPI EGLSurface glfwGetEGLSurface(GLFWwindow* window); +GLFWAPI OSMesaContext glfwGetOSMesaContext(GLFWwindow* window); #endif #ifdef __cplusplus diff --git a/examples/libs/glfw/lib-vc2010-32/glfw3.lib b/examples/libs/glfw/lib-vc2010-32/glfw3.lib index 348abecfa98d6cfad9db67127eab8d5c72473539..b6db78fc05365a99fd012f8bd8c665886ed12c74 100644 GIT binary patch literal 504168 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

+yR3NDn~s)<{M`rL(YVwH|K)u> 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�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 z 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 bM3*1$!R`mx214dhCY5|WRKKF~xZr;P?j3#{ literal 291120 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 It5l%>4{5MQ*Z=?k From 49378fc5fd5f1857902966a1a77e82e7b0414db2 Mon Sep 17 00:00:00 2001 From: Shawn M Date: Wed, 28 Aug 2019 04:42:18 -0400 Subject: [PATCH 2/3] Add support for transparent backbuffers in GLFW and OpenGL3 --- examples/example_glfw_opengl3/main.cpp | 11 +++++++++-- examples/imgui_impl_glfw.cpp | 4 ++++ examples/imgui_impl_opengl3.cpp | 4 ++-- imgui.cpp | 10 ++++++++-- imgui.h | 1 + 5 files changed, 24 insertions(+), 6 deletions(-) diff --git a/examples/example_glfw_opengl3/main.cpp b/examples/example_glfw_opengl3/main.cpp index a92a1f7b57b2..411b81475745 100644 --- a/examples/example_glfw_opengl3/main.cpp +++ b/examples/example_glfw_opengl3/main.cpp @@ -58,6 +58,8 @@ int main(int, char**) //glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); // 3.2+ only //glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // 3.0+ only #endif + + glfwWindowHint(GLFW_TRANSPARENT_FRAMEBUFFER, true); // Enable transparent backbuffers // Create window with graphics context GLFWwindow* window = glfwCreateWindow(1280, 720, "Dear ImGui GLFW+OpenGL3 example", NULL, NULL); @@ -92,6 +94,7 @@ int main(int, char**) io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; // Enable Multi-Viewport / Platform Windows //io.ConfigViewportsNoAutoMerge = true; //io.ConfigViewportsNoTaskBarIcon = true; + io.ConfigFlags |= ImGuiConfigFlags_TransparentBackbuffers; // Enable transparent backbuffer support // Setup Dear ImGui style ImGui::StyleColorsDark(); @@ -159,8 +162,12 @@ int main(int, char**) ImGui::Checkbox("Demo Window", &show_demo_window); // Edit bools storing our window open/close state ImGui::Checkbox("Another Window", &show_another_window); - ImGui::SliderFloat("float", &f, 0.0f, 1.0f); // Edit 1 float using a slider from 0.0f to 1.0f - ImGui::ColorEdit3("clear color", (float*)&clear_color); // Edit 3 floats representing a color + if (ImGui::SliderFloat("Window Opacity", &f, 0.0f, 1.0f)) { + ImGuiStyle& style = ImGui::GetStyle(); + style.Colors[ImGuiCol_WindowBg].w = f; + }// Edit 1 float using a slider from 0.0f to 1.0f + ImGui::ColorEdit4("clear color", (float*)&clear_color); // Edit 3 floats representing a color + if (ImGui::Button("Button")) // Buttons return true when clicked (most widgets return true when edited/activated) counter++; diff --git a/examples/imgui_impl_glfw.cpp b/examples/imgui_impl_glfw.cpp index cb5e88b9997d..ccb477f02f76 100644 --- a/examples/imgui_impl_glfw.cpp +++ b/examples/imgui_impl_glfw.cpp @@ -54,6 +54,7 @@ #define GLFW_HAS_FOCUS_WINDOW (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3200) // 3.2+ glfwFocusWindow #define GLFW_HAS_FOCUS_ON_SHOW (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ GLFW_FOCUS_ON_SHOW #define GLFW_HAS_MONITOR_WORK_AREA (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // 3.3+ glfwGetMonitorWorkarea +#define GLFW_HAS_TRANSPARENT_FRAMEBUFFERS (GLFW_VERSION_MAJOR * 1000 + GLFW_VERSION_MINOR * 100 >= 3300) // Data enum GlfwClientApi @@ -438,6 +439,9 @@ static void ImGui_ImplGlfw_CreateWindow(ImGuiViewport* viewport) // With GLFW 3.3, the hint GLFW_FOCUS_ON_SHOW fixes this problem glfwWindowHint(GLFW_VISIBLE, false); glfwWindowHint(GLFW_FOCUSED, false); +#if GLFW_HAS_TRANSPARENT_FRAMEBUFFERS + glfwWindowHint(GLFW_TRANSPARENT_FRAMEBUFFER, true); +#endif #if GLFW_HAS_FOCUS_ON_SHOW glfwWindowHint(GLFW_FOCUS_ON_SHOW, false); #endif diff --git a/examples/imgui_impl_opengl3.cpp b/examples/imgui_impl_opengl3.cpp index e8202705031e..0e65a8d7c2b9 100644 --- a/examples/imgui_impl_opengl3.cpp +++ b/examples/imgui_impl_opengl3.cpp @@ -184,7 +184,7 @@ static void ImGui_ImplOpenGL3_SetupRenderState(ImDrawData* draw_data, int fb_wid // Setup render state: alpha-blending enabled, no face culling, no depth testing, scissor enabled, polygon fill glEnable(GL_BLEND); glBlendEquation(GL_FUNC_ADD); - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA); glDisable(GL_CULL_FACE); glDisable(GL_DEPTH_TEST); glEnable(GL_SCISSOR_TEST); @@ -652,7 +652,7 @@ static void ImGui_ImplOpenGL3_RenderWindow(ImGuiViewport* viewport, void*) { if (!(viewport->Flags & ImGuiViewportFlags_NoRendererClear)) { - ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); + ImVec4 clear_color = ImGui::GetStyle().Colors[ImGuiCol_WindowBg]; glClearColor(clear_color.x, clear_color.y, clear_color.z, clear_color.w); glClear(GL_COLOR_BUFFER_BIT); } diff --git a/imgui.cpp b/imgui.cpp index 7e3977e40da7..e16ee25b3737 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -5591,7 +5591,10 @@ void ImGui::RenderWindowDecorations(ImGuiWindow* window, const ImRect& title_bar if (window->ViewportOwned) { // No alpha - bg_col = (bg_col | IM_COL32_A_MASK); + if (!(g.ConfigFlagsCurrFrame & ImGuiConfigFlags_TransparentBackbuffers)) { + bg_col = (bg_col | IM_COL32_A_MASK); + } + if (is_docking_transparent_payload) window->Viewport->Alpha *= DOCKING_TRANSPARENT_PAYLOAD_ALPHA; } @@ -6165,7 +6168,10 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) viewport_flags &= ~window->WindowClass.ViewportFlagsOverrideClear; // We also tell the back-end that clearing the platform window won't be necessary, as our window is filling the viewport and we have disabled BgAlpha - viewport_flags |= ImGuiViewportFlags_NoRendererClear; + if (!(g.ConfigFlagsCurrFrame & ImGuiConfigFlags_TransparentBackbuffers)) { + viewport_flags |= ImGuiViewportFlags_NoRendererClear; + } + window->Viewport->Flags = viewport_flags; } diff --git a/imgui.h b/imgui.h index dc3de43de462..354adc7e5d56 100644 --- a/imgui.h +++ b/imgui.h @@ -1064,6 +1064,7 @@ enum ImGuiConfigFlags_ // [BETA] Viewports // When using viewports it is recommended that your default value for ImGuiCol_WindowBg is opaque (Alpha=1.0) so transition to a viewport won't be noticeable. ImGuiConfigFlags_ViewportsEnable = 1 << 10, // Viewport enable flags (require both ImGuiConfigFlags_PlatformHasViewports + ImGuiConfigFlags_RendererHasViewports set by the respective back-ends) + ImGuiConfigFlags_TransparentBackbuffers = 1 << 11, // Allow viewports to use transparent back buffers ImGuiConfigFlags_DpiEnableScaleViewports= 1 << 14, // [BETA: Don't use] FIXME-DPI: Reposition and resize imgui windows when the DpiScale of a viewport changed (mostly useful for the main viewport hosting other window). Note that resizing the main window itself is up to your application. ImGuiConfigFlags_DpiEnableScaleFonts = 1 << 15, // [BETA: Don't use] FIXME-DPI: Request bitmap-scaled fonts to match DpiScale. This is a very low-quality workaround. The correct way to handle DPI is _currently_ to replace the atlas and/or fonts in the Platform_OnChangedViewport callback, but this is all early work in progress. From c458214d70f84b1fb06d2ce70deeedcf018ea643 Mon Sep 17 00:00:00 2001 From: Shawn M Date: Wed, 28 Aug 2019 05:44:45 -0400 Subject: [PATCH 3/3] Added transparent backbuffer support to Vulkan --- examples/example_glfw_vulkan/main.cpp | 11 ++++++++--- examples/imgui_impl_vulkan.cpp | 6 ++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/examples/example_glfw_vulkan/main.cpp b/examples/example_glfw_vulkan/main.cpp index 308ad788d12d..5d281bc1f409 100644 --- a/examples/example_glfw_vulkan/main.cpp +++ b/examples/example_glfw_vulkan/main.cpp @@ -344,6 +344,7 @@ int main(int, char**) return 1; glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API); + glfwWindowHint(GLFW_TRANSPARENT_FRAMEBUFFER, true); GLFWwindow* window = glfwCreateWindow(1280, 720, "Dear ImGui GLFW+Vulkan example", NULL, NULL); // Setup Vulkan @@ -378,6 +379,7 @@ int main(int, char**) io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; // Enable Multi-Viewport / Platform Windows //io.ConfigViewportsNoAutoMerge = true; //io.ConfigViewportsNoTaskBarIcon = true; + io.ConfigFlags |= ImGuiConfigFlags_TransparentBackbuffers; // Enable transparent backbuffer support // Setup Dear ImGui style ImGui::StyleColorsDark(); @@ -486,7 +488,7 @@ int main(int, char**) // 2. Show a simple window that we create ourselves. We use a Begin/End pair to created a named window. { - static float f = 0.0f; + static float f = 1.0f; static int counter = 0; ImGui::Begin("Hello, world!"); // Create a window called "Hello, world!" and append into it. @@ -495,8 +497,11 @@ int main(int, char**) ImGui::Checkbox("Demo Window", &show_demo_window); // Edit bools storing our window open/close state ImGui::Checkbox("Another Window", &show_another_window); - ImGui::SliderFloat("float", &f, 0.0f, 1.0f); // Edit 1 float using a slider from 0.0f to 1.0f - ImGui::ColorEdit3("clear color", (float*)&clear_color); // Edit 3 floats representing a color + if (ImGui::SliderFloat("Window Opacity", &f, 0.0f, 1.0f)) { // Edit 1 float using a slider from 0.0f to 1.0f + ImGuiStyle& style = ImGui::GetStyle(); + style.Colors[ImGuiCol_WindowBg].w = f; + } + ImGui::ColorEdit4("clear color", (float*)&clear_color); // Edit 4 floats representing a color if (ImGui::Button("Button")) // Buttons return true when clicked (most widgets return true when edited/activated) counter++; diff --git a/examples/imgui_impl_vulkan.cpp b/examples/imgui_impl_vulkan.cpp index 5990f3208912..813ab5686389 100644 --- a/examples/imgui_impl_vulkan.cpp +++ b/examples/imgui_impl_vulkan.cpp @@ -749,7 +749,7 @@ bool ImGui_ImplVulkan_CreateDeviceObjects() color_attachment[0].dstColorBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA; color_attachment[0].colorBlendOp = VK_BLEND_OP_ADD; color_attachment[0].srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA; - color_attachment[0].dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO; + color_attachment[0].dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE; color_attachment[0].alphaBlendOp = VK_BLEND_OP_ADD; color_attachment[0].colorWriteMask = VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT; @@ -1074,6 +1074,8 @@ void ImGui_ImplVulkanH_CreateWindowSwapChain(VkPhysicalDevice physical_device, V VkSurfaceCapabilitiesKHR cap; err = vkGetPhysicalDeviceSurfaceCapabilitiesKHR(physical_device, wd->Surface, &cap); check_vk_result(err); + if (cap.supportedCompositeAlpha & VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR) + info.compositeAlpha = VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR; if (info.minImageCount < cap.minImageCount) info.minImageCount = cap.minImageCount; else if (cap.maxImageCount != 0 && info.minImageCount > cap.maxImageCount) @@ -1365,7 +1367,7 @@ static void ImGui_ImplVulkan_RenderWindow(ImGuiViewport* viewport, void*) check_vk_result(err); } { - ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 1.0f); + ImVec4 clear_color = ImGui::GetStyle().Colors[ImGuiCol_WindowBg]; memcpy(&wd->ClearValue.color.float32[0], &clear_color, 4 * sizeof(float)); VkRenderPassBeginInfo info = {};

r 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