Enlightenment CVS committal Author : sebastid Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_border.c e_container.c e_manager.c Log Message: Fix gqview segv. The border wasn't removed from the containers client list. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.212 retrieving revision 1.213 diff -u -3 -r1.212 -r1.213 --- e_border.c 19 May 2005 00:12:30 -0000 1.212 +++ e_border.c 19 May 2005 04:38:32 -0000 1.213 @@ -2924,7 +2924,6 @@ evas_object_del(bd->bg_object); } o = edje_object_add(bd->bg_evas); - bd->bg_object = o; snprintf(buf, sizeof(buf), "widgets/border/%s/border", bd->client.border.name); ok = e_theme_edje_object_set(o, "base/theme/borders", buf); @@ -2932,6 +2931,7 @@ { const char *shape_option; + bd->bg_object = o; shape_option = edje_object_data_get(o, "shaped"); if (shape_option) { @@ -2975,6 +2975,8 @@ } else { + evas_object_del(o); + bd->bg_object = NULL; l = 0; r = 0; t = 0; @@ -2990,37 +2992,40 @@ bd->h += (bd->client_inset.t + bd->client_inset.b); bd->changes.size = 1; ecore_x_window_move(bd->client.shell_win, l, t); - edje_object_signal_callback_add(o, "move_start", "*", - _e_border_cb_signal_move_start, bd); - edje_object_signal_callback_add(o, "move_stop", "*", - _e_border_cb_signal_move_stop, bd); - edje_object_signal_callback_add(o, "resize_tl_start", "*", - _e_border_cb_signal_resize_tl_start, bd); - edje_object_signal_callback_add(o, "resize_t_start", "*", - _e_border_cb_signal_resize_t_start, bd); - edje_object_signal_callback_add(o, "resize_tr_start", "*", - _e_border_cb_signal_resize_tr_start, bd); - edje_object_signal_callback_add(o, "resize_r_start", "*", - _e_border_cb_signal_resize_r_start, bd); - edje_object_signal_callback_add(o, "resize_br_start", "*", - _e_border_cb_signal_resize_br_start, bd); - edje_object_signal_callback_add(o, "resize_b_start", "*", - _e_border_cb_signal_resize_b_start, bd); - edje_object_signal_callback_add(o, "resize_bl_start", "*", - _e_border_cb_signal_resize_bl_start, bd); - edje_object_signal_callback_add(o, "resize_l_start", "*", - _e_border_cb_signal_resize_l_start, bd); - edje_object_signal_callback_add(o, "resize_stop", "*", - _e_border_cb_signal_resize_stop, bd); - edje_object_signal_callback_add(o, "action", "*", - _e_border_cb_signal_action, bd); - edje_object_signal_callback_add(o, "drag", "*", - _e_border_cb_signal_drag, bd); - if (bd->focused) - edje_object_signal_emit(bd->bg_object, "active", ""); - evas_object_move(o, 0, 0); - evas_object_resize(o, bd->w, bd->h); - evas_object_show(o); + if (bd->bg_object) + { + edje_object_signal_callback_add(bd->bg_object, "move_start", "*", + _e_border_cb_signal_move_start, bd); + edje_object_signal_callback_add(bd->bg_object, "move_stop", "*", + _e_border_cb_signal_move_stop, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_tl_start", "*", + _e_border_cb_signal_resize_tl_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_t_start", "*", + _e_border_cb_signal_resize_t_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_tr_start", "*", + _e_border_cb_signal_resize_tr_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_r_start", "*", + _e_border_cb_signal_resize_r_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_br_start", "*", + _e_border_cb_signal_resize_br_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_b_start", "*", + _e_border_cb_signal_resize_b_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_bl_start", "*", + _e_border_cb_signal_resize_bl_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_l_start", "*", + _e_border_cb_signal_resize_l_start, bd); + edje_object_signal_callback_add(bd->bg_object, "resize_stop", "*", + _e_border_cb_signal_resize_stop, bd); + edje_object_signal_callback_add(bd->bg_object, "action", "*", + _e_border_cb_signal_action, bd); + edje_object_signal_callback_add(bd->bg_object, "drag", "*", + _e_border_cb_signal_drag, bd); + if (bd->focused) + edje_object_signal_emit(bd->bg_object, "active", ""); + evas_object_move(bd->bg_object, 0, 0); + evas_object_resize(bd->bg_object, bd->w, bd->h); + evas_object_show(bd->bg_object); + } bd->client.border.changed = 0; if (bd->icon_object) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_container.c,v retrieving revision 1.57 retrieving revision 1.58 diff -u -3 -r1.57 -r1.58 --- e_container.c 18 May 2005 19:35:57 -0000 1.57 +++ e_container.c 19 May 2005 04:38:32 -0000 1.58 @@ -549,17 +549,13 @@ void e_container_border_remove(E_Border *bd) { - int pos; - - if (bd->layer == 0) pos = 0; - else if ((bd->layer > 0) && (bd->layer <= 50)) pos = 1; - else if ((bd->layer > 50) && (bd->layer <= 100)) pos = 2; - else if ((bd->layer > 100) && (bd->layer <= 150)) pos = 3; - else if ((bd->layer > 150) && (bd->layer <= 200)) pos = 4; - else pos = 5; + int i; - bd->zone->container->layers[pos].clients = - evas_list_remove(bd->zone->container->layers[pos].clients, bd); + for (i = 0; i < 7; i++) + { + bd->zone->container->layers[i].clients = + evas_list_remove(bd->zone->container->layers[i].clients, bd); + } } void =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_manager.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -3 -r1.25 -r1.26 --- e_manager.c 13 May 2005 07:27:41 -0000 1.25 +++ e_manager.c 19 May 2005 04:38:32 -0000 1.26 @@ -92,6 +92,10 @@ if (h) man->handlers = evas_list_append(man->handlers, h); h = ecore_event_handler_add(ECORE_X_EVENT_KEY_DOWN, _e_manager_cb_key_down, man); if (h) man->handlers = evas_list_append(man->handlers, h); + + /* setup hints */ + e_hints_manager_init(man); + return man; } @@ -273,6 +277,8 @@ con = l->data; e_container_resize(con, man->w, man->h); } + + ecore_x_netwm_desk_size_set(man->root, man->w, man->h); } void ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs