glfw/src
Camilla Löwy 7cc8879ab9 Wayland: Use Wayland to wait for libdecor to init
Much of libdecor is initialized only after certain events have been
received from the compositor and some parts of libdecor 0.1 are unsafe
to use until this delayed initialization has completed.

Since libdecor does not provide an API to query if or be notified when
this has happened, GLFW processed events until its newly created
libdecor frame had created its XDG shell objects.

This commit switches to using a generic Wayland sync point created just
after libdecor (and presumably its plugin) has set up its delayed
initialization, instead of relying on the more specific implementation
detail mentioned above.

It also makes this wait mandatory before the first libdecor frame is
created instead of a pre-condition for certain libdecor frame calls,
hopefully removing even more dependence on implementation details.

(cherry picked from commit 9fdc425931)
2023-11-30 21:31:58 +01:00
..
CMakeLists.txt Win32: Add library name suffix to pkg-config file 2023-11-27 17:01:35 +01:00
cocoa_init.m Fix macOS Print Screen 2023-11-16 22:50:41 +01:00
cocoa_joystick.h Add gamepad mapping filtering by backend 2021-08-03 16:01:03 +02:00
cocoa_joystick.m Fix joystick user pointer NULL during disconnect 2022-07-12 20:27:34 +02:00
cocoa_monitor.m Cocoa: Fix AirPlay causing harmless init error 2022-05-06 19:34:05 +02:00
cocoa_platform.h Cocoa: Clarify comments on compatibility macros 2022-02-15 21:25:42 +01:00
cocoa_time.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
cocoa_window.m Cocoa: Fix clearing of unrelated window style bits 2022-07-13 23:20:54 +02:00
context.c Check if context creation APIs match when sharing 2022-10-31 22:03:47 +01:00
egl_context.c EGL: Cleanup 2022-10-31 22:05:22 +01:00
egl_context.h EGL: Use EGL_EXT_present_opaque when available 2021-12-24 01:51:24 +01:00
glfw3.pc.in Win32: Add library name suffix to pkg-config file 2023-11-27 17:01:35 +01:00
glfw3Config.cmake.in Include imported targets into module config file 2016-02-02 06:00:18 +01:00
glfw_config.h.in Wayland: Require xkbcommon 0.5.0 or greater 2022-02-15 21:20:28 +01:00
glx_context.c GLX: Add support for loading glvnd libGLX 2022-10-31 21:57:21 +01:00
glx_context.h GLX: Add support for loading glvnd libGLX 2022-10-31 21:57:21 +01:00
init.c Wayland: Add initial support for libdecor 2023-07-19 17:23:25 +02:00
input.c Fix joystick user pointer NULL during disconnect 2022-07-12 20:27:34 +02:00
internal.h Wayland: Add initial support for libdecor 2023-07-19 17:23:25 +02:00
linux_joystick.c Cleanup 2023-11-28 22:17:40 +01:00
linux_joystick.h Cleanup 2023-11-28 22:17:40 +01:00
mappings.h Simplify parsing of default gamepad mappings 2021-08-27 17:13:12 +02:00
mappings.h.in Simplify parsing of default gamepad mappings 2021-08-27 17:13:12 +02:00
monitor.c Fix order of error checks in glfwSetGammaRamp 2022-06-09 19:41:56 +02:00
nsgl_context.h Cocoa: Clarify comments on compatibility macros 2022-02-15 21:25:42 +01:00
nsgl_context.m Fix context API checks in native access functions 2021-10-28 12:29:57 +02:00
null_init.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
null_joystick.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
null_joystick.h Fix -Wextra-semi warnings 2019-11-05 17:59:15 +01:00
null_monitor.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
null_platform.h Fix -Wextra-semi warnings 2019-11-05 17:59:15 +01:00
null_window.c Move last bits of window setup to platform code 2022-06-10 17:11:01 +02:00
osmesa_context.c X11: Fix sonames for loaded libraries on NetBSD 2022-03-13 16:43:58 +01:00
osmesa_context.h Remove blank line before the end of some structs 2021-10-28 12:14:58 +02:00
posix_thread.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
posix_thread.h Remove blank line before the end of some structs 2021-10-28 12:14:58 +02:00
posix_time.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
posix_time.h Remove blank line before the end of some structs 2021-10-28 12:14:58 +02:00
vulkan.c X11: Fix sonames for loaded libraries on NetBSD 2022-03-13 16:43:58 +01:00
wgl_context.c WGL: Fix count of displayable pixel formats 2022-10-31 22:03:35 +01:00
wgl_context.h Remove blank line before the end of some structs 2021-10-28 12:14:58 +02:00
win32_init.c Win32: Add comment clarifying use of ToUnicode 2022-06-10 17:11:13 +02:00
win32_joystick.c Fix joystick user pointer NULL during disconnect 2022-07-12 20:27:34 +02:00
win32_joystick.h Add gamepad mapping filtering by backend 2021-08-03 16:01:03 +02:00
win32_monitor.c Win32: Fix calls to encoding compatibility macros 2022-03-20 16:00:34 +01:00
win32_platform.h Refactor cursor mode paths 2022-10-31 21:29:42 +01:00
win32_thread.c Add C dialect reminders to each source file 2019-05-27 16:33:22 +02:00
win32_time.c Win32: Remove timeGetTime fallback for timer 2021-10-28 12:24:38 +02:00
win32_window.c Win32: Fix glfwWaitEventsTimeout ignoring messages 2023-11-28 22:15:23 +01:00
window.c Move last bits of window setup to platform code 2022-06-10 17:11:01 +02:00
wl_init.c Wayland: Use Wayland to wait for libdecor to init 2023-11-30 21:31:58 +01:00
wl_monitor.c Wayland: Simplify per-window ouput scales tracking 2023-03-28 17:43:39 +02:00
wl_platform.h Wayland: Use Wayland to wait for libdecor to init 2023-11-30 21:31:58 +01:00
wl_window.c Wayland: Use Wayland to wait for libdecor to init 2023-11-30 21:31:58 +01:00
x11_init.c X11: Fix previous error handler not being restored 2022-07-12 20:29:22 +02:00
x11_monitor.c Fix typos 2020-06-30 17:09:55 +02:00
x11_platform.h X11: Fix previous error handler not being restored 2022-07-12 20:29:22 +02:00
x11_window.c X11: Preserve unrelated values in WM_NORMAL_HINTS 2022-10-31 21:48:04 +01:00
xkb_unicode.c Clean up internal Unicode code point handling 2022-02-15 21:08:17 +01:00
xkb_unicode.h Clean up internal Unicode code point handling 2022-02-15 21:08:17 +01:00