Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_actions.c e_border.c e_gadman.c e_menu.c e_menu.h e_test.c e_utils.c Log Message: one way or the other i'm forced to add timestamps to events - i cant avoid it anymore. sorry guys. really no way around it. :( =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_actions.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- e_actions.c 19 Jul 2005 08:48:24 -0000 1.19 +++ e_actions.c 25 Jul 2005 09:55:43 -0000 1.20 @@ -614,7 +614,8 @@ ecore_x_pointer_xy_get(zone->container->win, &x, &y); e_menu_post_deactivate_callback_set(m, _e_actions_cb_menu_end, NULL); e_menu_activate_mouse(m, zone, x, y, 1, 1, - E_MENU_POP_DIRECTION_DOWN); + E_MENU_POP_DIRECTION_DOWN, + ecore_x_current_time_get()); } } } @@ -649,7 +650,7 @@ y -= zone->container->y; e_menu_post_deactivate_callback_set(m, _e_actions_cb_menu_end, NULL); e_menu_activate_mouse(m, zone, x, y, 1, 1, - E_MENU_POP_DIRECTION_DOWN); + E_MENU_POP_DIRECTION_DOWN, ev->time); e_util_container_fake_mouse_up_all_later(zone->container); } } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.340 retrieving revision 1.341 diff -u -3 -r1.340 -r1.341 --- e_border.c 20 Jul 2005 13:07:41 -0000 1.340 +++ e_border.c 25 Jul 2005 09:55:44 -0000 1.341 @@ -77,7 +77,7 @@ static int _e_border_shade_animator(void *data); static void _e_border_cb_border_menu_end(void *data, E_Menu *m); -static void _e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y, int key); +static void _e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y, int key, Ecore_X_Time timestamp); static void _e_border_menu_cb_close(void *data, E_Menu *m, E_Menu_Item *mi); static void _e_border_menu_cb_iconify(void *data, E_Menu *m, E_Menu_Item *mi); static void _e_border_menu_cb_kill(void *data, E_Menu *m, E_Menu_Item *mi); @@ -1688,14 +1688,15 @@ { _e_border_menu_show(bd, bd->x + ev->x - bd->zone->container->x, - bd->y + ev->y - bd->zone->container->y, key); + bd->y + ev->y - bd->zone->container->y, key, + ev->time); } else { int x, y; ecore_x_pointer_xy_get(bd->zone->container->win, &x, &y); - _e_border_menu_show(bd, x, y, key); + _e_border_menu_show(bd, x, y, key, 0); } } @@ -3172,7 +3173,7 @@ Evas_Coord x, y; evas_pointer_canvas_xy_get(bd->bg_evas , &x, &y); - _e_border_menu_show(bd, x + bd->x, y + bd->y, 0); + _e_border_menu_show(bd, x + bd->x, y + bd->y, 0, 0); } else if (!strcmp(source, "raise")) { @@ -3255,8 +3256,8 @@ #endif bd->mouse.current.mx = ev->root.x; bd->mouse.current.my = ev->root.y; - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); - evas_event_feed_mouse_in(bd->bg_evas, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); + evas_event_feed_mouse_in(bd->bg_evas, ev->time, NULL); return 1; } @@ -3325,8 +3326,8 @@ #endif bd->mouse.current.mx = ev->root.x; bd->mouse.current.my = ev->root.y; - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); - evas_event_feed_mouse_out(bd->bg_evas, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); + evas_event_feed_mouse_out(bd->bg_evas, ev->time, NULL); return 1; } @@ -3417,8 +3418,8 @@ if (ev->double_click) flags |= EVAS_BUTTON_DOUBLE_CLICK; if (ev->triple_click) flags |= EVAS_BUTTON_TRIPLE_CLICK; - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); - evas_event_feed_mouse_down(bd->bg_evas, ev->button, flags, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); + evas_event_feed_mouse_down(bd->bg_evas, ev->button, flags, ev->time, NULL); } return 1; } @@ -3474,8 +3475,8 @@ bd->drag.start = 0; - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); - evas_event_feed_mouse_up(bd->bg_evas, ev->button, EVAS_BUTTON_NONE, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); + evas_event_feed_mouse_up(bd->bg_evas, ev->button, EVAS_BUTTON_NONE, ev->time, NULL); return 1; } @@ -3588,13 +3589,14 @@ e_drag_resize(drag, w, h); e_drag_start(drag, bd->drag.x, bd->drag.y); evas_event_feed_mouse_up(bd->bg_evas, 1, - EVAS_BUTTON_NONE, NULL); + EVAS_BUTTON_NONE, ev->time, + NULL); } bd->drag.start = 0; } } } - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); } return 1; } @@ -3610,8 +3612,8 @@ if (ev->win != bd->event_win) return 1; bd->mouse.current.mx = ev->root.x; bd->mouse.current.my = ev->root.y; - evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, NULL); - evas_event_feed_mouse_wheel(bd->bg_evas, ev->direction, ev->z, NULL); + evas_event_feed_mouse_move(bd->bg_evas, ev->x, ev->y, ev->time, NULL); + evas_event_feed_mouse_wheel(bd->bg_evas, ev->direction, ev->z, ev->time, NULL); return 1; } @@ -4746,14 +4748,21 @@ bd->need_shape_export = 0; } + bd->changed = 0; + + bd->changes.stack = 0; + bd->changes.prop = 0; + bd->changes.border = 0; + if ((bd->take_focus) || (bd->want_focus)) { + bd->take_focus = 0; if ((e_config->focus_setting == E_FOCUS_NEW_WINDOW) || (bd->want_focus)) { + bd->want_focus = 0; if (!bd->lock_focus_out) e_border_focus_set(bd, 1, 1); - bd->want_focus = 0; } else { @@ -4772,14 +4781,7 @@ } } } - bd->take_focus = 0; } - - bd->changed = 0; - - bd->changes.stack = 0; - bd->changes.prop = 0; - bd->changes.border = 0; if (bd->remember) e_remember_update(bd->remember, bd); @@ -5573,7 +5575,7 @@ } static void -_e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y, int key) +_e_border_menu_show(E_Border *bd, Evas_Coord x, Evas_Coord y, int key, Ecore_X_Time timestamp) { E_Menu *m; E_Menu_Item *mi; @@ -5935,7 +5937,7 @@ E_MENU_POP_DIRECTION_DOWN); else e_menu_activate_mouse(m, bd->zone, x, y, 1, 1, - E_MENU_POP_DIRECTION_DOWN); + E_MENU_POP_DIRECTION_DOWN, timestamp); } static void =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_gadman.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -3 -r1.40 -r1.41 --- e_gadman.c 9 Jul 2005 15:42:03 -0000 1.40 +++ e_gadman.c 25 Jul 2005 09:55:44 -0000 1.41 @@ -1067,7 +1067,7 @@ { e_menu_post_deactivate_callback_set(m, _e_gadman_cb_menu_end, gmc); e_menu_activate_mouse(m, gmc->zone, ev->output.x, ev->output.y, 1, 1, - E_MENU_POP_DIRECTION_DOWN); + E_MENU_POP_DIRECTION_DOWN, ev->timestamp); e_util_container_fake_mouse_up_all_later(gmc->zone->container); } } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.c,v retrieving revision 1.37 retrieving revision 1.38 diff -u -3 -r1.37 -r1.38 --- e_menu.c 22 Jul 2005 10:28:09 -0000 1.37 +++ e_menu.c 25 Jul 2005 09:55:44 -0000 1.38 @@ -73,7 +73,7 @@ /* local subsystem globals */ static Ecore_X_Window _e_menu_win = 0; static Evas_List *_e_active_menus = NULL; -static double _e_menu_activate_time = 0.0; +static Ecore_X_Time _e_menu_activate_time = 0; static int _e_menu_activate_floating = 0; static Ecore_Timer *_e_menu_scroll_timer = NULL; static double _e_menu_scroll_start = 0.0; @@ -150,7 +150,7 @@ E_OBJECT_TYPE_CHECK(m, E_MENU_TYPE); E_OBJECT_CHECK(zone); E_OBJECT_TYPE_CHECK(zone, E_ZONE_TYPE); - _e_menu_activate_time = 0.0; + _e_menu_activate_time = 0; _e_menu_activate_floating = 0; _e_menu_activate_internal(m, zone); switch (dir) @@ -197,7 +197,7 @@ } void -e_menu_activate_mouse(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir) +e_menu_activate_mouse(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir, Ecore_X_Time activate_time) { E_Menu_Item *pmi; @@ -205,7 +205,7 @@ E_OBJECT_TYPE_CHECK(m, E_MENU_TYPE); E_OBJECT_CHECK(zone); E_OBJECT_TYPE_CHECK(zone, E_ZONE_TYPE); - _e_menu_activate_time = ecore_time_get(); + _e_menu_activate_time = activate_time; _e_menu_activate_floating = 0; _e_menu_activate_internal(m, zone); switch (dir) @@ -249,7 +249,7 @@ E_OBJECT_TYPE_CHECK(m, E_MENU_TYPE); E_OBJECT_CHECK(zone); E_OBJECT_TYPE_CHECK(zone, E_ZONE_TYPE); - _e_menu_activate_time = 0.0; + _e_menu_activate_time = 0; _e_menu_activate_floating = 0; _e_menu_activate_internal(m, zone); switch (dir) @@ -1183,8 +1183,8 @@ m->evas = ecore_evas_get(m->ecore_evas); evas_event_freeze(m->evas); /* move cursor out to avoid event cycles during setup */ - evas_event_feed_mouse_in(m->evas, NULL); - evas_event_feed_mouse_move(m->evas, -1000000, -1000000, NULL); + evas_event_feed_mouse_in(m->evas, ecore_x_current_time_get(), NULL); + evas_event_feed_mouse_move(m->evas, -1000000, -1000000, ecore_x_current_time_get(), NULL); ecore_x_window_shape_events_select(m->evas_win, 1); ecore_evas_name_class_set(m->ecore_evas, "E", "_e_menu_window"); ecore_evas_title_set(m->ecore_evas, "E Menu"); @@ -2279,15 +2279,15 @@ _e_menu_cb_mouse_up(void *data, int type, void *event) { Ecore_X_Event_Mouse_Button_Up *ev; - double t; + Ecore_X_Time t; int ret; ev = event; if (ev->win != _e_menu_win) return 1; - t = ecore_time_get(); - if ((_e_menu_activate_time != 0.0) && - ((t - _e_menu_activate_time) < e_config->menus_click_drag_timeout)) + t = ev->time - _e_menu_activate_time; + if ((_e_menu_activate_time != 0) && + (t < (e_config->menus_click_drag_timeout * 1000))) { _e_menu_activate_floating = 1; return 1; @@ -2297,7 +2297,7 @@ if (ret == 1) { /* allow mouse to pop down menu if clicked elsewhere */ -/* if (_e_menu_activate_time != 0.0) */ +/* if (_e_menu_activate_time != 0) */ _e_menu_deactivate_all(); } else if (ret == -1) @@ -2358,6 +2358,7 @@ evas_event_feed_mouse_move(m->evas, ev->x - m->cur.x + m->zone->x, ev->y - m->cur.y + m->zone->y, + ev->time, NULL); } } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- e_menu.h 27 Jun 2005 10:08:53 -0000 1.13 +++ e_menu.h 25 Jul 2005 09:55:45 -0000 1.14 @@ -133,7 +133,7 @@ EAPI E_Menu *e_menu_new(void); EAPI void e_menu_activate_key(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir); -EAPI void e_menu_activate_mouse(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir); +EAPI void e_menu_activate_mouse(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir, Ecore_X_Time activate_time); EAPI void e_menu_activate(E_Menu *m, E_Zone *zone, int x, int y, int w, int h, int dir); EAPI void e_menu_deactivate(E_Menu *m); EAPI int e_menu_freeze(E_Menu *m); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_test.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- e_test.c 22 Jul 2005 10:28:10 -0000 1.9 +++ e_test.c 25 Jul 2005 09:55:45 -0000 1.10 @@ -194,7 +194,7 @@ m = e_int_menus_main_new(); e_menu_activate_mouse(m, e_container_zone_number_get(e_container_current_get(man), 0), - 0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN); + 0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN, 0); ecore_timer_add(0.05, _e_test_timer, m); return 0; } @@ -277,7 +277,7 @@ m = e_int_menus_main_new(); e_menu_activate_mouse(m, e_container_zone_number_get(e_container_current_get(man), 0), - 0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN); + 0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN, 0); ecore_timer_add(0.02, _e_test_timer, m); } } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_utils.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- e_utils.c 12 Jul 2005 03:53:55 -0000 1.17 +++ e_utils.c 25 Jul 2005 09:55:45 -0000 1.18 @@ -101,7 +101,7 @@ info = data; if (info) { - evas_event_feed_mouse_up(info->con->bg_evas, info->button, EVAS_BUTTON_NONE, NULL); + evas_event_feed_mouse_up(info->con->bg_evas, info->button, EVAS_BUTTON_NONE, ecore_x_current_time_get(), NULL); e_object_unref(E_OBJECT(info->con)); free(info); } ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs