Dave Andreoli wrote:
Hi list!
Attached a patch to solve 2 bugs related to the dnd on shelfs and on the
desktop:
1. The first fix simply check if the module is in a shelf before do a shelf
operation
2. The second set the value of _drag_win_root in case the drag is not generated by e .This fix the bug mentioned in the trash announce :)
Could you try this patch? When doing external dragging into e, the
window in the event should be the one we need, so no need to search.
Haven't at test case myself.
Sebastian
Index: e_dnd.c
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_dnd.c,v
retrieving revision 1.71
diff -u -r1.71 e_dnd.c
--- e_dnd.c 13 Jun 2008 10:57:06 -0000 1.71
+++ e_dnd.c 13 Jun 2008 11:52:38 -0000
@@ -680,12 +680,8 @@
// win = ecore_x_window_at_xy_with_skip_get(x, y, ignore_win, 2);
}
else
- /* FIXME: this is nasty. every x mouse event we go back to x and do
- * a whole bunch of round-trips narrowing down the toplevel window
- * which contains the mouse */
- win = ecore_x_window_shadow_tree_at_xy_with_skip_get(root, x, y, NULL, 0);
-// win = ecore_x_window_at_xy_with_skip_get(x, y, NULL, 0);
-
+ win = root;
+
if (_drag_current)
{
_e_drag_show(_drag_current);
@@ -1184,7 +1180,7 @@
}
else
{
- _e_drag_update(_drag_win_root, ev->position.x, ev->position.y);
+ _e_drag_update(ev->win, ev->position.x, ev->position.y);
ecore_x_dnd_send_status(1, 0, rect, ECORE_X_DND_ACTION_PRIVATE);
}
// double t2 = ecore_time_get() - t1; ////
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel