summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <christian@hergert.me>2022-03-09 13:20:53 -0800
committerChristian Hergert <chergert@redhat.com>2022-03-16 12:25:10 -0700
commit659832ccab1bfab984807454f50e927aeda41666 (patch)
tree6021cfe1a9ffa90c5c8ad45d262de8bdceaeb957
parent913f6d4a4fc63f2ba19c00b8db6d9c3ab268adc9 (diff)
downloadgtk+-659832ccab1bfab984807454f50e927aeda41666.tar.gz
macos: drop enter/exit when in manual drag/resize
If we are in a manual resize/drag then we don't want to generate crossing events as they can just confuse things.
-rw-r--r--gdk/macos/gdkmacosdisplay-translate.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gdk/macos/gdkmacosdisplay-translate.c b/gdk/macos/gdkmacosdisplay-translate.c
index e3fb03fea5..fe4701c39d 100644
--- a/gdk/macos/gdkmacosdisplay-translate.c
+++ b/gdk/macos/gdkmacosdisplay-translate.c
@@ -1200,7 +1200,11 @@ _gdk_macos_display_translate (GdkMacosDisplay *self,
GdkDevice *pointer = gdk_seat_get_pointer (seat);
GdkDeviceGrabInfo *grab = _gdk_display_get_last_device_grab (GDK_DISPLAY (self), pointer);
- if (grab == NULL)
+ if ([(GdkMacosWindow *)window isInManualResizeOrMove])
+ {
+ ret = GDK_MACOS_EVENT_DROP;
+ }
+ else if (grab == NULL)
{
if (event_type == NSEventTypeMouseExited)
[[NSCursor arrowCursor] set];