From 3cf9f6726d1062c219d861755768ec5a2a238ae4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Camilla=20L=C3=B6wy?= Date: Mon, 18 Aug 2025 16:17:55 +0200 Subject: [PATCH] Wayland: Fix fallback decoration cursor updating When a click through to the fallback decorations caused the end of a modal like the window menu, the cursor shape would not be updated until the next time the cursor moved. This commit adds an update of the cursor for the pointer enter event for fallback decoration surfaces, in addition to the updates at pointer motion events. --- README.md | 2 ++ src/wl_window.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/README.md b/README.md index 6efa1ae7..f7c3b07d 100644 --- a/README.md +++ b/README.md @@ -140,6 +140,8 @@ information on what to include when reporting a bug. - [Wayland] Bugfix: Fallback decorations would report scroll events - [Wayland] Bugfix: Keyboard repeat events halted when any key is released (#2568) - [Wayland] Bugfix: Fallback decorations would show menu at wrong position + - [Wayland] Bugfix: The cursor was not updated when clicking through from + a modal to a fallback decoration - [X11] Bugfix: Running without a WM could trigger an assert (#2593,#2601,#2631) - [Null] Added Vulkan 'window' surface creation via `VK_EXT_headless_surface` - [Null] Added EGL context creation on Mesa via `EGL_MESA_platform_surfaceless` diff --git a/src/wl_window.c b/src/wl_window.c index b9aa405d..ed767055 100644 --- a/src/wl_window.c +++ b/src/wl_window.c @@ -1542,7 +1542,10 @@ static void pointerHandleEnter(void* userData, else { if (window->wl.fallback.decorations) + { window->wl.fallback.focus = surface; + updateFallbackDecorationCursor(window, sx, sy); + } } }