[gtk/wip/chergert/quartz4u] begin move drag



commit b4e0ad6a9b8823fcce280a155d3e9d922f264d70
Author: Christian Hergert <chergert redhat com>
Date:   Thu Apr 30 12:59:09 2020 -0700

    begin move drag

 gdk/macos/gdkmacossurface.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
---
diff --git a/gdk/macos/gdkmacossurface.c b/gdk/macos/gdkmacossurface.c
index cfce4ae8ca..4e8c7cc59f 100644
--- a/gdk/macos/gdkmacossurface.c
+++ b/gdk/macos/gdkmacossurface.c
@@ -123,6 +123,25 @@ gdk_macos_surface_begin_resize_drag (GdkSurface     *surface,
   [priv->window beginManualResize:edge];
 }
 
+static void
+gdk_macos_surface_begin_move_drag (GdkSurface     *surface,
+                                   GdkDevice      *device,
+                                   int             button,
+                                   int             root_x,
+                                   int             root_y,
+                                   guint32         timestamp)
+{
+  GdkMacosSurface *self = (GdkMacosSurface *)surface;
+  GdkMacosSurfacePrivate *priv = gdk_macos_surface_get_instance_private (self);
+
+  g_assert (GDK_IS_MACOS_SURFACE (self));
+
+  if (GDK_SURFACE_DESTROYED (surface))
+    return;
+
+  [priv->window beginManualMove];
+}
+
 static void
 gdk_macos_surface_destroy (GdkSurface *surface,
                            gboolean    foreign_destroy)
@@ -194,6 +213,7 @@ gdk_macos_surface_class_init (GdkMacosSurfaceClass *klass)
 
   surface_class->destroy = gdk_macos_surface_destroy;
   surface_class->begin_resize_drag = gdk_macos_surface_begin_resize_drag;
+  surface_class->begin_move_drag = gdk_macos_surface_begin_move_drag;
   surface_class->hide = gdk_macos_surface_hide;
   surface_class->set_input_region = gdk_macos_surface_set_input_region;
   surface_class->get_scale_factor = gdk_macos_surface_get_scale_factor;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]