Due to Wayland, shared code cannot rely on cursor positioning being
supported by the underlying platform.
This implicitly fixes#617 as it moves cursor centering into
_glfwPlatformSetCursorMode, thus separating it from the stale value of
_glfw.cursorWindow.
Fixes#617.
Added GLFW_INCLUDE_VULKAN. Added glfwVulkanSupported,
glfwGetRequiredInstanceExtensions, glfwGetInstanceProcAddress,
glfwGetPhysicalDevicePresentationSupport and glfwCreateWindowSurface.
Added port of LunarG SDK tri example.
Duplicate events cannot be filtered by the return value of XFilterEvent,
as that discards dead key events on some IMs (ibus), nor by its inverse,
as that discards all key events on other IMs (?). This solution is
based on the workaround in SDL2 and takes advantage of the identical
time of the duplicate events.
Fixes#548.
Closes#554.
Closes#571.
This allows EWMH full screen windows to correctly cover monitors that
overlap other monitors, such as an Oculus Rift mapped onto a section of
a larger monitor.
Fixes#175.
The library will now try to create an X input context to handle dead
keys properly on international keyboards. This makes it possible to
enter for example an e with accent grave on a German keyboard without
further efforts. A fallback mechanism is provided in case the client
does not support X input method / context creation. In that case, the
library will behave as it did before.
This patch introduces a new backend that enables GLFW applications to
run on Wayland. For now, only output is supported (windowed and
fullscreen). Pointer cursor management, input devices, clipboard etc are
not supported yet.
There are some concepts that can not be supported, more specifically
glfwSetWindowPos, glfwGetWindowPos and glfwSetCursorPos, as they are not
supported by Wayland.
This patch also changes the time and joystick implementations used by the
X11 backend to be shared between the Wayland backend and the X11 backend.