i think this is the right way to fix the subwindow issue. e->event_win is the window the event originally occured in, while the value of e->win depends on whether it's a subwindow crossing or not. spank me if i'm wrong.

SVN revision: 10795
This commit is contained in:
tsauerbeck 2004-07-12 17:53:37 +00:00 committed by tsauerbeck
parent 3881978d6a
commit 1753eaa65f
1 changed files with 2 additions and 2 deletions

View File

@ -210,7 +210,7 @@ _ecore_evas_event_mouse_in(void *data, int type, void *event)
e = event;
ee = _ecore_evas_x_match(e->win);
if (!ee) return 1; /* pass on event */
if (e->win == ee->engine.x.win_container) return 0;
if (e->event_win == ee->engine.x.win_container) return 0;
if (ee->func.fn_mouse_in) ee->func.fn_mouse_in(ee);
_ecore_evas_modifier_locks_update(ee, e->modifiers);
evas_event_feed_mouse_in(ee->evas);
@ -227,7 +227,7 @@ _ecore_evas_event_mouse_out(void *data, int type, void *event)
e = event;
ee = _ecore_evas_x_match(e->win);
if (!ee) return 1; /* pass on event */
if (e->win == ee->engine.x.win_container) return 0;
if (e->event_win == ee->engine.x.win_container) return 0;
_ecore_evas_modifier_locks_update(ee, e->modifiers);
_ecore_evas_mouse_move_process(ee, e->x, e->y);
evas_event_feed_mouse_out(ee->evas);