summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2004-05-05 13:49:05 +0000
committerAlexander Larsson <alexl@src.gnome.org>2004-05-05 13:49:05 +0000
commit7969349a31bedc7f21a14ab6bfd3d78984bf71ec (patch)
tree7424e9f2ed955b7db9b44c3e7cfa9de4d1e61095
parentc3bb910606c6add13a5231eac7f4e431f898dc4d (diff)
downloadnautilus-7969349a31bedc7f21a14ab6bfd3d78984bf71ec.tar.gz
Use the inital click position to anchor the icon dnd.
2004-05-05 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-icon-dnd.h: * libnautilus-private/nautilus-icon-dnd.c (nautilus_icon_dnd_begin_drag): * libnautilus-private/nautilus-icon-container.c (motion_notify_event): Use the inital click position to anchor the icon dnd.
-rw-r--r--ChangeLog7
-rw-r--r--libnautilus-private/nautilus-icon-container.c4
-rw-r--r--libnautilus-private/nautilus-icon-dnd.c8
-rw-r--r--libnautilus-private/nautilus-icon-dnd.h4
4 files changed, 18 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 9e8b1c15c..ac08db0d1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2004-05-05 <alexl@cgf.boston.redhat.com>
+
+ * libnautilus-private/nautilus-icon-dnd.h:
+ * libnautilus-private/nautilus-icon-dnd.c (nautilus_icon_dnd_begin_drag):
+ * libnautilus-private/nautilus-icon-container.c (motion_notify_event):
+ Use the inital click position to anchor the icon dnd.
+
2004-04-30 Dave Camp <dave@ximian.com>
* libnautilus-private/nautilus-icon-container.c: (setup_label_gcs):
diff --git a/libnautilus-private/nautilus-icon-container.c b/libnautilus-private/nautilus-icon-container.c
index bee215f51..a1f8a1a96 100644
--- a/libnautilus-private/nautilus-icon-container.c
+++ b/libnautilus-private/nautilus-icon-container.c
@@ -3561,7 +3561,9 @@ motion_notify_event (GtkWidget *widget,
| GDK_ACTION_ASK)
: GDK_ACTION_ASK,
details->drag_button,
- event);
+ event,
+ details->drag_x,
+ details->drag_y);
}
break;
case DRAG_STATE_STRETCH:
diff --git a/libnautilus-private/nautilus-icon-dnd.c b/libnautilus-private/nautilus-icon-dnd.c
index 20f16bbc3..c984c3f6f 100644
--- a/libnautilus-private/nautilus-icon-dnd.c
+++ b/libnautilus-private/nautilus-icon-dnd.c
@@ -1216,7 +1216,9 @@ void
nautilus_icon_dnd_begin_drag (NautilusIconContainer *container,
GdkDragAction actions,
int button,
- GdkEventMotion *event)
+ GdkEventMotion *event,
+ int start_x,
+ int start_y)
{
NautilusIconDndInfo *dnd_info;
EelCanvas *canvas;
@@ -1237,8 +1239,8 @@ nautilus_icon_dnd_begin_drag (NautilusIconContainer *container,
the way the canvas handles events.
*/
canvas = EEL_CANVAS (container);
- dnd_info->drag_info.start_x = event->x - gtk_adjustment_get_value (gtk_layout_get_hadjustment (GTK_LAYOUT (canvas)));
- dnd_info->drag_info.start_y = event->y - gtk_adjustment_get_value (gtk_layout_get_vadjustment (GTK_LAYOUT (canvas)));
+ dnd_info->drag_info.start_x = start_x - gtk_adjustment_get_value (gtk_layout_get_hadjustment (GTK_LAYOUT (canvas)));
+ dnd_info->drag_info.start_y = start_y - gtk_adjustment_get_value (gtk_layout_get_vadjustment (GTK_LAYOUT (canvas)));
/* create a pixmap and mask to drag with */
pixmap = nautilus_icon_canvas_item_get_image (container->details->drag_icon->item, &mask);
diff --git a/libnautilus-private/nautilus-icon-dnd.h b/libnautilus-private/nautilus-icon-dnd.h
index 63637eb79..026089cee 100644
--- a/libnautilus-private/nautilus-icon-dnd.h
+++ b/libnautilus-private/nautilus-icon-dnd.h
@@ -52,7 +52,9 @@ void nautilus_icon_dnd_set_stipple (NautilusIconContainer *container
void nautilus_icon_dnd_begin_drag (NautilusIconContainer *container,
GdkDragAction actions,
gint button,
- GdkEventMotion *event);
+ GdkEventMotion *event,
+ int start_x,
+ int start_y);
void nautilus_icon_dnd_end_drag (NautilusIconContainer *container);
GList *nautilus_icon_dnd_uri_list_extract_uris (const char *uri_list);