[Bf-blender-cvs] [cbd15d387f8] master: GHOST/Wayland: don't send activate/deactivate on pointer enter/leave
Campbell Barton
noreply at git.blender.org
Sat Jan 21 13:09:35 CET 2023
Commit: cbd15d387f8418d85048a3051e64e510a18d10a9
Author: Campbell Barton
Date: Sat Jan 21 23:09:22 2023 +1100
Branches: master
https://developer.blender.org/rBcbd15d387f8418d85048a3051e64e510a18d10a9
GHOST/Wayland: don't send activate/deactivate on pointer enter/leave
This isn't correct as window activation is handled separately
from the cursor entering/leaving a window.
This would call de-activate when the cursor moved outside the window
even though the window remained focused.
Rely on focus changes which already handle activate/deactivate events.
===================================================================
M intern/ghost/intern/GHOST_SystemWayland.cpp
===================================================================
diff --git a/intern/ghost/intern/GHOST_SystemWayland.cpp b/intern/ghost/intern/GHOST_SystemWayland.cpp
index 6a163d8661e..3911014d8cb 100644
--- a/intern/ghost/intern/GHOST_SystemWayland.cpp
+++ b/intern/ghost/intern/GHOST_SystemWayland.cpp
@@ -2586,8 +2586,6 @@ static void pointer_handle_enter(void *data,
GHOST_WindowWayland *win = ghost_wl_surface_user_data(wl_surface);
- win->activate();
-
GWL_Seat *seat = static_cast<GWL_Seat *>(data);
seat->cursor_source_serial = serial;
seat->pointer.serial = serial;
@@ -2627,8 +2625,6 @@ static void pointer_handle_leave(void *data,
static_cast<GWL_Seat *>(data)->pointer.wl_surface_window = nullptr;
if (wl_surface && ghost_wl_surface_own(wl_surface)) {
CLOG_INFO(LOG, 2, "leave");
- GHOST_WindowWayland *win = ghost_wl_surface_user_data(wl_surface);
- win->deactivate();
}
else {
CLOG_INFO(LOG, 2, "leave (skipped)");
More information about the Bf-blender-cvs
mailing list