Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: add refcounr/is_del check before generating event =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.525 retrieving revision 1.526 diff -u -3 -r1.525 -r1.526 --- e_border.c 14 Aug 2006 11:08:40 -0000 1.525 +++ e_border.c 16 Aug 2006 23:12:03 -0000 1.526 @@ -1351,28 +1351,33 @@ { if (focused) { - E_Event_Border_Focus_Out *ev; -// printf("unfocus previous\n"); - edje_object_signal_emit(focused->bg_object, "passive", ""); - if (focused->icon_object) - edje_object_signal_emit(focused->icon_object, "passive", ""); - e_focus_event_focus_out(focused); - - ev = calloc(1, sizeof(E_Event_Border_Focus_Out)); - ev->border = focused; - e_object_ref(E_OBJECT(focused)); - - ecore_event_add(E_EVENT_BORDER_FOCUS_OUT, ev, - _e_border_event_border_focus_out_free, NULL); - - /* FIXME: Sometimes we should leave the window fullscreen! */ -// if (focused->fullscreen) e_border_unfullscreen(focused); - focused->focused = 0; -// e_border_focus_set(focused, 0, 0); - if (focused->raise_timer) + if ((!e_object_is_del(E_OBJECT(focused))) && + (e_object_ref_get(E_OBJECT(focused)) > 0)) { - ecore_timer_del(focused->raise_timer); - focused->raise_timer = NULL; + E_Event_Border_Focus_Out *ev; + +// printf("unfocus previous\n"); + edje_object_signal_emit(focused->bg_object, "passive", ""); + if (focused->icon_object) + edje_object_signal_emit(focused->icon_object, "passive", ""); + e_focus_event_focus_out(focused); + + ev = calloc(1, sizeof(E_Event_Border_Focus_Out)); + ev->border = focused; + e_object_ref(E_OBJECT(focused)); + + ecore_event_add(E_EVENT_BORDER_FOCUS_OUT, ev, + _e_border_event_border_focus_out_free, NULL); + + /* FIXME: Sometimes we should leave the window fullscreen! */ +// if (focused->fullscreen) e_border_unfullscreen(focused); + focused->focused = 0; +// e_border_focus_set(focused, 0, 0); + if (focused->raise_timer) + { + ecore_timer_del(focused->raise_timer); + focused->raise_timer = NULL; + } } } e_hints_active_window_set(bd->zone->container->manager, bd); ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs