From: Dave A. <da...@gu...> - 2008-06-23 13:48:14
|
Ok, the problem happend only when the shelf is stacked on the background. The attached patch fix it, I'm not sure this is the right way, but seems that _e_drag_win_matches is not needed by xdnd. Thanks Dave ----- "Dave Andreoli" <da...@gu...> ha scritto: > This commit has stopped all the xdnd to work both in the shelf and in > the gadcon :( > > DaveMDS > > > ----- "Enlightenment CVS" <no...@cv...> ha scritto: > > > Enlightenment CVS committal > > > > Author : englebass > > Project : e17 > > Module : apps/e > > > > Dir : e17/apps/e/src/bin > > > > > > Modified Files: > > e_dnd.c > > > > > > Log Message: > > We don't need to search for window at pointer with xdnd, xdnd > handles > > this > > already. > > > > =================================================================== > > RCS file: /cvs/e/e17/apps/e/src/bin/e_dnd.c,v > > retrieving revision 1.75 > > retrieving revision 1.76 > > diff -u -3 -r1.75 -r1.76 > > --- e_dnd.c 15 Jun 2008 12:19:40 -0000 1.75 > > +++ e_dnd.c 15 Jun 2008 12:28:16 -0000 1.76 > > @@ -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); > > @@ -890,24 +886,13 @@ > > } > > > > static void > > -_e_drag_xdnd_end(Ecore_X_Window root, int x, int y) > > +_e_drag_xdnd_end(Ecore_X_Window win, int x, int y) > > { > > Evas_List *l; > > E_Event_Dnd_Drop ev; > > int dx, dy, dw, dh; > > - Ecore_X_Window win, ignore_win[2]; > > > > if (!_xdnd) return; > > - if (_drag_current) > > - { > > - ignore_win[0] = _drag_current->evas_win; > > - ignore_win[1] = _drag_win; > > - win = ecore_x_window_shadow_tree_at_xy_with_skip_get(root, x, y, > > ignore_win, 2); > > -// win = ecore_x_window_at_xy_with_skip_get(x, y, ignore_win, 2); > > - } > > - else > > - 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); > > > > ev.data = _xdnd->data; > > > > > > > > > > > ------------------------------------------------------------------------- > > 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-cvs mailing list > > enl...@li... > > https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs > > ------------------------------------------------------------------------- > 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 > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel |