diff --git a/docs/intro.dox b/docs/intro.dox index 5304678e..58beca6a 100644 --- a/docs/intro.dox +++ b/docs/intro.dox @@ -185,6 +185,7 @@ function: - @ref glfwCreateWindow - @ref glfwDestroyWindow - @ref glfwCreateCursor + - @ref glfwCreateStandardCursor - @ref glfwDestroyCursor - @ref glfwPollEvents - @ref glfwWaitEvents diff --git a/docs/window.dox b/docs/window.dox index 6b2b557f..1a614395 100644 --- a/docs/window.dox +++ b/docs/window.dox @@ -231,8 +231,8 @@ constraint. API version that the created context must be compatible with. The exact behavior of these hints depend on the requested client API. -@par OpenGL -`GLFW_CONTEXT_VERSION_MAJOR` and `GLFW_CONTEXT_VERSION_MINOR` are not hard +@par +__OpenGL:__ `GLFW_CONTEXT_VERSION_MAJOR` and `GLFW_CONTEXT_VERSION_MINOR` are not hard constraints, but creation will fail if the OpenGL version of the created context is less than the one requested. It is therefore perfectly safe to use the default of version 1.0 for legacy code and you may still get @@ -243,8 +243,8 @@ While there is no way to ask the driver for a context of the highest supported version, GLFW will attempt to provide this when you ask for a version 1.0 context, which is the default for these hints. -@par OpenGL ES -`GLFW_CONTEXT_VERSION_MAJOR` and `GLFW_CONTEXT_VERSION_MINOR` are not hard +@par +__OpenGL ES:__ `GLFW_CONTEXT_VERSION_MAJOR` and `GLFW_CONTEXT_VERSION_MINOR` are not hard constraints, but creation will fail if the OpenGL ES version of the created context is less than the one requested. Additionally, OpenGL ES 1.x cannot be returned if 2.0 or later was requested, and vice versa. This is because OpenGL diff --git a/include/GLFW/glfw3.h b/include/GLFW/glfw3.h index b7dab5b9..b88867a5 100644 --- a/include/GLFW/glfw3.h +++ b/include/GLFW/glfw3.h @@ -1049,8 +1049,6 @@ typedef struct GLFWgammaramp } GLFWgammaramp; /*! @brief Image data. - * - * @ingroup window */ typedef struct GLFWimage { @@ -1644,7 +1642,8 @@ GLFWAPI void glfwWindowHint(int target, int hint); * @remarks __X11:__ Some window managers will not respect the placement of * initially hidden windows. * - * @note This function may not be called from a callback. + * @par Reentrancy + * This function may not be called from a callback. * * @par Thread Safety * This function may only be called from the main thread. @@ -1672,11 +1671,12 @@ GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title, G * * @param[in] window The window to destroy. * - * @note This function may not be called from a callback. - * * @note The context of the specified window must not be current on any other * thread when this function is called. * + * @par Reentrancy + * This function may not be called from a callback. + * * @par Thread Safety * This function may only be called from the main thread. * @@ -2338,7 +2338,8 @@ GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window * * Event processing is not required for joystick input to work. * - * @note This function may not be called from a callback. + * @par Reentrancy + * This function may not be called from a callback. * * @par Thread Safety * This function may only be called from the main thread. @@ -2381,11 +2382,12 @@ GLFWAPI void glfwPollEvents(void); * * Event processing is not required for joystick input to work. * - * @note This function may not be called from a callback. - * * @note On some platforms, certain callbacks may be called outside of a call * to one of the event processing functions. * + * @par Reentrancy + * This function may not be called from a callback. + * * @par Thread Safety * This function may only be called from the main thread. * @@ -2659,11 +2661,12 @@ GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos); * @return A new cursor ready to use or `NULL` if an * [error](@ref error_handling) occurred. * - * @note This function may not be called from a callback. - * * @par Pointer Lifetime * The specified image data is copied before this function returns. * + * @par Reentrancy + * This function may not be called from a callback. + * * @par Thread Safety * This function may only be called from the main thread. * @@ -2688,7 +2691,8 @@ GLFWAPI GLFWcursor* glfwCreateCursor(const GLFWimage* image, int xhot, int yhot) * @return A new cursor ready to use or `NULL` if an * [error](@ref error_handling) occurred. * - * @note This function may not be called from a callback. + * @par Reentrancy + * This function may not be called from a callback. * * @par Thread Safety * This function may only be called from the main thread. @@ -2711,7 +2715,8 @@ GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape); * * @param[in] cursor The cursor object to destroy. * - * @note This function may not be called from a callback. + * @par Reentrancy + * This function may not be called from a callback. * * @par Thread Safety * This function may only be called from the main thread. diff --git a/src/win32_window.c b/src/win32_window.c index fd99d056..c81f91d7 100644 --- a/src/win32_window.c +++ b/src/win32_window.c @@ -1046,6 +1046,8 @@ void _glfwPlatformPollEvents(void) if (msg.message == WM_QUIT) { // Treat WM_QUIT as a close on all windows + // While GLFW does not itself post WM_QUIT, other processes may post + // it to this one, for example Task Manager window = _glfw.windowListHead; while (window)