]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkdnd-quartz.c
Quartz: gtk_drag_highlight_draw(): Set the GtkStyleContext to the widget.
[~andy/gtk] / gtk / gtkdnd-quartz.c
index dced9a39de89b93f3f1979933bedbfa328484a48..b577bb6f105ae4a6d808d6c2b70b87643c773c0f 100644 (file)
@@ -147,6 +147,7 @@ struct _GtkDragFindData
   selection_data.data = NULL;
   selection_data.length = -1;
   selection_data.target = _gtk_quartz_pasteboard_type_to_atom (type);
+  selection_data.display = gdk_display_get_default ();
 
   if (gtk_target_list_find (info->target_list, 
                            selection_data.target, 
@@ -347,7 +348,7 @@ gtk_drag_highlight_draw (GtkWidget *widget,
 {
   int width = gtk_widget_get_allocated_width (widget);
   int height = gtk_widget_get_allocated_height (widget);
-  GtkStyleContext *context;
+  GtkStyleContext *context = gtk_widget_get_style_context (widget);
 
   gtk_style_context_save (context);
   gtk_style_context_add_class (context, GTK_STYLE_CLASS_DND);
@@ -1110,6 +1111,7 @@ gtk_drag_begin_internal (GtkWidget         *widget,
 {
   GtkDragSourceInfo *info;
   GdkDragContext *context;
+  GdkDevice *pointer;
   NSWindow *nswindow;
 
   context = gdk_drag_begin (gtk_widget_get_window (widget), NULL);
@@ -1166,7 +1168,8 @@ gtk_drag_begin_internal (GtkWidget         *widget,
 
   g_idle_add_full (G_PRIORITY_HIGH_IDLE, gtk_drag_begin_idle, context, NULL);
 
-  gdk_pointer_ungrab (0);
+  pointer = gdk_drag_context_get_device (info->context);
+  gdk_device_ungrab (pointer, 0);
 
   return context;
 }