]> Pileus Git - ~andy/gtk/commitdiff
Merged from stable.
authorKristian Rietveld <kris@gtk.org>
Thu, 29 May 2003 14:36:03 +0000 (14:36 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Thu, 29 May 2003 14:36:03 +0000 (14:36 +0000)
Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>

Merged from stable.

* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
(gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
instead of _maybe_begin_dragging_row, so the icon can be
overridden by apps. (Fixes #104374, patch from Daniel Elstner).

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtktreeview.c

index 59857194d3519d8fd72e7c9c63575e1dcb51cc6f..111e0c5bfbf81d1ddb7c891d9fcfabcec84291e6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
+
+       Merged from stable.
+
+       * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
+       (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
+       instead of _maybe_begin_dragging_row, so the icon can be
+       overridden by apps. (Fixes #104374, patch from Daniel Elstner).
+
 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
 
        Merged from stable.
index 59857194d3519d8fd72e7c9c63575e1dcb51cc6f..111e0c5bfbf81d1ddb7c891d9fcfabcec84291e6 100644 (file)
@@ -1,3 +1,12 @@
+Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
+
+       Merged from stable.
+
+       * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
+       (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
+       instead of _maybe_begin_dragging_row, so the icon can be
+       overridden by apps. (Fixes #104374, patch from Daniel Elstner).
+
 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
 
        Merged from stable.
index 59857194d3519d8fd72e7c9c63575e1dcb51cc6f..111e0c5bfbf81d1ddb7c891d9fcfabcec84291e6 100644 (file)
@@ -1,3 +1,12 @@
+Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
+
+       Merged from stable.
+
+       * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
+       (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
+       instead of _maybe_begin_dragging_row, so the icon can be
+       overridden by apps. (Fixes #104374, patch from Daniel Elstner).
+
 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
 
        Merged from stable.
index 59857194d3519d8fd72e7c9c63575e1dcb51cc6f..111e0c5bfbf81d1ddb7c891d9fcfabcec84291e6 100644 (file)
@@ -1,3 +1,12 @@
+Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
+
+       Merged from stable.
+
+       * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
+       (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
+       instead of _maybe_begin_dragging_row, so the icon can be
+       overridden by apps. (Fixes #104374, patch from Daniel Elstner).
+
 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
 
        Merged from stable.
index 59857194d3519d8fd72e7c9c63575e1dcb51cc6f..111e0c5bfbf81d1ddb7c891d9fcfabcec84291e6 100644 (file)
@@ -1,3 +1,12 @@
+Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
+
+       Merged from stable.
+
+       * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
+       (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
+       instead of _maybe_begin_dragging_row, so the icon can be
+       overridden by apps. (Fixes #104374, patch from Daniel Elstner).
+
 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
 
        Merged from stable.
index 03fedd92014ebdde002dc0fb7f814de027fecf62..0c474a3e0c98884abbeb10fe665f6762a5918282 100644 (file)
@@ -5131,25 +5131,6 @@ gtk_tree_view_maybe_begin_dragging_row (GtkTreeView      *tree_view,
                             button,
                             (GdkEvent*)event);
 
-  gtk_drag_set_icon_default (context);
-
-  {
-    GdkPixmap *row_pix;
-
-    row_pix = gtk_tree_view_create_row_drag_icon (tree_view,
-                                                  path);
-
-    gtk_drag_set_icon_pixmap (context,
-                              gdk_drawable_get_colormap (row_pix),
-                              row_pix,
-                              NULL,
-                              /* the + 1 is for the black border in the icon */
-                              tree_view->priv->press_start_x + 1,
-                              cell_y + 1);
-
-    g_object_unref (row_pix);
-  }
-
   set_source_row (context, model, path);
 
  out:
@@ -5164,7 +5145,38 @@ static void
 gtk_tree_view_drag_begin (GtkWidget      *widget,
                           GdkDragContext *context)
 {
-  /* do nothing */
+  GtkTreeView *tree_view;
+  GtkTreePath *path = NULL;
+  gint cell_x, cell_y;
+  GdkPixmap *row_pix;
+
+  tree_view = GTK_TREE_VIEW (widget);
+
+  g_return_if_fail (get_info (tree_view) != NULL);
+
+  gtk_tree_view_get_path_at_pos (tree_view,
+                                 tree_view->priv->press_start_x,
+                                 tree_view->priv->press_start_y,
+                                 &path,
+                                 NULL,
+                                 &cell_x,
+                                 &cell_y);
+
+  g_return_if_fail (path != NULL);
+
+  row_pix = gtk_tree_view_create_row_drag_icon (tree_view,
+                                                path);
+
+  gtk_drag_set_icon_pixmap (context,
+                            gdk_drawable_get_colormap (row_pix),
+                            row_pix,
+                            NULL,
+                            /* the + 1 is for the black border in the icon */
+                            tree_view->priv->press_start_x + 1,
+                            cell_y + 1);
+
+  g_object_unref (row_pix);
+  gtk_tree_path_free (path);
 }
 
 static void