Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_main.c e_winlist.c Log Message: NO MORE SEGV damnit! oh and also keybidnigns work now even if no windows have been shown or focused yet =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_main.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -3 -r1.96 -r1.97 --- e_main.c 11 Jun 2005 13:32:29 -0000 1.96 +++ e_main.c 13 Jun 2005 04:18:29 -0000 1.97 @@ -659,6 +659,7 @@ { man->num = i; e_manager_show(man); + if (i == 0) ecore_x_window_focus(man->root); } else { =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_winlist.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- e_winlist.c 13 Jun 2005 03:55:39 -0000 1.6 +++ e_winlist.c 13 Jun 2005 04:18:29 -0000 1.7 @@ -24,6 +24,7 @@ static int _e_winlist_cb_event_border_remove(void *data, int type, void *event); static int _e_winlist_cb_key_down(void *data, int type, void *event); static int _e_winlist_cb_key_up(void *data, int type, void *event); +static int _e_winlist_animator(void *data); /* local subsystem globals */ static E_Popup *winlist = NULL; @@ -193,6 +194,10 @@ else if (bd->desk) e_desk_show(bd->desk); e_border_raise(bd); e_border_focus_set(bd, 1, 1); + if (e_config->focus_policy != E_FOCUS_CLICK) + ecore_x_pointer_warp(bd->zone->container->win, + bd->x + (bd->w / 2), + bd->y + (bd->h / 2)); /* FIXME: ensure whatever window is selected is focused after we finish cleanup - seee above for fix to mouse enter events */ } } @@ -201,7 +206,10 @@ e_winlist_next(void) { _e_winlist_deactivate(); - win_selected = win_selected->next; + if (!win_selected) + win_selected = wins; + else + win_selected = win_selected->next; if (!win_selected) win_selected = wins; _e_winlist_show_active(); _e_winlist_activate(); @@ -211,7 +219,10 @@ e_winlist_prev(void) { _e_winlist_deactivate(); - win_selected = win_selected->prev; + if (!win_selected) + win_selected = wins; + else + win_selected = win_selected->prev; if (!win_selected) win_selected = evas_list_last(wins); _e_winlist_show_active(); _e_winlist_activate(); @@ -349,12 +360,12 @@ if ((!ww->border->iconic) && (ww->border->desk == e_desk_current_get(winlist->zone))) { - e_border_raise(ww->border); - e_border_focus_set(ww->border, 1, 1); if (e_config->focus_policy != E_FOCUS_CLICK) ecore_x_pointer_warp(ww->border->zone->container->win, ww->border->x + (ww->border->w / 2), ww->border->y + (ww->border->h / 2)); + e_border_raise(ww->border); + e_border_focus_set(ww->border, 1, 1); } if (ww->border->client.netwm.name) edje_object_part_text_set(bg_object, "title_text", ww->border->client.netwm.name); @@ -501,3 +512,8 @@ E_OBJECT(winlist->zone), ev); return 1; } + +static int +_e_winlist_animator(void *data) +{ +} ------------------------------------------------------- This SF.Net email is sponsored by: NEC IT Guy Games. How far can you shotput a projector? How fast can you ride your desk chair down the office luge track? If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs